]> gerrit.simantics Code Review - simantics/3d.git/blobdiff - org.simantics.objmap2/src/org/simantics/objmap/graph/rules/factory/ICollectionRuleFactory.java
3D framework (Simca 2012)
[simantics/3d.git] / org.simantics.objmap2 / src / org / simantics / objmap / graph / rules / factory / ICollectionRuleFactory.java
diff --git a/org.simantics.objmap2/src/org/simantics/objmap/graph/rules/factory/ICollectionRuleFactory.java b/org.simantics.objmap2/src/org/simantics/objmap/graph/rules/factory/ICollectionRuleFactory.java
new file mode 100644 (file)
index 0000000..835639a
--- /dev/null
@@ -0,0 +1,14 @@
+package org.simantics.objmap.graph.rules.factory;\r
+\r
+import java.lang.annotation.Annotation;\r
+import java.lang.reflect.Method;\r
+\r
+import org.simantics.db.ReadGraph;\r
+import org.simantics.db.exception.DatabaseException;\r
+import org.simantics.objmap.bidirectional.IBidirectionalMappingRule;\r
+\r
+public interface ICollectionRuleFactory<Domain,Range> {\r
+       IBidirectionalMappingRule<Domain, Range> create(ReadGraph g, Annotation annotation, Method getter, Method adder, Method remover) throws DatabaseException;\r
+       boolean isAdder(Annotation getterAnnotation, Annotation annotation);\r
+       boolean isRemover(Annotation getterAnnotation, Annotation annotation);\r
+}\r