Class MetaDataMergeStrategyResolver
- java.lang.Object
-
- org.craftercms.core.xml.mergers.impl.resolvers.MetaDataMergeStrategyResolver
-
- All Implemented Interfaces:
DescriptorMergeStrategyResolver
public class MetaDataMergeStrategyResolver extends Object implements DescriptorMergeStrategyResolver
Resolves theDescriptorMergeStrategyto use for a given descriptor, based on the value of an element in the descriptor document.- Author:
- Sumer Jabri, Alfonso Vasquez
-
-
Constructor Summary
Constructors Constructor Description MetaDataMergeStrategyResolver()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DescriptorMergeStrategygetStrategy(String descriptorUrl, org.dom4j.Document descriptorDom)Returns aDescriptorMergeStrategyfor a given descriptor.voidsetElementValueToStrategyMappings(Map<String,DescriptorMergeStrategy> elementValueToStrategyMappings)voidsetMergeStrategyElementXPathQuery(String mergeStrategyElementXPathQuery)
-
-
-
Method Detail
-
setMergeStrategyElementXPathQuery
public void setMergeStrategyElementXPathQuery(String mergeStrategyElementXPathQuery)
-
setElementValueToStrategyMappings
public void setElementValueToStrategyMappings(Map<String,DescriptorMergeStrategy> elementValueToStrategyMappings)
-
getStrategy
public DescriptorMergeStrategy getStrategy(String descriptorUrl, org.dom4j.Document descriptorDom) throws XmlException
Returns aDescriptorMergeStrategyfor a given descriptor. The strategy chosen is the one defined in the descriptor document.- Specified by:
getStrategyin interfaceDescriptorMergeStrategyResolver- Parameters:
descriptorUrl- the URL that identifies the descriptordescriptorDom- the XML DOM of the descriptor- Returns:
- the
DescriptorMergeStrategyfor the descriptor, or null if the DOM is null or if there's no element in the DOM that defines the merge strategy to use. - Throws:
XmlException- if the element value doesn't refer to an existing strategy
-
-