public class XMLObjectBuilderFactory
extends java.lang.Object
XMLObjectBuilders. XMLObjectBuilders are stored and retrieved by a
QName key. This key is either the XML Schema Type or element QName of the XML element the
built XMLObject object represents.| Modifier and Type | Field and Description |
|---|---|
private java.util.Map<javax.xml.namespace.QName,XMLObjectBuilder<?>> |
builders
Registered builders.
|
private org.slf4j.Logger |
log
Class logger.
|
| Constructor and Description |
|---|
XMLObjectBuilderFactory()
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
XMLObjectBuilder<?> |
deregisterBuilder(javax.xml.namespace.QName builderKey)
Deregisters a builder.
|
XMLObjectBuilder<?> |
getBuilder(org.w3c.dom.Element domElement)
Retrieves the XMLObject builder for the given element.
|
XMLObjectBuilder<?> |
getBuilder(javax.xml.namespace.QName key)
Retrieves an
XMLObjectBuilder using the key it was registered with. |
<XMLObjectType extends XMLObject> |
getBuilderOrThrow(org.w3c.dom.Element domElement)
Retrieves the
XMLObjectBuilder for the given element. |
<XMLObjectType extends XMLObject> |
getBuilderOrThrow(javax.xml.namespace.QName key)
Retrieves an
XMLObjectBuilder using the key it was registered with, or throws a runtime
error if unable to locate one. |
java.util.Map<javax.xml.namespace.QName,XMLObjectBuilder<?>> |
getBuilders()
Gets an immutable list of all the builders currently registered.
|
void |
registerBuilder(javax.xml.namespace.QName builderKey,
XMLObjectBuilder<?> builder)
Registers a new builder for the given name.
|
@Nonnull private final org.slf4j.Logger log
@Nonnull private final java.util.Map<javax.xml.namespace.QName,XMLObjectBuilder<?>> builders
@Nullable public XMLObjectBuilder<?> getBuilder(@Nullable javax.xml.namespace.QName key)
XMLObjectBuilder using the key it was registered with.key - the key used to register the builder@Nullable public XMLObjectBuilder<?> getBuilder(@Nullable org.w3c.dom.Element domElement)
domElement - the element to retrieve the builder for@Nonnull public <XMLObjectType extends XMLObject> XMLObjectBuilder<XMLObjectType> getBuilderOrThrow(@Nonnull javax.xml.namespace.QName key)
XMLObjectBuilder using the key it was registered with, or throws a runtime
error if unable to locate one.XMLObjectType - the type of object the builder is assumed to supportkey - the key used to register the builderXMLRuntimeException - if the builder can't be obtained@Nonnull public <XMLObjectType extends XMLObject> XMLObjectBuilder<XMLObjectType> getBuilderOrThrow(@Nonnull org.w3c.dom.Element domElement)
XMLObjectBuilder for the given element. The schema type, if present, is tried first
as the key with the element QName used if no schema type is present or does not have a builder registered
under it.XMLObjectType - the type of object the builder is assumed to supportdomElement - the element to retrieve the builder forXMLRuntimeException - if the builder can't be obtained@Nonnull @NotLive @Unmodifiable public java.util.Map<javax.xml.namespace.QName,XMLObjectBuilder<?>> getBuilders()
public void registerBuilder(@Nonnull
javax.xml.namespace.QName builderKey,
@Nonnull
XMLObjectBuilder<?> builder)
builderKey - the key used to retrieve this builder laterbuilder - the builder@Nullable public XMLObjectBuilder<?> deregisterBuilder(@Nonnull javax.xml.namespace.QName builderKey)
builderKey - the key for the builder to be deregistered