com.softwareag.centrasite.appl.framework.persistence.versioning
Interface VersionObjectListener

All Known Implementing Classes:
VersionObjectListenerImpl

public interface VersionObjectListener

Interface for the object listener during Versioning. The user may get control over objects to be versioned or purged.


Method Summary
 boolean grantPurgeObject(RegistryBean registryBean)
          Grant the object to be purged.
 boolean grantVersionedObject(RegistryBean registryBean)
          Grant the object to be versioned.
 VersionCopyMode handleExternalLink(RegistryBean registryBean, ExternalLink elink)
          Handle the external link of given object according copy mode.
 void objectCopied(RegistryBean registryBean)
          Handle the new copied object.
 void objectVersioned(RegistryBean registryBean)
          Handle the new versioned object.
 

Method Detail

grantVersionedObject

boolean grantVersionedObject(RegistryBean registryBean)
                             throws CSAppFrameworkException
Grant the object to be versioned.

Parameters:
registryBean - the versionable registry object
Returns:
true: object can be versioned
false: versioning not permitted
Throws:
CSAppFrameworkException

grantPurgeObject

boolean grantPurgeObject(RegistryBean registryBean)
                         throws CSAppFrameworkException
Grant the object to be purged.

Parameters:
registryBean - the versionable registry object
Returns:
true: object can be deleted
false: delete not permitted
Throws:
CSAppFrameworkException

objectVersioned

void objectVersioned(RegistryBean registryBean)
                     throws CSAppFrameworkException
Handle the new versioned object. The object may be modified.

Parameters:
registryBean - the new created versionable registry object
Throws:
CSAppFrameworkException

objectCopied

void objectCopied(RegistryBean registryBean)
                  throws CSAppFrameworkException
Handle the new copied object. The object may be modified.

Parameters:
registryBean - the newly created copied registry object
Throws:
CSAppFrameworkException

handleExternalLink

VersionCopyMode handleExternalLink(RegistryBean registryBean,
                                   ExternalLink elink)
                                   throws CSAppFrameworkException
Handle the external link of given object according copy mode. The user can overwrite the default handling defined by the object's copy mode.
Note: if several listeners return copy modes, then the result is not predictable

Parameters:
registryBean - the versioned registry object holding 'elink'
elink - the original external link of the registry object
Returns:
the version copy mode
null: not required
Throws:
CSAppFrameworkException