diff options
Diffstat (limited to 'src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/Dependency.java')
| -rw-r--r-- | src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/Dependency.java | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/Dependency.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/Dependency.java new file mode 100644 index 0000000..1124ede --- /dev/null +++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/entitycreation/Dependency.java @@ -0,0 +1,44 @@ +package com.c2kernel.lifecycle.instance.predefined.entitycreation;
+
+import java.util.ArrayList;
+
+import com.c2kernel.collection.MembershipException;
+import com.c2kernel.lookup.DomainPath;
+import com.c2kernel.property.PropertyUtility;
+
+public class Dependency implements java.io.Serializable {
+
+ public String name;
+ public boolean isDescription;
+ public String itemDescriptionPath;
+ public ArrayList<DependencyMember> dependencyMemberList;
+
+ public Dependency() {
+ super();
+ dependencyMemberList = new ArrayList<DependencyMember>();
+ }
+
+ public Dependency(String itemDesc) {
+ this();
+ this.itemDescriptionPath = itemDesc;
+ }
+
+ /**
+ * @return
+ */
+ public com.c2kernel.collection.Dependency create() throws MembershipException{
+ com.c2kernel.collection.Dependency newDep = isDescription?new com.c2kernel.collection.DependencyDescription(name):new com.c2kernel.collection.Dependency(name);
+ if (itemDescriptionPath != null && itemDescriptionPath.length()>0) {
+ PropertyUtility.getPropertyDescriptionOutcome(new DomainPath(itemDescriptionPath).getSysKey());
+ //TODO: set props and class identifiers
+ }
+ for (DependencyMember thisMem : dependencyMemberList) {
+ int syskey = new DomainPath(thisMem.itemPath).getSysKey();
+ if (syskey == -1)
+ throw new MembershipException("Cannot find "+thisMem.itemPath+" specified for collection.");
+ newDep.addMember(syskey);
+ }
+ return newDep;
+ }
+
+}
|
