APIs for matcher classes

The public API that supports matcher classes consists of two interfaces and two abstract classes that implement the interfaces. These interfaces and classes are in the gw.api. logicalmatch package. The two interfaces extend the LogicalMatcher interface, which provides the following methods.
isLogicalMatchUntyped
Returns true if the argument object is logically the same as the calling object and returns false otherwise.
genKey
Generates a logical key that identifies the calling object.

The KeyBasedLogicalMatcher interface provides an additional isLogicalMatch method that supports strongly typed matching of objects. The abstract AbstractPropertiesMatcher<T extends KeyableBean> class implements this interface. Extend this class to match objects of a class that is not effective-dated.

The EffDatedLogicalMatcher interface provides an additional findMatchesInPeriodUntyped method that supports matching effective-dated objects. Effective-dated entity types implement this interface. The abstract AbstractEffDatedPropertiesMatcher<T extends EffDated> class extends the AbstractPropertiesMatcher<T extends KeyableBean> class and implements this interface. Extend this class to match objects of a class that is effective-dated.

See the Javadoc for descriptions of the classes and methods and the lists of classes that implement the interfaces.