Package net.shibboleth.spring.metadata
Class DynamicHTTPMetadataProviderParser
java.lang.Object
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser
net.shibboleth.shared.spring.custom.AbstractCustomBeanDefinitionParser
net.shibboleth.spring.metadata.AbstractMetadataProviderParser
net.shibboleth.spring.metadata.AbstractDynamicMetadataProviderParser
net.shibboleth.spring.metadata.AbstractDynamicHTTPMetadataProviderParser
net.shibboleth.spring.metadata.DynamicHTTPMetadataProviderParser
- All Implemented Interfaces:
BeanDefinitionParser
Parser for concrete dynamic HTTP metadata resolvers, based on
FunctionDrivenDynamicHTTPMetadataResolver.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final StringName of default VelocityEngine bean to use.static final QNameElement name.private static final QNameMetadataQueryProtocol child element name.private static final QNameRegex child element name.private static final QNameTemplate child element name.Fields inherited from class net.shibboleth.spring.metadata.AbstractMetadataProviderParser
CHAINING_PROVIDER_ELEMENT_NAME, METADATA_FILTER_ELEMENT_NAME, METADATA_NAMESPACE, SECURITY_NAMESPACE, TRUST_ENGINE_ELEMENT_NAMEFields inherited from class net.shibboleth.shared.spring.custom.AbstractCustomBeanDefinitionParser
CUSTOM_PARSER_PROPERTIES_LOCATIONFields inherited from class org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
ID_ATTRIBUTE, NAME_ATTRIBUTE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoNativeParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) Parse the element into the provider builder.protected Class<? extends MetadataResolver>getNativeBeanClass(Element element) Return the real class implement by this type.protected BeanDefinitiongetRequestURLBuilder(Element element, BeanDefinitionBuilder parentBuilder) Build and return an instance of theFunctionused as the request URL builder.private StringparseTemplateEncodingStyle(Element template) Parse the 'encodingStyle' attributes for Template element types.Methods inherited from class net.shibboleth.spring.metadata.AbstractDynamicMetadataProviderParser
getParserPoolRef, getTaskTimerRef, processPersistentCachingProperties, processTimingPropertiesMethods inherited from class net.shibboleth.spring.metadata.AbstractMetadataProviderParser
doParse, getBeanClassMethods inherited from class net.shibboleth.shared.spring.custom.AbstractCustomBeanDefinitionParser
getCustomProperty, registerBeanDefinitionMethods inherited from class org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser
doParse, getBeanClassName, getParentName, parseInternalMethods inherited from class org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
parse, postProcessComponentDefinition, resolveId, shouldFireEvents, shouldGenerateId, shouldGenerateIdAsFallback, shouldParseNameAsAliases
-
Field Details
-
ELEMENT_NAME
Element name. -
TEMPLATE
Template child element name. -
REGEX
Regex child element name. -
METADATA_QUERY_PROTOCOL
MetadataQueryProtocol child element name. -
DEFAULT_VELOCITY_ENGINE_REF
Name of default VelocityEngine bean to use.- See Also:
-
-
Constructor Details
-
DynamicHTTPMetadataProviderParser
public DynamicHTTPMetadataProviderParser()
-
-
Method Details
-
getNativeBeanClass
Return the real class implement by this type. This has the same function as the more usualAbstractSingleBeanDefinitionParser.getBeanClass(Element)but it may need to be shimmed inAbstractMetadataProviderParserwhich may need to insert an extra bean.- Specified by:
getNativeBeanClassin classAbstractMetadataProviderParser- Parameters:
element- theElementthat is being parsed- Returns:
- the
Classof the bean that is being defined via parsing the suppliedElement, ornullif none - See Also:
-
doNativeParse
protected void doNativeParse(@Nonnull Element element, @Nonnull ParserContext parserContext, @Nonnull BeanDefinitionBuilder builder) Parse the element into the provider builder. This has the same function as the more usualAbstractSingleBeanDefinitionParser.doParse(Element, ParserContext, BeanDefinitionBuilder)but it may need to be shimmed in this class which may need to insert an extra bean. We assume that we will be summoning up a class which extends anAbstractDynamicMetadataResolver.- Overrides:
doNativeParsein classAbstractDynamicHTTPMetadataProviderParser- Parameters:
element- the XML element being parsedparserContext- the object encapsulating the current state of the parsing processbuilder- used to define theBeanDefinition- See Also:
-
getRequestURLBuilder
@Nonnull protected BeanDefinition getRequestURLBuilder(@Nonnull Element element, @Nonnull BeanDefinitionBuilder parentBuilder) Build and return an instance of theFunctionused as the request URL builder.- Parameters:
element- the parent metadata provider elementparentBuilder- metadata provider element's bean builder- Returns:
- the function
-
parseTemplateEncodingStyle
Parse the 'encodingStyle' attributes for Template element types.- Parameters:
template- the Template element- Returns:
- the encoding style as a string
-