Interface Resolver

All Known Implementing Classes:
ScopableResolver

public interface Resolver
Defines an object resolver but does not specify any implementation.

A lazy resolver would resolve an object given its identifier. The reference to the object will be created with a ResolvableReference object using the resolved and the identifier. When the object is requested, the resolve(java.lang.String) method will be called to obtain it.

Some implementation will add and remove resolvable objects, e.g. a collection of objects that also acts as a resolver. These methods should implement addResolvable(java.lang.String, org.exolab.castor.xml.schema.Referable) and removeResolvable(java.lang.String). Resolvers that do not implement these methods are still considered valid resolvers. For example, a database based resolver will operate consistently without implementing add/remove not through the database interface.

Author:
Assaf Arkin
See Also: