Class ExplicitParentMergeStrategy
- java.lang.Object
-
- org.craftercms.core.xml.mergers.impl.strategies.ExplicitParentMergeStrategy
-
- All Implemented Interfaces:
DescriptorMergeStrategy
public class ExplicitParentMergeStrategy extends Object implements DescriptorMergeStrategy
Implementation ofDescriptorMergeStrategythat merges the descriptor with an explicitly named parent. The parent is also checked for any other descriptors to merge.- Author:
- avasquez
-
-
Constructor Summary
Constructors Constructor Description ExplicitParentMergeStrategy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.dom4j.DocumentgetDescriptorDom(Context context, CachingOptions cachingOptions, String url)List<MergeableDescriptor>getDescriptors(Context context, CachingOptions cachingOptions, String mainDescriptorUrl, org.dom4j.Document mainDescriptorDom)Returns the list of descriptors in the order they should be merged, given the URI of the primary descriptor.List<MergeableDescriptor>getDescriptors(Context context, CachingOptions cachingOptions, String mainDescriptorUrl, org.dom4j.Document mainDescriptorDom, boolean mainDescriptorOptional)Returns the list of descriptors in the order they should be merged, given the URI of the primary descriptor.voidsetMergeStrategyResolver(DescriptorMergeStrategyResolver mergeStrategyResolver)voidsetParentDescriptorElementXPathQuery(String parentDescriptorElementXPathQuery)
-
-
-
Method Detail
-
setMergeStrategyResolver
public void setMergeStrategyResolver(DescriptorMergeStrategyResolver mergeStrategyResolver)
-
setParentDescriptorElementXPathQuery
public void setParentDescriptorElementXPathQuery(String parentDescriptorElementXPathQuery)
-
getDescriptors
public List<MergeableDescriptor> getDescriptors(Context context, CachingOptions cachingOptions, String mainDescriptorUrl, org.dom4j.Document mainDescriptorDom) throws XmlMergeException
Description copied from interface:DescriptorMergeStrategyReturns the list of descriptors in the order they should be merged, given the URI of the primary descriptor.- Specified by:
getDescriptorsin interfaceDescriptorMergeStrategy- Parameters:
context- the current contextcachingOptions- caching options in case you need access to itemsmainDescriptorUrl- the URL of the main descriptormainDescriptorDom- the DOM of the main descriptor- Returns:
- a list of
MergeableDescriptors representing the descriptors to merge - Throws:
XmlMergeException
-
getDescriptors
public List<MergeableDescriptor> getDescriptors(Context context, CachingOptions cachingOptions, String mainDescriptorUrl, org.dom4j.Document mainDescriptorDom, boolean mainDescriptorOptional) throws XmlMergeException
Description copied from interface:DescriptorMergeStrategyReturns the list of descriptors in the order they should be merged, given the URI of the primary descriptor.- Specified by:
getDescriptorsin interfaceDescriptorMergeStrategy- Parameters:
context- the current contextcachingOptions- caching options in case you need access to itemsmainDescriptorUrl- the URL of the primary descriptormainDescriptorDom- the DOM of the main descriptormainDescriptorOptional- if the primary descriptor should be marked as optional- Returns:
- a list of
MergeableDescriptors representing the descriptors to merge - Throws:
XmlMergeException
-
getDescriptorDom
protected org.dom4j.Document getDescriptorDom(Context context, CachingOptions cachingOptions, String url)
-
-