Class ChainExceptionRegistry
- Since:
- 5.7.3
-
Nested Class Summary
Nested classes/interfaces inherited from class org.nuxeo.runtime.model.ContributionFragmentRegistry
ContributionFragmentRegistry.Fragment<T>, ContributionFragmentRegistry.FragmentList<T>
-
Field Summary
Modifier and TypeFieldDescriptionprotected final Map<String,
ChainException> Modifiable automation filter registry.protected Map<String,
ChainException> Read only cache for automation filter lookup.Fields inherited from class org.nuxeo.runtime.model.ContributionFragmentRegistry
contribs
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addContribution
(ChainException chainException, boolean replace) clone
(ChainException orig) CLone the given contribution objectvoid
contributionRemoved
(String id, ChainException origContrib) All the fragments in the contribution was removed.void
contributionUpdated
(String id, ChainException contrib, ChainException newOrigContrib) Adds or updates a contribution.getChainException
(String onChainId) getContributionId
(ChainException contrib) Returns the contribution ID given the contribution objectboolean
Returns true if merge is supported.lookup()
void
merge
(ChainException src, ChainException dst) Merge 'src' into 'dst'.Methods inherited from class org.nuxeo.runtime.model.ContributionFragmentRegistry
addContribution, addFragment, getContribution, getFragments, removeContribution, removeContribution, removeFragment, toMap
-
Field Details
-
chainExceptions
Modifiable automation filter registry. Modifying the registry is using a lock and it's thread safe. Modifications are removing the cache. -
lookup
Read only cache for automation filter lookup. Thread safe. Not using synchronization if cache already created.
-
-
Constructor Details
-
ChainExceptionRegistry
public ChainExceptionRegistry()
-
-
Method Details
-
addContribution
public void addContribution(ChainException chainException, boolean replace) throws OperationException - Throws:
OperationException
-
isSupportingMerge
public boolean isSupportingMerge()Description copied from class:ContributionFragmentRegistry
Returns true if merge is supported.Hook method to be overridden if merge logics behind
Object.clone()
andContributionFragmentRegistry.merge(Object, Object)
cannot be implemented.- Overrides:
isSupportingMerge
in classContributionFragmentRegistry<ChainException>
-
getContributionId
Description copied from class:ContributionFragmentRegistry
Returns the contribution ID given the contribution object- Specified by:
getContributionId
in classContributionFragmentRegistry<ChainException>
-
contributionUpdated
Description copied from class:ContributionFragmentRegistry
Adds or updates a contribution.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 method 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.
- Specified by:
contributionUpdated
in classContributionFragmentRegistry<ChainException>
- Parameters:
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.
-
contributionRemoved
Description copied from class:ContributionFragmentRegistry
All the fragments in the contribution was removed. Contribution must be unregistered.The first parameter is the contribution ID that should be remove and the second parameter the original contribution fragment that as unregistered causing the contribution to be removed.
- Specified by:
contributionRemoved
in classContributionFragmentRegistry<ChainException>
-
clone
Description copied from class:ContributionFragmentRegistry
CLone the given contribution object- Specified by:
clone
in classContributionFragmentRegistry<ChainException>
-
merge
Description copied from class:ContributionFragmentRegistry
Merge 'src' into 'dst'. When merging only the 'dst' object is modified.- Specified by:
merge
in classContributionFragmentRegistry<ChainException>
- Parameters:
src
- the object to copy over the 'dst' objectdst
- this object is modified
-
lookup
-
getChainException
-