Package org.nuxeo.runtime.deploy
Class ExtensibleContribution
- java.lang.Object
-
- org.nuxeo.runtime.deploy.Contribution
-
- org.nuxeo.runtime.deploy.ExtensibleContribution
-
- All Implemented Interfaces:
Cloneable
- Direct Known Subclasses:
CompositeContribution
public abstract class ExtensibleContribution extends Contribution
- Author:
- Bogdan Stefanescu
-
-
Field Summary
Fields Modifier and Type Field Description protected ExtensibleContribution
baseContribution
protected String
baseContributionId
-
Fields inherited from class org.nuxeo.runtime.deploy.Contribution
contributionId, extension
-
-
Constructor Summary
Constructors Constructor Description ExtensibleContribution()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description ExtensibleContribution
clone()
perform a deep clone to void sharing collection elements between clonesprotected abstract void
copyOver(ExtensibleContribution contrib)
Copy this contribution data over the given one.ExtensibleContribution
getBaseContribution()
String
getBaseContributionId()
protected ExtensibleContribution
getMergedContribution()
ExtensibleContribution
getRootContribution()
void
install(ManagedComponent comp)
boolean
isRootContribution()
void
resolve(ContributionManager mgr)
void
setBaseContribution(ExtensibleContribution baseContribution)
void
setBaseContributionId(String baseContributionId)
void
uninstall(ManagedComponent comp)
void
unresolve(ContributionManager mgr)
-
Methods inherited from class org.nuxeo.runtime.deploy.Contribution
equals, getContributionId, getContributor, getDependencies, getExtension, getExtensionPoint, hashCode, install, setContributionId, setExtension, toString, uninstall
-
-
-
-
Field Detail
-
baseContribution
protected ExtensibleContribution baseContribution
-
baseContributionId
protected String baseContributionId
-
-
Method Detail
-
copyOver
protected abstract void copyOver(ExtensibleContribution contrib)
Copy this contribution data over the given one.Warn that the copy must be done deeply - you should clone every element in any collection you have. This is to avoid merging data you copy into the base contribution and breaking subsequent merging operations.
The baseContributionId and contributionId fields should not be copied since their are copied by the base classes implementation.
-
getBaseContributionId
public String getBaseContributionId()
-
setBaseContribution
public void setBaseContribution(ExtensibleContribution baseContribution)
-
setBaseContributionId
public void setBaseContributionId(String baseContributionId)
-
resolve
public void resolve(ContributionManager mgr)
- Overrides:
resolve
in classContribution
-
unresolve
public void unresolve(ContributionManager mgr)
- Overrides:
unresolve
in classContribution
-
getBaseContribution
public ExtensibleContribution getBaseContribution()
-
getRootContribution
public ExtensibleContribution getRootContribution()
-
isRootContribution
public boolean isRootContribution()
-
getMergedContribution
protected ExtensibleContribution getMergedContribution()
-
install
public void install(ManagedComponent comp)
- Overrides:
install
in classContribution
-
uninstall
public void uninstall(ManagedComponent comp)
- Overrides:
uninstall
in classContribution
-
clone
public ExtensibleContribution clone()
perform a deep clone to void sharing collection elements between clones
-
-