public class TargetPackageRegistry extends SimpleContributionRegistry<TargetPackageDescriptor>
ContributionFragmentRegistry.Fragment<T>, ContributionFragmentRegistry.FragmentList<T>
currentContribs
contribs
Constructor and Description |
---|
TargetPackageRegistry() |
Modifier and Type | Method and Description |
---|---|
TargetPackageDescriptor |
clone(TargetPackageDescriptor orig)
CLone the given contribution object
|
void |
contributionUpdated(String id,
TargetPackageDescriptor contrib,
TargetPackageDescriptor newOrigContrib)
Adds or updates a contribution.
|
String |
getContributionId(TargetPackageDescriptor contrib)
Returns the contribution ID given the contribution object
|
TargetPackageDescriptor |
getTargetPackage(String id) |
List<TargetPackageDescriptor> |
getTargetPackages() |
List<TargetPackageDescriptor> |
getTargetPackages(String targetPlatform) |
boolean |
isSupportingMerge()
Returns true if merge is supported.
|
void |
merge(TargetPackageDescriptor src,
TargetPackageDescriptor dst)
Merge 'src' into 'dst'.
|
contributionRemoved, getCurrentContribution
addContribution, addFragment, getContribution, getFragments, removeContribution, removeContribution, removeFragment
public TargetPackageRegistry()
public String getContributionId(TargetPackageDescriptor contrib)
ContributionFragmentRegistry
getContributionId
in class ContributionFragmentRegistry<TargetPackageDescriptor>
public void contributionUpdated(String id, TargetPackageDescriptor contrib, TargetPackageDescriptor newOrigContrib)
ContributionFragmentRegistry
If the contribution doesn't yet exists then it will be added, otherwise the value will be updated. If the given value is null the existing contribution must be removed.
The second parameter is the contribution that should be updated when merging, as well as stored and used. This
usually represents a clone of the original contribution or a merge of multiple contribution fragments.
Modifications on this object at application level will be lost on next
ContributionFragmentRegistry.contributionUpdated(String, Object, Object)
call on the same object id: modifications should be done in
the ContributionFragmentRegistry.merge(Object, Object)
method.
The last parameter is the new contribution object, unchanged (original) which was neither cloned nor merged. This object should never be modified at application level, because it will be used each time a subsequent merge is done. Also, it never should be stored.
contributionUpdated
in class SimpleContributionRegistry<TargetPackageDescriptor>
id
- - the id of the contribution that needs to be updatedcontrib
- the updated contribution object thatnewOrigContrib
- - the new, unchanged (original) contribution fragment that triggered the update.public boolean isSupportingMerge()
ContributionFragmentRegistry
Hook method to be overridden if merge logics behind Object.clone()
and ContributionFragmentRegistry.merge(Object, Object)
cannot be
implemented.
isSupportingMerge
in class SimpleContributionRegistry<TargetPackageDescriptor>
public TargetPackageDescriptor clone(TargetPackageDescriptor orig)
ContributionFragmentRegistry
clone
in class SimpleContributionRegistry<TargetPackageDescriptor>
public void merge(TargetPackageDescriptor src, TargetPackageDescriptor dst)
ContributionFragmentRegistry
merge
in class SimpleContributionRegistry<TargetPackageDescriptor>
src
- the object to copy over the 'dst' objectdst
- this object is modifiedpublic TargetPackageDescriptor getTargetPackage(String id)
public List<TargetPackageDescriptor> getTargetPackages()
public List<TargetPackageDescriptor> getTargetPackages(String targetPlatform)
Copyright © 2017 Nuxeo. All rights reserved.