public class VersionManagerImpl extends java.lang.Object implements VersionManager
Constructor and Description |
---|
VersionManagerImpl(com.centrasite.jaxr.JAXRAccessor jaxrAccessor,
ManagedBeanPool beanPool)
Construct the Version Manager Implementation.
|
Modifier and Type | Method and Description |
---|---|
void |
addVersionObjectListener(VersionObjectListener versionObjectListener)
Add a object listener.
|
java.util.Collection<RegistryBean> |
copy(RegistryBean registryBean)
Copy the specified registry bean (RegistryEntry or RegistryBean).
|
java.util.Collection<RegistryBean> |
copy(RegistryBean registryBean,
VersionCopyMode copyMode)
Copy the specified registry bean (RegistryEntry or RegistryBean).
|
java.util.Collection<RegistryBean> |
copy(RegistryBean registryBean,
VersionCopyMode copyMode,
java.util.Collection<RegistryBean> ignoreCopyObjects)
Copy the specified registry bean (RegistryEntry or RegistryBean).
|
java.util.Collection<RegistryBean> |
createVersion(ExternalLink externalLinkObject)
Create a new version of an External Link.
|
java.util.Collection<RegistryBean> |
createVersion(ExternalLink externalLinkObject,
VersionCopyMode copyMode)
Create a new version of an External Link.
|
java.util.Collection<RegistryBean> |
createVersion(RegistryBean registryBean)
Creates a new version of a registry bean (RegistryEntry or
RegistryBean).
|
java.util.Collection<RegistryBean> |
createVersion(RegistryBean registryBean,
VersionCopyMode copyMode)
Create a new version of a registry bean (RegistryEntry or
RegistryBean).
|
java.util.Collection<RegistryBean> |
createVersion(RegistryBean registryBean,
VersionCopyMode copyMode,
java.util.Collection<RegistryBean> ignoreCopyObjects)
Create a new version of a registry bean (RegistryEntry or
RegistryBean).
|
java.util.Collection<RegistryBean> |
createVersion(Service serviceObject,
java.util.Collection<RegistryBean> ignoreCopyObjects)
Create a new version of a Service object.
|
java.util.Collection<RegistryBean> |
createVersion(Service serviceObject,
VersionCopyMode copyMode,
java.util.Collection<RegistryBean> ignoreCopyObjects)
Create a new version of a Service object.
|
VersionObjectListener |
createVersionObjectListener(InternationalString description,
java.lang.String userVersion)
Create a
VersionObjectListener . |
java.util.Collection<RegistryBean> |
getAllIgnoredObjects(java.util.Collection<RegistryBean> ignoredObjects)
Get the entire list of objects to be ignored.
|
int |
getMajorVersion(RegistryBean registryBean)
Returns the major version number of any registry bean.
|
RegistryBean |
getMaxVersionObject(RegistryBean registryBean)
Get the maximum version object of an arbitrary given object in a
versioning row.
|
int |
getMinorVersion(RegistryBean registryBean)
Returns the minor version number of any registry object.
|
java.util.List<RegistryBean> |
getNewerVersionObjects(RegistryBean registryBean,
java.util.Collection<Classification> classifications)
Gets all older versioned objects based on the object given.
|
java.util.List<RegistryBean> |
getOlderVersionObjects(RegistryBean registryBean,
java.util.Collection<Classification> classifications)
Gets all older versioned objects based on the object given.
|
java.lang.String |
getUserVersion(RegistryBean registryBean)
Returns the user version of any registry bean.
|
java.util.Collection<RegistryBean> |
getVersionObjects(RegistryBean registryBean)
Get all versioned objects based on the object given.
|
boolean |
isMaxVersionObject(RegistryBean registryBean)
Checks if the given object is the maximum (or only) version object.
|
void |
overwriteCopyRule(CopyRule copyRule)
Overwrite a default copy rule.
|
java.util.Collection<RegistryBean> |
purge(java.util.Collection<RegistryBean> registryBeans,
int keepCount)
Purge the list of registry beans with the same keep count.
|
java.util.Collection<RegistryBean> |
purge(RegistryBean registryBean)
Purge older version registry entries and keep only the actual one.
|
java.util.Collection<RegistryBean> |
purge(RegistryBean registryBean,
int keepCount)
Purge older version registry entries.
|
void |
removeRepositoryResources()
Remove repository resources collected during purge().
|
void |
removeVersionObjectListener(VersionObjectListener versionObjectListener)
Remove a object listener.
|
void |
setForceTargetPurge(boolean forceTargetPurge)
Indicates for the purge methods whether to delete objects although they
are target of associations.
|
public VersionManagerImpl(com.centrasite.jaxr.JAXRAccessor jaxrAccessor, ManagedBeanPool beanPool) throws CSAppFrameworkException
beanPool
- The ManagedBeanPool
instancejaxrAccessor
- The opened JAXR connection as a JAXRAccessor
instanceCSAppFrameworkException
- If an error occurs in creating the VersionManagerImpl
instancepublic void addVersionObjectListener(VersionObjectListener versionObjectListener)
VersionManager
addVersionObjectListener
in interface VersionManager
versionObjectListener
- the VersionObjectListener
to addpublic java.util.Collection<RegistryBean> copy(RegistryBean registryBean) throws CSAppFrameworkException
VersionManager
copy
in interface VersionManager
registryBean
- RegistryBean
to copyCollection
of new version RegistryBean
objectsCSAppFrameworkException
- If an error occurs while creating a new versionpublic java.util.Collection<RegistryBean> copy(RegistryBean registryBean, VersionCopyMode copyMode) throws CSAppFrameworkException
VersionManager
copy
in interface VersionManager
registryBean
- The RegistryBean
to copycopyMode
- the VersionCopyMode
(SHALLOW, DEEP, ...)Collection
of new version RegistryBean
objectsCSAppFrameworkException
- If an error occurs while creating a new versionpublic java.util.Collection<RegistryBean> copy(RegistryBean registryBean, VersionCopyMode copyMode, java.util.Collection<RegistryBean> ignoreCopyObjects) throws CSAppFrameworkException
VersionManager
copy
in interface VersionManager
registryBean
- RegistryBean
to copycopyMode
- the VersionCopyMode
(SHALLOW, DEEP, ...)ignoreCopyObjects
- Collection
of RegistryBean
objects which shouldn't get a new versionCollection
of new version RegistryBean
objectsCSAppFrameworkException
- If an error occurs while creating a new versionpublic java.util.Collection<RegistryBean> createVersion(RegistryBean registryBean) throws CSAppFrameworkException
VersionManager
createVersion
in interface VersionManager
registryBean
- a versionable (or non-versionable) RegistryBean
(version top level)Collection
of new version RegistryBean
objectsCSAppFrameworkException
- If an error occurs while creating a new versionpublic java.util.Collection<RegistryBean> createVersion(RegistryBean registryBean, VersionCopyMode copyMode) throws CSAppFrameworkException
VersionManager
createVersion
in interface VersionManager
registryBean
- a versionable (or non-versionable) RegistryBean
(version top level)copyMode
- the VersionCopyMode
(SHALLOW, DEEP, ...)Collection
of new version RegistryBean
objectsCSAppFrameworkException
- If an error occurs while creating a new versionpublic java.util.Collection<RegistryBean> createVersion(RegistryBean registryBean, VersionCopyMode copyMode, java.util.Collection<RegistryBean> ignoreCopyObjects) throws CSAppFrameworkException
VersionManager
createVersion
in interface VersionManager
registryBean
- a versionable (or non-versionable) RegistryBean
(version top level)copyMode
- the VersionCopyMode
(SHALLOW, DEEP, ...)ignoreCopyObjects
- Collection
of RegistryBean
objects which shouldn't get a new versionCollection
of new version RegistryBean
objectsCSAppFrameworkException
- If an error occurs while creating a new versionpublic java.util.Collection<RegistryBean> createVersion(Service serviceObject, java.util.Collection<RegistryBean> ignoreCopyObjects) throws CSAppFrameworkException
VersionManager
createVersion
in interface VersionManager
serviceObject
- a Service
object (version top level)ignoreCopyObjects
- Collection
of RegistryBean
objects which shouldn't get a new versionCollection
of new version RegistryBean
objectsCSAppFrameworkException
- If an error occurs while creating a new versionpublic java.util.Collection<RegistryBean> createVersion(Service serviceObject, VersionCopyMode copyMode, java.util.Collection<RegistryBean> ignoreCopyObjects) throws CSAppFrameworkException
VersionManager
createVersion
in interface VersionManager
serviceObject
- a Service
object (version top level)copyMode
- the VersionCopyMode
(SHALLOW, DEEP, ...)ignoreCopyObjects
- Collection
of RegistryBean
objects which shouldn't get a new versionCollection
of new version RegistryBean
objectsCSAppFrameworkException
- If an error occurs while creating a new versionpublic java.util.Collection<RegistryBean> createVersion(ExternalLink externalLinkObject) throws CSAppFrameworkException
VersionManager
createVersion
in interface VersionManager
externalLinkObject
- the ExternalLink
objectCollection
of new version RegistryBean
objectsCSAppFrameworkException
- If an error occurs while creating a new versionpublic java.util.Collection<RegistryBean> createVersion(ExternalLink externalLinkObject, VersionCopyMode copyMode) throws CSAppFrameworkException
VersionManager
createVersion
in interface VersionManager
externalLinkObject
- the ExternalLink
objectcopyMode
- the VersionCopyMode
(NONE, REMOVE, SHALLOW, DEEP)Collection
of new version RegistryBean
objectsCSAppFrameworkException
- If an error occurs while creating a new versionpublic java.util.Collection<RegistryBean> getAllIgnoredObjects(java.util.Collection<RegistryBean> ignoredObjects) throws CSAppFrameworkException
VersionManager
getAllIgnoredObjects
in interface VersionManager
ignoredObjects
- Collection
of RegistryBean
objects to be ignoredCollection
of RegistryBean
to be ignored + evtl. moreCSAppFrameworkException
- If an error occurs in obtaining the ignored objectspublic int getMajorVersion(RegistryBean registryBean) throws CSAppFrameworkException
VersionManager
getMajorVersion
in interface VersionManager
registryBean
- a RegistryBean
objectCSAppFrameworkException
- If an error occurs in getting the major versionpublic RegistryBean getMaxVersionObject(RegistryBean registryBean) throws CSAppFrameworkException
VersionManager
getMaxVersionObject
in interface VersionManager
registryBean
- any RegistryBean
in a versioning rowRegistryBean
object with the highest version regObj: if no versioning (or
already the highest one)CSAppFrameworkException
- If an error occurs while trying to get the maximum versioned objectpublic int getMinorVersion(RegistryBean registryBean) throws CSAppFrameworkException
VersionManager
getMinorVersion
in interface VersionManager
registryBean
- a RegistryBean
objectCSAppFrameworkException
- If an error occurs in getting the minor versionpublic java.util.List<RegistryBean> getNewerVersionObjects(RegistryBean registryBean, java.util.Collection<Classification> classifications) throws CSAppFrameworkException
VersionManager
getNewerVersionObjects
in interface VersionManager
registryBean
- a (versioned) RegistryBean
objectclassifications
- Collection
of Classification
s; if not null
and not empty then
at least one of the classification must matchList
of all newer versions sorted by version number ascendingCSAppFrameworkException
- If an error occurs while obtaining the older version objectspublic java.util.List<RegistryBean> getOlderVersionObjects(RegistryBean registryBean, java.util.Collection<Classification> classifications) throws CSAppFrameworkException
VersionManager
getOlderVersionObjects
in interface VersionManager
registryBean
- a (versioned) RegistryBean
objectclassifications
- Collection
of Classification
s; if not null
and not empty then
at least one of the classification must matchList
of all older versions sorted by version number descendingCSAppFrameworkException
- If an error occurs while obtaining the older version objectspublic java.lang.String getUserVersion(RegistryBean registryBean) throws CSAppFrameworkException
VersionManager
getUserVersion
in interface VersionManager
registryBean
- a RegistryBean
objectCSAppFrameworkException
- If an error occurs in obtaining the user versionpublic java.util.Collection<RegistryBean> getVersionObjects(RegistryBean registryBean) throws CSAppFrameworkException
VersionManager
getVersionObjects
in interface VersionManager
registryBean
- a RegistryBean
(any version)Collection
of all versioned RegistryBean
objectsCSAppFrameworkException
- If an error occurs while obtaining the versioned objectspublic boolean isMaxVersionObject(RegistryBean registryBean) throws CSAppFrameworkException
VersionManager
isMaxVersionObject
in interface VersionManager
registryBean
- a RegistryBean
true
if regObj is the maximum (or only) version object and false
if it is an
intermediate version objectCSAppFrameworkException
- If an error occurs while performing the checkpublic void overwriteCopyRule(CopyRule copyRule)
VersionManager
overwriteCopyRule
in interface VersionManager
copyRule
- the CopyRule
to be usedpublic java.util.Collection<RegistryBean> purge(RegistryBean registryBean) throws CSAppFrameworkException
VersionManager
purge
in interface VersionManager
registryBean
- a RegistryBean
to be purgedCollection
of Keys of RegistryBean
objects to deleteCSAppFrameworkException
- If an error occurs while purgingpublic java.util.Collection<RegistryBean> purge(RegistryBean registryBean, int keepCount) throws CSAppFrameworkException
VersionManager
Examples: having object versions: v0 - v1 - v2 - v3 - v4 1.) purge(v4,1) : remove v0,v1,v2,v3 2.) purge(v2,1) : remove v0,v1 3.) purge(v3,2) : remove v0,v1 4.) purge(v3,-1) : remove v0 5.) purge(v4,0) : remove all
purge
in interface VersionManager
registryBean
- a RegistryBean
to be purgedkeepCount
- > 0 : number of version objects to keep; < 0 : number of old
object version to delete; 0 : delete all objectsCollection
of Keys of RegistryBean
objects to deleteCSAppFrameworkException
- If an error occurs while purgingpublic java.util.Collection<RegistryBean> purge(java.util.Collection<RegistryBean> registryBeans, int keepCount) throws CSAppFrameworkException
VersionManager
purge
in interface VersionManager
registryBeans
- Collection
of RegistryBean
s to be deletedkeepCount
- > 0 : number of version objects to keep; < 0 : number of old
object version to delete; 0 : delete all objectsCollection
of Keys of RegistryBean
objects to deleteCSAppFrameworkException
- If an error occurs while purgingpublic void removeRepositoryResources()
VersionManager
removeRepositoryResources
in interface VersionManager
public void removeVersionObjectListener(VersionObjectListener versionObjectListener)
VersionManager
removeVersionObjectListener
in interface VersionManager
versionObjectListener
- the VersionObjectListener
to removepublic void setForceTargetPurge(boolean forceTargetPurge)
VersionManager
setForceTargetPurge
in interface VersionManager
forceTargetPurge
- If true
, delete objects no matter of target associations; If false
:
reject object delete (implicitly by JAXR) if they are target of associationspublic VersionObjectListener createVersionObjectListener(InternationalString description, java.lang.String userVersion) throws CSAppFrameworkException
VersionManager
VersionObjectListener
.createVersionObjectListener
in interface VersionManager
description
- The InternationalString
descriptionuserVersion
- The user specified versionVersionObjectListener
created with the given valuesCSAppFrameworkException
- If an error occurs while creating the version object listener