Package org.opensaml.core.xml.config
Class XMLObjectProviderRegistry
java.lang.Object
org.opensaml.core.xml.config.XMLObjectProviderRegistry
Configuration registry component for registering and retrieving implementation instances
and related configuration relevant to working with XMLObjects,
including builders, marshallers and unmarshallers.
The registry instance to use would typically be retrieved from the
ConfigurationService
.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate XMLObjectBuilderFactory
Configured XMLObject builder factory.Object provider configuration elements indexed by QName.private static QName
Default object provider.Configured set of attribute QNames which have been globally registered as having an ID type.private org.slf4j.Logger
Logger.private MarshallerFactory
Configured XMLObject marshaller factory.private ParserPool
Configured parser pool.private UnmarshallerFactory
Configured XMLObject unmarshaller factory. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
deregisterIDAttribute
(QName attributeName) Deregister an attribute as having a type of ID.void
Removes the builder, marshaller, and unmarshaller registered to the given key.Gets the XMLObject builder factory that has been configured with information from loaded configuration files.Gets the QName for the object provider that will be used for XMLObjects that do not have a registered object provider.Gets the XMLObject marshaller factory that has been configured with information from loaded configuration files.Get the currently configured ParserPool instance.Gets the XMLObject unmarshaller factory that has been configured with information from loaded configuration files.boolean
isIDAttribute
(QName attributeName) Determine whether a given attribute is registered as having an ID type.void
registerIDAttribute
(QName attributeName) Register an attribute as having a type of ID.void
registerObjectProvider
(QName providerName, XMLObjectBuilder<?> builder, Marshaller marshaller, Unmarshaller unmarshaller) Adds an object provider to this configuration.void
setParserPool
(ParserPool newParserPool) Set the currently configured ParserPool instance.
-
Field Details
-
defaultProvider
Default object provider. -
log
private org.slf4j.Logger logLogger. -
configuredObjectProviders
Object provider configuration elements indexed by QName. -
builderFactory
Configured XMLObject builder factory. -
marshallerFactory
Configured XMLObject marshaller factory. -
unmarshallerFactory
Configured XMLObject unmarshaller factory. -
idAttributeNames
Configured set of attribute QNames which have been globally registered as having an ID type. -
parserPool
Configured parser pool.
-
-
Constructor Details
-
XMLObjectProviderRegistry
public XMLObjectProviderRegistry()Constructor.
-
-
Method Details
-
getParserPool
Get the currently configured ParserPool instance.- Returns:
- the currently ParserPool
-
setParserPool
Set the currently configured ParserPool instance.- Parameters:
newParserPool
- the new ParserPool instance to configure
-
getDefaultProviderQName
Gets the QName for the object provider that will be used for XMLObjects that do not have a registered object provider.- Returns:
- the QName for the default object provider
-
registerObjectProvider
public void registerObjectProvider(@Nonnull QName providerName, @Nonnull XMLObjectBuilder<?> builder, @Nonnull Marshaller marshaller, @Nonnull Unmarshaller unmarshaller) Adds an object provider to this configuration.- Parameters:
providerName
- the name of the object provider, corresponding to the element name or type name that the builder, marshaller, and unmarshaller operate onbuilder
- the builder for that given providermarshaller
- the marshaller for the providerunmarshaller
- the unmarshaller for the provider
-
deregisterObjectProvider
Removes the builder, marshaller, and unmarshaller registered to the given key.- Parameters:
key
- the key of the builder, marshaller, and unmarshaller to be removed
-
getBuilderFactory
Gets the XMLObject builder factory that has been configured with information from loaded configuration files.- Returns:
- the XMLObject builder factory
-
getMarshallerFactory
Gets the XMLObject marshaller factory that has been configured with information from loaded configuration files.- Returns:
- the XMLObject marshaller factory
-
getUnmarshallerFactory
Gets the XMLObject unmarshaller factory that has been configured with information from loaded configuration files.- Returns:
- the XMLObject unmarshaller factory
-
registerIDAttribute
Register an attribute as having a type of ID.- Parameters:
attributeName
- the QName of the ID attribute to be registered
-
deregisterIDAttribute
Deregister an attribute as having a type of ID.- Parameters:
attributeName
- the QName of the ID attribute to be de-registered
-
isIDAttribute
Determine whether a given attribute is registered as having an ID type.- Parameters:
attributeName
- the QName of the attribute to be checked for ID type.- Returns:
- true if attribute is registered as having an ID type.
-