Top Description Fields Constructors Methods
org.glassfish.hk2.classmodel.reflect.impl

public abstract Class ExtensibleTypeImpl<T extends ExtensibleType<T extends ExtensibleType>>

extends TypeImpl
implements ExtensibleType<T extends ExtensibleType<T extends ExtensibleType>>
Class Inheritance
All Implemented Interfaces
org.glassfish.hk2.classmodel.reflect.ExtensibleType, org.glassfish.hk2.classmodel.reflect.Type, org.glassfish.hk2.classmodel.reflect.AnnotatedElement
Known Direct Subclasses
org.glassfish.hk2.classmodel.reflect.impl.InterfaceModelImpl, org.glassfish.hk2.classmodel.reflect.impl.ClassModelImpl, org.glassfish.hk2.classmodel.reflect.impl.EnumTypeImpl
Imports
org.glassfish.hk2.classmodel.reflect.*, java.util.*, java.util.concurrent.locks.ReentrantLock

Implementation of an extensible type (Class or Interface)

Field Summary

Modifier and TypeField and Description
private Map<String, ParameterizedInterfaceModel>
private final List<TypeProxy<InterfaceModel>>
private final List<ParameterizedInterfaceModel>
private final ReentrantLock
protected TypeProxy<?>
private final List<FieldModel>

Constructor Summary

AccessConstructor and Description
public
ExtensibleTypeImpl(String name, TypeProxy<Type> sink, TypeProxy<T extends Type> parent)

Method Summary

Modifier and TypeMethod and Description
pack-priv void
pack-priv void
public Collection<T>
allSubTypes()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.allSubTypes.

Returns all the children subtypes (including grand children) of this type.

public Map<String, ParameterizedInterfaceModel>
getFormalTypeParameters()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getFormalTypeParameters.

Represents the raw generic type and bounded parameterized type.

public Collection<InterfaceModel>
getInterfaces()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getInterfaces.

Returns an unmodifiable list of interfaces implemented or extended by this type.

public ParameterizedInterfaceModel
public Collection<ParameterizedInterfaceModel>
public T
getParent()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getParent.

Return the parent type instance.

public String
getSimpleName()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getSimpleName.

Returns the unqualified name of the underlying type.

public Collection<FieldModel>
getStaticFields()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getStaticFields.

Returns an unmodifiable list of static fields defined by this type

pack-priv void
pack-priv void
public boolean
isInstanceOf(String name)

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.isInstanceOf.

Whether the type is an instance of the specified parent type or not.

public void
public TypeProxy<?>
setParent(final TypeProxy<?> parent)

public Collection<T>
subTypes()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.subTypes.

Returns the child subtypes of this type.

Inherited from org.glassfish.hk2.classmodel.reflect.impl.TypeImpl:
addDefiningURIaddMethodgetDefiningURIsgetMethodsgetProxygetReferenceswasDefinedIn

Field Detail

formalTypeParametersback to summary
private Map<String, ParameterizedInterfaceModel> formalTypeParameters
implementedIntfback to summary
private final List<TypeProxy<InterfaceModel>> implementedIntf
implementedParameterizedIntfback to summary
private final List<ParameterizedInterfaceModel> implementedParameterizedIntf
lockback to summary
private final ReentrantLock lock

Hides org.glassfish.hk2.classmodel.reflect.impl.TypeImpl.lock.

parentback to summary
protected TypeProxy<?> parent
staticFieldsback to summary
private final List<FieldModel> staticFields

Constructor Detail

ExtensibleTypeImplback to summary
public ExtensibleTypeImpl(String name, TypeProxy<Type> sink, TypeProxy<T extends Type> parent)

Method Detail

addFieldback to summary
pack-priv void addField(FieldModel field)
addStaticFieldback to summary
pack-priv void addStaticField(FieldModel field)
allSubTypesback to summary
public Collection<T> allSubTypes()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.allSubTypes.

Doc from org.glassfish.hk2.classmodel.reflect.ExtensibleType.allSubTypes.

Returns all the children subtypes (including grand children) of this type.

Annotations
@Override
getFormalTypeParametersback to summary
public Map<String, ParameterizedInterfaceModel> getFormalTypeParameters()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getFormalTypeParameters.

Doc from org.glassfish.hk2.classmodel.reflect.ExtensibleType.getFormalTypeParameters.

Represents the raw generic type and bounded parameterized type.

Annotations
@Override
getInterfacesback to summary
public Collection<InterfaceModel> getInterfaces()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getInterfaces.

Doc from org.glassfish.hk2.classmodel.reflect.ExtensibleType.getInterfaces.

Returns an unmodifiable list of interfaces implemented or extended by this type.

Annotations
@Override
getParameterizedInterfaceback to summary
public ParameterizedInterfaceModel getParameterizedInterface(ExtensibleType<T extends ExtensibleType> type)

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getParameterizedInterface.

Annotations
@Override
getParameterizedInterfacesback to summary
public Collection<ParameterizedInterfaceModel> getParameterizedInterfaces()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getParameterizedInterfaces.

Annotations
@Override
getParentback to summary
public T getParent()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getParent.

Doc from org.glassfish.hk2.classmodel.reflect.ExtensibleType.getParent.

Return the parent type instance. If there are more than one parent with the same FQCN within the various URI we parsed, we return the one defined within the same URI (if it exists). If there is more than one parsed metadata with the same FQCN and none of them are defined within the same URI as this type, then null is returned.

Annotations
@Override
getSimpleNameback to summary
public String getSimpleName()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getSimpleName.

Doc from org.glassfish.hk2.classmodel.reflect.ExtensibleType.getSimpleName.

Returns the unqualified name of the underlying type.

Annotations
@Override
getStaticFieldsback to summary
public Collection<FieldModel> getStaticFields()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.getStaticFields.

Doc from org.glassfish.hk2.classmodel.reflect.ExtensibleType.getStaticFields.

Returns an unmodifiable list of static fields defined by this type

Annotations
@Override
isImplementingback to summary
pack-priv void isImplementing(TypeProxy<InterfaceModel> intf)
isImplementingback to summary
pack-priv void isImplementing(ParameterizedInterfaceModelImpl pim)
isInstanceOfback to summary
public boolean isInstanceOf(String name)

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.isInstanceOf.

Doc from org.glassfish.hk2.classmodel.reflect.ExtensibleType.isInstanceOf.

Whether the type is an instance of the specified parent type or not.

Annotations
@Override
setFormalTypeParametersback to summary
public void setFormalTypeParameters(Map<String, ParameterizedInterfaceModel> typeParameters)
setParentback to summary
public TypeProxy<?> setParent(final TypeProxy<?> parent)
subTypesback to summary
public Collection<T> subTypes()

Implements org.glassfish.hk2.classmodel.reflect.ExtensibleType.subTypes.

Doc from org.glassfish.hk2.classmodel.reflect.ExtensibleType.subTypes.

Returns the child subtypes of this type. A child subtype is a type which parent is this type.

Annotations
@Override