01: package net.sf.jmoney.model2;
02:
03: /**
04: * An implementation of this interface must be provided for every property that
05: * is a reference to another extendable object. The implementation provides a
06: * method for getting the object key from a given parent object. Code that
07: * wishes to process property references in a generalized way (without knowing
08: * about all the properties at compile time) can thus do so.
09: *
10: * @author Nigel Westbury
11: *
12: * @param <P>
13: * the class of objects that contain this property
14: * @param <V>
15: * the class of the object that is being referenced
16: */
17: public interface IReferenceControlFactory<P, V extends ExtendableObject>
18: extends IPropertyControlFactory<V> {
19: IObjectKey getObjectKey(P parentObject);
20: }
|