public abstract class CompositeModel extends Object implements org.qi4j.functional.VisitableHierarchy<Object,Object>, Dependencies, org.qi4j.api.composite.CompositeDescriptor
| Modifier and Type | Field and Description |
|---|---|
protected CompositeMethodsModel |
compositeMethodsModel |
protected MixinsModel |
mixinsModel |
protected Class<? extends org.qi4j.api.composite.Composite> |
proxyClass |
protected Constructor<? extends org.qi4j.api.composite.Composite> |
proxyConstructor |
protected StateModel |
stateModel |
DEPENDENCIES_FUNCTION| Modifier | Constructor and Description |
|---|---|
protected |
CompositeModel(Iterable<Class<?>> types,
org.qi4j.api.common.Visibility visibility,
org.qi4j.api.common.MetaInfo metaInfo,
MixinsModel mixinsModel,
StateModel stateModel,
CompositeMethodsModel compositeMethodsModel) |
| Modifier and Type | Method and Description |
|---|---|
<ThrowableType extends Throwable> |
accept(org.qi4j.functional.HierarchicalVisitor<? super Object,? super Object,ThrowableType> visitor) |
Iterable<DependencyModel> |
dependencies() |
Object |
invoke(MixinsInstance mixins,
Object proxy,
Method method,
Object[] args,
org.qi4j.spi.module.ModuleSpi moduleInstance) |
boolean |
isAssignableTo(Class<?> type) |
<T> T |
metaInfo(Class<T> infoType) |
MixinsModel |
mixinsModel() |
Iterable<Class<?>> |
mixinTypes() |
org.qi4j.api.composite.Composite |
newProxy(InvocationHandler invocationHandler) |
<T> T |
newProxy(InvocationHandler invocationHandler,
Class<T> mixinType) |
Class<?> |
primaryType() |
StateModel |
state() |
String |
toString() |
Iterable<Class<?>> |
types() |
org.qi4j.api.common.Visibility |
visibility() |
protected final MixinsModel mixinsModel
protected final CompositeMethodsModel compositeMethodsModel
protected final StateModel stateModel
protected Class<? extends org.qi4j.api.composite.Composite> proxyClass
protected Constructor<? extends org.qi4j.api.composite.Composite> proxyConstructor
protected CompositeModel(Iterable<Class<?>> types, org.qi4j.api.common.Visibility visibility, org.qi4j.api.common.MetaInfo metaInfo, MixinsModel mixinsModel, StateModel stateModel, CompositeMethodsModel compositeMethodsModel)
public StateModel state()
public <T> T metaInfo(Class<T> infoType)
metaInfo in interface org.qi4j.api.structure.MetaInfoHolderpublic org.qi4j.api.common.Visibility visibility()
visibility in interface org.qi4j.api.composite.ModelDescriptorpublic boolean isAssignableTo(Class<?> type)
isAssignableTo in interface org.qi4j.api.composite.ModelDescriptorpublic MixinsModel mixinsModel()
public Class<?> primaryType()
primaryType in interface org.qi4j.api.composite.CompositeDescriptorpublic Iterable<Class<?>> mixinTypes()
mixinTypes in interface org.qi4j.api.composite.CompositeDescriptorpublic Iterable<DependencyModel> dependencies()
dependencies in interface Dependenciespublic <ThrowableType extends Throwable> boolean accept(org.qi4j.functional.HierarchicalVisitor<? super Object,? super Object,ThrowableType> visitor) throws ThrowableType extends Throwable
public final Object invoke(MixinsInstance mixins, Object proxy, Method method, Object[] args, org.qi4j.spi.module.ModuleSpi moduleInstance) throws Throwable
Throwablepublic org.qi4j.api.composite.Composite newProxy(InvocationHandler invocationHandler) throws org.qi4j.api.common.ConstructionException
org.qi4j.api.common.ConstructionExceptionpublic <T> T newProxy(InvocationHandler invocationHandler, Class<T> mixinType) throws IllegalArgumentException
IllegalArgumentException