|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sun.xml.bind.v2.model.impl.ModelBuilder<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method>
com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder
public class RuntimeModelBuilder
ModelBuilder
that works at the run-time by using
the java.lang.reflect
package.
This extends ModelBuilder
by providing more functionalities such
as accessing the fields and classes.
Field Summary | |
---|---|
JAXBContextImpl |
context
The JAXBContextImpl for which the model is built. |
Fields inherited from class com.sun.xml.bind.v2.model.impl.ModelBuilder |
---|
defaultNsUri, hasSwaRef, nav, reader |
Constructor Summary | |
---|---|
RuntimeModelBuilder(JAXBContextImpl context,
RuntimeAnnotationReader annotationReader,
java.util.Map<java.lang.Class,java.lang.Class> subclassReplacements,
java.lang.String defaultNamespaceRemap)
|
Method Summary | |
---|---|
com.sun.xml.bind.v2.model.impl.RuntimeArrayInfoImpl |
createArrayInfo(Locatable upstream,
java.lang.reflect.Type arrayType)
|
protected com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl |
createClassInfo(java.lang.Class clazz,
Locatable upstream)
|
com.sun.xml.bind.v2.model.impl.RuntimeElementInfoImpl |
createElementInfo(com.sun.xml.bind.v2.model.impl.RegistryInfoImpl<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method> registryInfo,
java.lang.reflect.Method method)
|
protected com.sun.xml.bind.v2.model.impl.RuntimeEnumLeafInfoImpl |
createEnumLeafInfo(java.lang.Class clazz,
Locatable upstream)
|
static Transducer |
createTransducer(RuntimeNonElementRef ref)
Creates a Transducer given a reference. |
protected com.sun.xml.bind.v2.model.impl.RuntimeTypeInfoSetImpl |
createTypeInfoSet()
|
RuntimeNonElement |
getClassInfo(java.lang.Class clazz,
boolean searchForSuperClass,
Locatable upstream)
For limited cases where the caller needs to search for a super class. |
RuntimeNonElement |
getClassInfo(java.lang.Class clazz,
Locatable upstream)
Builds a JAXB ClassInfo model from a given class declaration
and adds that to this model owner. |
ReflectionNavigator |
getNavigator()
|
RuntimeTypeInfoSet |
link()
Called after all the classes are added to the type set to "link" them together. |
Methods inherited from class com.sun.xml.bind.v2.model.impl.ModelBuilder |
---|
addRegistry, getRegistry, getTypeInfo, getTypeInfo, isReplaced, reportError, setErrorHandler |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
@Nullable public final JAXBContextImpl context
JAXBContextImpl
for which the model is built.
Null when created for reflection.
Constructor Detail |
---|
public RuntimeModelBuilder(JAXBContextImpl context, RuntimeAnnotationReader annotationReader, java.util.Map<java.lang.Class,java.lang.Class> subclassReplacements, java.lang.String defaultNamespaceRemap)
Method Detail |
---|
public RuntimeNonElement getClassInfo(java.lang.Class clazz, Locatable upstream)
ModelBuilder
ClassInfo
model from a given class declaration
and adds that to this model owner.
Return type is either ClassInfo
or LeafInfo
(for types like
String
or Enum
-derived ones)
getClassInfo
in class ModelBuilder<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method>
public RuntimeNonElement getClassInfo(java.lang.Class clazz, boolean searchForSuperClass, Locatable upstream)
ModelBuilder
ModelBuilder.subclassReplacements
to kick in for the super class search, which will cause infinite recursion.
getClassInfo
in class ModelBuilder<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method>
protected com.sun.xml.bind.v2.model.impl.RuntimeEnumLeafInfoImpl createEnumLeafInfo(java.lang.Class clazz, Locatable upstream)
createEnumLeafInfo
in class ModelBuilder<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method>
protected com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl createClassInfo(java.lang.Class clazz, Locatable upstream)
createClassInfo
in class ModelBuilder<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method>
public com.sun.xml.bind.v2.model.impl.RuntimeElementInfoImpl createElementInfo(com.sun.xml.bind.v2.model.impl.RegistryInfoImpl<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method> registryInfo, java.lang.reflect.Method method) throws IllegalAnnotationException
createElementInfo
in class ModelBuilder<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method>
IllegalAnnotationException
public com.sun.xml.bind.v2.model.impl.RuntimeArrayInfoImpl createArrayInfo(Locatable upstream, java.lang.reflect.Type arrayType)
createArrayInfo
in class ModelBuilder<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method>
public ReflectionNavigator getNavigator()
protected com.sun.xml.bind.v2.model.impl.RuntimeTypeInfoSetImpl createTypeInfoSet()
createTypeInfoSet
in class ModelBuilder<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method>
public RuntimeTypeInfoSet link()
ModelBuilder
Don't expose implementation classes in the signature.
link
in class ModelBuilder<java.lang.reflect.Type,java.lang.Class,java.lang.reflect.Field,java.lang.reflect.Method>
TypeInfoSet
that represents the model,
or null if there was an error.public static Transducer createTransducer(RuntimeNonElementRef ref)
Transducer
given a reference.
Used to implement RuntimeNonElementRef.getTransducer()
.
Shouldn't be called from anywhere else.
TODO: this is not the proper place for this class to be in.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |