Package org.geotools.util.decorate
Class AbstractDecorator<D>
Object
AbstractDecorator<D>
- All Implemented Interfaces:
- Serializable,- Wrapper,- Wrapper
- Direct Known Subclasses:
- DecoratingDataStore
Generic delegating base class. Provides the following features:
 
- null check for the delegate object
- direct forwarding of equals(Object),hashCode()andtoString()to the delegate
- implements the Wrapper interface for programmatic extraction
- See Also:
- 
Field SummaryFields
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionbooleaninthashCode()booleanisWrapperFor(Class<?> iface) Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does.toString()<T> TReturns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy.
- 
Field Details- 
delegate
 
- 
- 
Constructor Details- 
AbstractDecorator
 
- 
- 
Method Details- 
isWrapperForDescription copied from interface:WrapperReturns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does. Returns false otherwise. If this implements the interface then return true, else if this is a wrapper then return the result of recursively callingisWrapperForon the wrapped object. If this does not implement the interface and is not a wrapper, return false. This method should be implemented as a low-cost operation compared tounwrapso that callers can use this method to avoid expensiveunwrapcalls that may fail. If this method returns true then callingunwrapwith the same argument should succeed.- Specified by:
- isWrapperForin interface- Wrapper
- Specified by:
- isWrapperForin interface- Wrapper
- Parameters:
- iface- a Class defining an interface.
- Returns:
- true if this implements the interface or directly or indirectly wraps an object that does.
 
- 
unwrapDescription copied from interface:WrapperReturns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy.If the receiver implements the interface then the result is the receiver or a proxy for the receiver. If the receiver is a wrapper and the wrapped object implements the interface then the result is the wrapped object or a proxy for the wrapped object. Otherwise return the the result of calling unwraprecursively on the wrapped object or a proxy for that result. If the receiver is not a wrapper and does not implement the interface, then anIllegalArgumentExceptionis thrown.- Specified by:
- unwrapin interface- Wrapper
- Specified by:
- unwrapin interface- Wrapper
- Parameters:
- iface- A Class defining an interface that the result must implement.
- Returns:
- an object that implements the interface. May be a proxy for the actual implementing object.
- Throws:
- IllegalArgumentException- If no object found that implements the interface
 
- 
equals
- 
hashCodepublic int hashCode()
- 
toString
 
-