C D E F G I M O P R S U

C

containsMethod(Method[], Method) - Method in class org.pfsw.extender.ExtendedObject
Returns true if the given method array contains the specified method.
createExtensibleObject(Class<I>, Object) - Static method in class org.pfsw.extender.ObjectExtender
Returns an extended object that implements the given interface and is based on the given object.
createExtensibleObject(Class<I>, Object, Class...) - Static method in class org.pfsw.extender.ObjectExtender
Returns an extended object that implements the given interface and is based on the given object.
createExtensibleObject(Class<I>, Class...) - Static method in class org.pfsw.extender.ObjectExtender
Returns an object of the specified interface type that also implements the additional interfaces.

D

DelegatingInvocationHandler<TDelegate> - Class in org.pfsw.extender
A generic InvocationHandler that passes all method calls through to a delegate object.
DelegatingInvocationHandler() - Constructor for class org.pfsw.extender.DelegatingInvocationHandler
 
DelegatingInvocationHandler(TDelegate) - Constructor for class org.pfsw.extender.DelegatingInvocationHandler
Initialize the new instance with an object to delegate all method calls to.

E

extend(T, String, Object) - Static method in class org.pfsw.extender.ObjectExtender
Extends the given objectToExtend with the specified extension it it is associated with an ExtendedObject.
ExtendedObject<TDelegate> - Class in org.pfsw.extender
This is the core of the extendible objects framework.
ExtendedObject(TDelegate) - Constructor for class org.pfsw.extender.ExtendedObject
 
ExtensionProcessor - Interface in org.pfsw.extender
A callback handler for extension objects.

F

findTargetOf(Method) - Method in class org.pfsw.extender.ExtendedObject
 

G

getDelegate() - Method in class org.pfsw.extender.DelegatingInvocationHandler
Returns the object to which the requested method calls will be delegated.
getExtension(String) - Method in class org.pfsw.extender.ExtendedObject
Returns the extension object for the given name or null if not available.
getExtensionHandlerOf(Object) - Static method in class org.pfsw.extender.ObjectExtender
Returns the ExtendedObject that is attached to the given object or null if none is attached.
getExtensionOf(Object, String) - Static method in class org.pfsw.extender.ObjectExtender
Returns the named extension associated with the given object or null if there is none.
getExtensions() - Method in class org.pfsw.extender.ExtendedObject
 
getImplementor(Class<I>) - Method in class org.pfsw.extender.ExtendedObject
Returns the implementing object of the given interface or null if none is found.
getMixin(Class<I>) - Method in class org.pfsw.extender.ExtendedObject
 
getMixin(Class<T>, Object) - Static method in class org.pfsw.extender.ObjectExtender
Returns the mix-in implementation that is associated with the given interface and attached to the provided object.
getMixins() - Method in class org.pfsw.extender.ExtendedObject
 

I

implementsMethod(Class, Method) - Method in class org.pfsw.extender.ExtendedObject
Returns true if the given class is no interface and is implementing the given method itself, that is not inheriting it.
invoke(Object, Method, Object[]) - Method in class org.pfsw.extender.DelegatingInvocationHandler
Executes the given method with the specified args against the internal delegate.
invoke(Object, Method, Object[]) - Method in class org.pfsw.extender.ExtendedObject
 
isSameMethod(Method, Method) - Method in class org.pfsw.extender.ExtendedObject
Returns true if the two given methods are the same except that they do not have to be declared by the same class or interface.

M

makeExtensible(Class<I>, I, Class...) - Static method in class org.pfsw.extender.ObjectExtender
Returns the given object enhanced by a change tracking mechanism.
MixinProcessor - Interface in org.pfsw.extender
A callback handler for mixin objects.

O

ObjectExtender - Class in org.pfsw.extender
This class provides various static methods for creation of "extended" objects and to add mix-ins.
onExtensionsDo(ExtensionProcessor) - Method in class org.pfsw.extender.ExtendedObject
The given processor will be called on all extensions registered in this extended object until the processor returns false or all extensions have been iterated through.
onMixinsDo(MixinProcessor) - Method in class org.pfsw.extender.ExtendedObject
The given processor will be called on all mixins registered in this extended object until the processor returns false or all mixins have been iterated through.
org.pfsw.extender - package org.pfsw.extender
 

P

process(String, Object) - Method in interface org.pfsw.extender.ExtensionProcessor
Will be called for a single extension object.
process(Class<?>, Object) - Method in interface org.pfsw.extender.MixinProcessor
Will be called for a single mixin object.

R

removeExtension(String) - Method in class org.pfsw.extender.ExtendedObject
Remove and return the extension object for the given name or return null if not available.
removeMixin(Class<I>) - Method in class org.pfsw.extender.ExtendedObject
Removes the mix-in implementation for the given interface and returns it.

S

Self - Annotation Type in org.pfsw.extender
A simple marker annotation that identifies the field that must hold the proxy object which contains all extensions and represents the whole object itself.
setDelegate(TDelegate) - Method in class org.pfsw.extender.DelegatingInvocationHandler
 
setExtension(String, Object) - Method in class org.pfsw.extender.ExtendedObject
Attach the given extension to the object this invocation handler stands for.
setMixin(Proxy, Class<I>, T) - Method in class org.pfsw.extender.ExtendedObject
Sets the implementation instance for the specified interface.
setMixinTo(Object, Class<I>, T) - Static method in class org.pfsw.extender.ObjectExtender
Sets the mix-in implementation of the specified interface to the provided object.

U

understandsMethod(Object, Method) - Method in class org.pfsw.extender.ExtendedObject
 
understandsMethod(Class, Method) - Method in class org.pfsw.extender.ExtendedObject
Returns true if the given interface or class is understanding the given method, either by declaring it itself or by inheritance.

C D E F G I M O P R S U