This interface is implemented by a non-binary-compatible JDO implementation
to provide state interrogation for non-enhanced persistent classes.
A call to JDOHelper to get the status of an instance is handled
internally if the parameter instance implements PersistenceCapable.
For non-binary-compatible implementations, there is no requirement
that persistent instances implement PersistenceCapable. Therefore,
if the parameter does not implement PersistenceCapable, JDOHelper
delegates to all registered instances of StateInterrogation until
an instance can handle the request.
For JDOHelper isXXX methods, which return boolean, the
corresponding method in StateInterrogation returns Boolean. If the
return value is null
then the StateInterrogation does
not recognize the parameter as being handled by it. A non-null return
value indicates that the implementation has determined the answer.
For JDOHelper getXXX methods, which return an Object, each
registered StateInterrogation is given the parameter until one of
them returns a non-null value, which is passed to the caller.
For JDOHelper makeDirty, each
registered StateInterrogation is given the parameter until one of
them returns true, indicating that it has handled the call.
An instance that implements this interface must be registered with the
JDOImplHelper.