1 package org.simantics.objmap.graph.rules.factory;
\r
3 import java.lang.annotation.Annotation;
\r
4 import java.lang.reflect.Method;
\r
6 import org.simantics.db.ReadGraph;
\r
7 import org.simantics.db.exception.DatabaseException;
\r
8 import org.simantics.objmap.bidirectional.IBidirectionalMappingRule;
\r
10 public interface ICollectionRuleFactory<Domain,Range> {
\r
11 IBidirectionalMappingRule<Domain, Range> create(ReadGraph g, Annotation annotation, Method getter, Method adder, Method remover) throws DatabaseException;
\r
12 boolean isAdder(Annotation getterAnnotation, Annotation annotation);
\r
13 boolean isRemover(Annotation getterAnnotation, Annotation annotation);
\r