Interface Mergeable
-
- All Known Implementing Classes:
AbstractMergeableElement,AbstractMergeableElementList,AbstractMergeableSupport,ComponentElement,ComponentsElement,ComponentSetElement,ConfigurationElement,PlexusRootElement,RequirementElement,RequirementsElement
public interface MergeableInterface that marks an implementing entity as mergeable.Not all the elements/tags are expected to implement this interface.
It should be implemented by elements/tags that need to have a certain control on how elements of the same type are merged with them.- Author:
- Rahul Thakur
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description DescriptorTag[]getAllowedTags()Returns an array of tags/elements that are allowed under the current element.org.jdom2.ElementgetElement()Returns the wrapped up JDomElementinstance that was used to create this Mergeable.voidmerge(Mergeable me)Merges an element of same type.voidmerge(Mergeable me, MergeStrategy strategy)Applies the passed inMergeStrategyto merge twoMergeableinstance.
-
-
-
Method Detail
-
merge
void merge(Mergeable me) throws MergeException
Merges an element of same type.- Parameters:
me- Another entity that is mergeable.- Throws:
MergeException- if there was an error merging the mergeables.
-
merge
void merge(Mergeable me, MergeStrategy strategy) throws MergeException
Applies the passed inMergeStrategyto merge twoMergeableinstance.- Parameters:
me- RecessiveMergeableinstance.strategy-MergeStrategyto apply for merging.- Throws:
MergeException- if there was an error while merging.
-
getElement
org.jdom2.Element getElement()
Returns the wrapped up JDomElementinstance that was used to create this Mergeable.- Returns:
- the wrapped up JDom
Elementinstance.
-
getAllowedTags
DescriptorTag[] getAllowedTags()
Returns an array of tags/elements that are allowed under the current element.- Returns:
- the allowedTags
-
-