|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavax.xml.bind.JAXBContext
com.sun.xml.bind.api.JAXBRIContext
com.sun.xml.bind.v2.runtime.JAXBContextImpl
public final class JAXBContextImpl
This class provides the implementation of JAXBContext. It also creates the GrammarInfoFacade that unifies all of the grammar info from packages on the contextPath.
Field Summary | |
---|---|
protected java.util.Map<RuntimeTypeInfo,JaxBeanInfo> |
beanInfos
All created JaxBeanInfo s. |
protected boolean |
c14nSupport
true to reorder attributes lexicographically in preparation of the c14n support. |
NameBuilder |
nameBuilder
Used to assign indices to known names in this grammar. |
NameList |
nameList
Keeps the list of known names. |
Fields inherited from class com.sun.xml.bind.api.JAXBRIContext |
---|
CANONICALIZATION_SUPPORT, DEFAULT_NAMESPACE_REMAP, ENABLE_XOP, TYPE_REFERENCES |
Fields inherited from class javax.xml.bind.JAXBContext |
---|
JAXB_CONTEXT_FACTORY |
Constructor Summary | |
---|---|
JAXBContextImpl(java.lang.Class[] classes,
java.util.Collection<TypeReference> typeRefs,
java.lang.String defaultNsUri,
boolean c14nSupport)
|
Method Summary | ||
---|---|---|
javax.xml.bind.Binder<org.w3c.dom.Node> |
createBinder()
|
|
Bridge |
createBridge(TypeReference ref)
Creates a mini-marshaller/unmarshaller that can process a TypeReference . |
|
BridgeContext |
createBridgeContext()
Creates a new BridgeContext instance. |
|
(package private) static org.w3c.dom.Document |
createDom()
Creates a new DOM document. |
|
javax.xml.bind.JAXBIntrospector |
createJAXBIntrospector()
|
|
MarshallerImpl |
createMarshaller()
|
|
javax.xml.bind.SchemaOutputResolver |
createTestResolver()
Used for testing. |
|
(package private) static javax.xml.transform.Transformer |
createTransformer()
Creates a new identity transformer. |
|
static javax.xml.transform.sax.TransformerHandler |
createTransformerHandler()
Creates a new identity transformer. |
|
UnmarshallerImpl |
createUnmarshaller()
|
|
javax.xml.bind.Validator |
createValidator()
|
|
void |
generateSchema(javax.xml.bind.SchemaOutputResolver outputResolver)
Generates the schema documents from the model. |
|
|
getBeanInfo(java.lang.Class<T> clazz)
Gets the JaxBeanInfo object that can handle
the given JAXB-bound class. |
|
|
getBeanInfo(java.lang.Class<T> clazz,
boolean fatal)
Gets the JaxBeanInfo object that can handle
the given JAXB-bound class. |
|
JaxBeanInfo |
getBeanInfo(java.lang.Object o)
Gets the JaxBeanInfo object that can handle
the given JAXB-bound object. |
|
JaxBeanInfo |
getBeanInfo(java.lang.Object o,
boolean fatal)
Gets the JaxBeanInfo object that can handle
the given JAXB-bound object. |
|
java.lang.String |
getBuildId()
Gets the build information of the JAXB runtime. |
|
ElementBeanInfoImpl |
getElement(java.lang.Class scope,
javax.xml.namespace.QName name)
|
|
javax.xml.namespace.QName |
getElementName(java.lang.Object o)
If the given object is bound to an element in XML by JAXB, returns the element name. |
|
RawAccessor |
getElementPropertyAccessor(java.lang.Class wrapperBean,
java.lang.String nsUri,
java.lang.String localName)
Gets a RawAccessor for the specified element property of the specified wrapper bean class. |
|
JaxBeanInfo |
getGlobalType(javax.xml.namespace.QName name)
Gets the JaxBeanInfo for the given named XML Schema type. |
|
java.util.List<java.lang.String> |
getKnownNamespaceURIs()
Gets the namespace URIs statically known to this JAXBContext . |
|
int |
getNumberOfAttributeNames()
|
|
int |
getNumberOfElementNames()
|
|
int |
getNumberOfLocalNames()
|
|
protected JaxBeanInfo |
getOrCreate(RuntimeArrayInfo ai)
|
|
protected ClassBeanInfoImpl |
getOrCreate(RuntimeClassInfo ci)
|
|
protected JaxBeanInfo |
getOrCreate(RuntimeEnumLeafInfo eli)
|
|
JaxBeanInfo |
getOrCreate(RuntimeTypeInfo e)
|
|
javax.xml.namespace.QName |
getTypeName(TypeReference tr)
Returns the name of the XML Type bound to the specified Java type. |
|
Encoded[] |
getUTF8NameTable()
|
|
java.util.Set<javax.xml.namespace.QName> |
getValidRootNames()
Returns the set of valid root tag names. |
|
java.lang.String |
getXMIMEContentType(java.lang.Object o)
Gets the value of the xmime:contentType attribute on the given object, or null if for some reason it couldn't be found, including any error. |
|
Loader |
selectRootLoader(UnmarshallingContext.State state,
TagName ea)
Based on the tag name, determine what object to unmarshal, and then set a new object and its loader to the current unmarshaller state. |
|
java.lang.String |
toString()
|
Methods inherited from class com.sun.xml.bind.api.JAXBRIContext |
---|
mangleNameToClassName, mangleNameToVariableName, newInstance |
Methods inherited from class javax.xml.bind.JAXBContext |
---|
createBinder, newInstance, newInstance, newInstance, newInstance, newInstance |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected java.util.Map<RuntimeTypeInfo,JaxBeanInfo> beanInfos
JaxBeanInfo
s.
Updated from each JaxBeanInfo
s constructors to avoid infinite recursion
for a cyclic reference.
This map is only used while the JAXBContextImpl
is built and set to null
to avoid keeping references too long.
public NameBuilder nameBuilder
public final NameList nameList
protected final boolean c14nSupport
Constructor Detail |
---|
public JAXBContextImpl(java.lang.Class[] classes, java.util.Collection<TypeReference> typeRefs, java.lang.String defaultNsUri, boolean c14nSupport) throws javax.xml.bind.JAXBException
typeRefs
- used to build Bridge
s. Can be empty.c14nSupport
- c14nSupport
.
javax.xml.bind.JAXBException
Method Detail |
---|
public ElementBeanInfoImpl getElement(java.lang.Class scope, javax.xml.namespace.QName name)
protected JaxBeanInfo getOrCreate(RuntimeEnumLeafInfo eli)
protected ClassBeanInfoImpl getOrCreate(RuntimeClassInfo ci)
protected JaxBeanInfo getOrCreate(RuntimeArrayInfo ai)
public JaxBeanInfo getOrCreate(RuntimeTypeInfo e)
public final JaxBeanInfo getBeanInfo(java.lang.Object o)
JaxBeanInfo
object that can handle
the given JAXB-bound object.
This method traverses the base classes of the given object.
public final JaxBeanInfo getBeanInfo(java.lang.Object o, boolean fatal) throws javax.xml.bind.JAXBException
JaxBeanInfo
object that can handle
the given JAXB-bound object.
fatal
- if true, the failure to look up will throw an exception.
Otherwise it will just return null.
javax.xml.bind.JAXBException
public final <T> JaxBeanInfo<T> getBeanInfo(java.lang.Class<T> clazz)
JaxBeanInfo
object that can handle
the given JAXB-bound class.
This method doesn't look for base classes.
public final <T> JaxBeanInfo<T> getBeanInfo(java.lang.Class<T> clazz, boolean fatal) throws javax.xml.bind.JAXBException
JaxBeanInfo
object that can handle
the given JAXB-bound class.
fatal
- if true, the failure to look up will throw an exception.
Otherwise it will just return null.
javax.xml.bind.JAXBException
public final Loader selectRootLoader(UnmarshallingContext.State state, TagName ea)
public JaxBeanInfo getGlobalType(javax.xml.namespace.QName name)
JaxBeanInfo
for the given named XML Schema type.
public java.util.Set<javax.xml.namespace.QName> getValidRootNames()
public Encoded[] getUTF8NameTable()
public int getNumberOfLocalNames()
public int getNumberOfElementNames()
public int getNumberOfAttributeNames()
static javax.xml.transform.Transformer createTransformer()
public static javax.xml.transform.sax.TransformerHandler createTransformerHandler()
static org.w3c.dom.Document createDom()
public MarshallerImpl createMarshaller()
createMarshaller
in class javax.xml.bind.JAXBContext
public UnmarshallerImpl createUnmarshaller()
createUnmarshaller
in class javax.xml.bind.JAXBContext
public javax.xml.bind.Validator createValidator()
createValidator
in class javax.xml.bind.JAXBContext
public javax.xml.bind.JAXBIntrospector createJAXBIntrospector()
createJAXBIntrospector
in class javax.xml.bind.JAXBContext
public void generateSchema(javax.xml.bind.SchemaOutputResolver outputResolver) throws java.io.IOException
JAXBRIContext
The caller can use the additionalElementDecls parameter to add element declarations to the generate schema. For example, if the JAX-RPC passes in the following entry: {foo}bar -> DeclaredType for java.lang.String then JAXB generates the following element declaration (in the schema document for the namespace "foo")" <xs:element name="bar" type="xs:string" /> This can be used for generating schema components necessary for WSDL.
generateSchema
in class JAXBRIContext
outputResolver
- this object controls the output to which schemas
will be sent.
java.io.IOException
- if SchemaOutputResolver
throws an IOException
.public javax.xml.namespace.QName getTypeName(TypeReference tr)
JAXBRIContext
getTypeName
in class JAXBRIContext
tr
- must not be null. This must be one of the TypeReference
s specified
in the JAXBRIContext.newInstance(java.lang.Class[], java.util.Collection, java.lang.String, boolean)
method.
public javax.xml.bind.SchemaOutputResolver createTestResolver()
public javax.xml.bind.Binder<org.w3c.dom.Node> createBinder()
createBinder
in class javax.xml.bind.JAXBContext
public javax.xml.namespace.QName getElementName(java.lang.Object o) throws javax.xml.bind.JAXBException
JAXBRIContext
getElementName
in class JAXBRIContext
javax.xml.bind.JAXBException
- if the object is not known to this context.public Bridge createBridge(TypeReference ref)
JAXBRIContext
TypeReference
.
createBridge
in class JAXBRIContext
JAXBRIContext.newInstance(java.lang.Class[], java.util.Collection, java.lang.String, boolean)
.public BridgeContext createBridgeContext()
JAXBRIContext
BridgeContext
instance.
createBridgeContext
in class JAXBRIContext
public RawAccessor getElementPropertyAccessor(java.lang.Class wrapperBean, java.lang.String nsUri, java.lang.String localName) throws javax.xml.bind.JAXBException
JAXBRIContext
RawAccessor
for the specified element property of the specified wrapper bean class.
This method is designed to assist the JAX-RPC RI fill in a wrapper bean (in the doc/lit/wrap mode.) In the said mode, a wrapper bean is supposed to only have properties that match elements, and for each element that appear in the content model there's one property.
Therefore, this method takes a wrapper bean and a tag name that identifies a property
on the given wrapper bean, then returns a RawAccessor
that allows the caller
to set/get a value from the property of the bean.
This method is not designed for a performance. The caller is expected to cache the result.
getElementPropertyAccessor
in class JAXBRIContext
javax.xml.bind.JAXBException
- if the specified wrapper bean is not bound by JAXB, or if it doesn't have an element property
of the given name.public java.util.List<java.lang.String> getKnownNamespaceURIs()
JAXBRIContext
JAXBContext
.
When JAXB is used to marshal into sub-trees, it declares these namespace URIs at each top-level element that it marshals. To avoid repeated namespace declarations at sub-elements, the application may declare those namespaces at a higher level.
getKnownNamespaceURIs
in class JAXBRIContext
public java.lang.String getBuildId()
JAXBRIContext
getBuildId
in class JAXBRIContext
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.String getXMIMEContentType(java.lang.Object o)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |