Package org.alfresco.traitextender
Class InstanceExtensionFactory<I extends InstanceExtension<E,T>,T extends Trait,E>
- java.lang.Object
-
- org.alfresco.traitextender.InstanceExtensionFactory<I,T,E>
-
- All Implemented Interfaces:
ExtensionFactory<E>
public class InstanceExtensionFactory<I extends InstanceExtension<E,T>,T extends Trait,E> extends java.lang.Object implements ExtensionFactory<E>
Creates extension sub classes that are extension API implementors once per extensible-extension point definition.- Author:
- Bogdan Horje
-
-
Constructor Summary
Constructors Constructor Description InstanceExtensionFactory(java.lang.Class<C> extensionClass, java.lang.Class<T> traitAPI, java.lang.Class<? extends E> extensionAPI)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancanCreateExtensionFor(ExtensionPoint<?,?> point)<TO extends Trait>
EcreateExtension(TO traitObject)
-
-
-
Method Detail
-
createExtension
public <TO extends Trait> E createExtension(TO traitObject)
- Specified by:
createExtensionin interfaceExtensionFactory<I extends InstanceExtension<E,T>>
-
canCreateExtensionFor
public boolean canCreateExtensionFor(ExtensionPoint<?,?> point)
- Specified by:
canCreateExtensionForin interfaceExtensionFactory<I extends InstanceExtension<E,T>>- Returns:
trueif the given extensio-point API elements are compatible with the returned extension (i.e. the given extension API is assignable form the type of the extension created by this factory and theTraitaccepted as aparameter inExtensionFactory.createExtension(Trait)is assignable from the type of the given trait API).
-
-