Subversion Repository Public Repository

litesoft

Diff Revisions 20 vs 21 for /trunk/Java/PoVoGenerator/Generator/src/org/litesoft/generator/GeneratePOGO.java

Diff revisions: vs.
  @@ -2,10 +2,11 @@
2 2
3 3 import java.util.*;
4 4
5 + import org.litesoft.aokeyhole.objects.AttributeMetaData;
5 6 import org.litesoft.aokeyhole.objects.*;
6 7 import org.litesoft.aokeyhole.objects.attributes.*;
7 8 import org.litesoft.aokeyhole.objects.properties.*;
8 - import org.litesoft.bo.change.*;
9 + import org.litesoft.bo.attributes.*;
9 10 import org.litesoft.codegen.*;
10 11 import org.litesoft.core.util.*;
11 12 import org.litesoft.orsup.lazyeval.*;
  @@ -13,6 +14,8 @@
13 14
14 15 public class GeneratePOGO extends AbstractPOFileGenerator
15 16 {
17 + public static final String[] IMPLIMENTS_HAS_ATTRIBUTES = {"HasAttributes"};
18 +
16 19 private static final AttributeType[] PAIRED_TYPES = new AttributeType[]{A_CommonPairedToOne.TYPE, A_PairedToOne.TYPE};
17 20 private static final AttributeType[] BRIDGE_TYPES = new AttributeType[]{A_VariableBridgeToOneLeft.TYPE, A_BridgeToOneLeft.TYPE, A_BridgeToOneRight.TYPE};
18 21
  @@ -24,13 +27,12 @@
24 27 @Override
25 28 protected void LLaddImports()
26 29 {
30 + boolean zHasAttributes = (getAttributes().length != 0);
27 31 addImports( //
28 - "org.litesoft.bo.attributes.*", //
29 - "org.litesoft.bo.change.*", //
32 + zHasAttributes ? "org.litesoft.bo.attributes.*" : null, //
30 33 "org.litesoft.core.util.*", //
31 34 "org.litesoft.orsup.base.*", //
32 - "org.litesoft.orsup.otherattributeaccessors.*", //
33 - !mIsParent ? "org.litesoft.orsup.otherattributeaccessors.nonpublic.*" : null, //
35 + zHasAttributes ? "org.litesoft.orsup.otherattributeaccessors.*" : null, //
34 36 !mIsParent ? "org.litesoft.orsup.selection.*" : null, //
35 37 "org.litesoft.orsup.transact.*", //
36 38 null );
  @@ -39,14 +41,15 @@
39 41 @Override
40 42 protected void LLaddClassDefinition()
41 43 {
44 + String[] zImplements = (getAttributes().length != 0) ? IMPLIMENTS_HAS_ATTRIBUTES : null;
42 45 makeClassAbstract();
43 46 if ( mIsParent )
44 47 {
45 - addClassDefinition( mClassName + "<T extends " + mObjectName + ">", getExtends( "org.litesoft.orsup.nonpublic.PersistentObjectImpl" ) + "<T>" );
48 + addClassDefinition( mClassName + "<T extends " + mObjectName + ">", getExtends( "org.litesoft.orsup.nonpublic.PersistentObjectImpl" ) + "<T>", zImplements );
46 49 }
47 50 else
48 51 {
49 - addClassDefinition( mClassName, getExtends( "org.litesoft.orsup.nonpublic.PersistentObjectImpl" ) + "<" + mObjectName + ">" );
52 + addClassDefinition( mClassName, getExtends( "org.litesoft.orsup.nonpublic.PersistentObjectImpl" ) + "<" + mObjectName + ">", zImplements );
50 53 }
51 54 }
52 55