public class Family extends TiePublicObject
A versioned PublicObject belongs to exactly one Family. The Family represents all the versions as a single entity.
The VersionSeries represents a "set" of versioned PublicObjects. At this time, a Family can have exactly one VersionSeries. A future enhancement would be for a Family to support multiple VersionSeries.
The VersionDescription represents a single versioned PublicObject. There will be multiple VersionDescriptions within a VersionSeries.
The last object is the PublicObject itself. It is possible, although unlikely, for the same PublicObject to be referred to by multiple VersionDescriptions.
The Family class has two special attributes - the DefaultVersionDescription and the PrimaryVersionSeries. The DefaultVersionSeries has precedence over PrimaryVersionSeries when Family.getResolvedPublicObject() is called. This method returns the PublicObject based on the following rules:
VersionSeries
,
VersionDescription
,
PublicObject
,
LockObject
Modifier and Type | Field and Description |
---|---|
static String |
CLASS_NAME
This class name for this class.
|
static String |
DEFAULTVERSIONDESCRIPTION_ATTRIBUTE
The VersionDescription which will be used as the ResolvedPublicObject for this Family.
|
static String |
PRIMARYVERSIONSERIES_ATTRIBUTE
If the DefaultVersionDescription is null, the VersionSeries which will be used
as the ResolvedPublicObject for this Family.
|
static String |
SECONDARYVERSIONSERIES_ATTRIBUTE
Represents the "second" VersionSeries in a family that contains more
than one VersionSeries.
|
ACL_ATTRIBUTE, CREATEDATE_ATTRIBUTE, CREATOR_ATTRIBUTE, DELETOR_ATTRIBUTE, DESCRIPTION_ATTRIBUTE, EXPIRATIONDATE_ATTRIBUTE, FAMILY_ATTRIBUTE, FLAG_CATEGORY_EXISTS, FLAG_CONFIGURATIONCATEGORY_EXISTS, FLAG_MARKED, FLAG_NOINFERIOR, FLAG_NOSELECT, FLAG_NTFS_ARCHIVE, FLAG_NTFS_HIDDEN, FLAG_NTFS_READONLY, FLAG_NTFS_SYSTEM, FLAG_UNMARKED, FLAGS_ATTRIBUTE, LASTMODIFIER_ATTRIBUTE, LASTMODIFYDATE_ATTRIBUTE, LOCKENTRIES_ATTRIBUTE, LOCKOBJECT_ATTRIBUTE, NAME_ATTRIBUTE, OWNER_ATTRIBUTE, POLICYBUNDLE_ATTRIBUTE, POLICYLISTS_ATTRIBUTE, PRIMARYPARENTFOLDER_ATTRIBUTE, PROPERTYBUNDLE_ATTRIBUTE, RESOLVEDPUBLICOBJECT_ATTRIBUTE, SECURINGPUBLICOBJECT_ATTRIBUTE
DOMAIN_UNIQUENAME_DEFAULT_DELIMITER, m_ClassId, m_Id, m_Session
Modifier | Constructor and Description |
---|---|
protected |
Family(LibrarySession session,
Long id,
Long classId,
S_LibraryObjectData data)
Construct a Family object - standard variant.
|
Modifier and Type | Method and Description |
---|---|
protected void |
auditPublicObjectLocked(int lockType)
Audits a PublicObject being locked.
|
protected void |
auditPublicObjectUnlocked(int lockType)
Audits a PublicObject being unlocked.
|
protected void |
auditUpdated(LibraryObjectDefinition lodef)
Creates audit events for the update operation.
|
PublicObjectCapabilities |
capabilities()
Returns the PublicObjectCapabilities delegate which tracks the
capabilities of this object.
|
protected static Family |
constructFamily(LibrarySession sess,
S_LibraryObjectData data)
Constructs a Family object from the
S_LibraryObjectData object.
|
protected static Vector |
constructFamilyVector(LibrarySession sess,
Vector vector)
Returns Family Vector from a Vector of S_LibraryObjectData objects.
|
VersionDescription |
createVersionSeries(VersionDescriptionDefinition vddef)
Creates a new VersionSeries in this family.
|
VersionSeries[] |
getAllVersionSeries()
Gets an array of all VersionSeries of the current Family.
|
VersionSeries |
getAllVersionSeries(int index)
Gets the specified VersionSeries of the current PublicObject.
|
static Long |
getClassId(LibrarySession session)
Get the ID of the ClassObject representing FAMILY.
|
VersionDescription |
getDefaultVersionDescription()
Gets the default VersionDescription of this family.
|
VersionSeries |
getPrimaryVersionSeries()
Gets the PrimaryVersionSeries in this Family.
|
PublicObject |
getResolvedPublicObject()
Returns the PublicObject to which this object resolves.
|
VersionSeries |
getSecondaryVersionSeries()
Gets the SecondaryVersionSeries in this Family
|
VersionSeries |
getVersionSeries()
Gets the PrimaryVersionSeries in this Family.
|
PublicObject |
getWorkingCopy()
Returns the working copy, or null if this Family is not checked out
by the current user.
|
protected boolean |
isValidEventType(AuditEvent event)
Checks to see if the event type in the process of being posted on the
target LibraryObject is consistent with the target.
|
protected void |
postCreate(LibraryObjectDefinition lodef)
Extensibility point to perform actions after the
creation of a PublicObject.
|
protected void |
preFree(LibraryObjectDefinition lodef)
Extensibility point to perform actions prior to the
permanent deletion ("free") of a object.
|
protected void |
reportFamilyCreated()
Audits a Family create operation.
|
protected void |
reportFamilyFreed()
Audits a Family free operation.
|
void |
setDefaultVersionDescription(VersionDescription version)
Sets the default VersionDescription of this Family.
|
void |
setPrimaryVersionSeries(VersionSeries series)
Sets the PrimaryVersionSeries of this Family.
|
void |
setSecondaryVersionSeries(VersionSeries series)
Sets the SecondaryVersionSeries of this Family.
|
protected void |
verifyAddVersionSeriesCapability()
Verify the ability to add a VersionSeries.
|
protected void |
verifyRemoveVersionSeriesCapability()
Verify the ability to remove a VersionSeries.
|
addAccess, addAttachment, addCategory, addFlags, addMessageList, addRelationship, canAcquireManualLock, canReleaseDavLock, canReleaseLock, canReleaseManualLock, checkAuditViewCapability, checkCapabilities, checkCapability, checkEffectiveAccess, checkEffectiveAccess, checkLockAccess, checkParentFolderCapability, checkVersioned, clearFlags, constructPublicObject, constructPublicObjectArray, constructPublicObjectVector, containsLockEntry, copy, coreAutoFolderingEnabled, createCategories, createDedicatedPolicyPropertyBundle, delete, deriveEffectiveAccessLevel, findAttachmentRelation, findOrAddActivityRecord, findOrAddActivityRecord, findOrAddActor, findOrAddActor, findOrAddMessageList, findOrAddMessageList, free, getAcl, getActivityRecord, getActor, getAllFolderPaths, getAllFolderPaths, getAllFolderPaths, getAnyFolderPath, getAnyFolderPath, getAnyFolderPath, getAttachmentRelation, getAttachmentRelations, getAttachments, getCapabilities, getCategories, getCategories, getCategories, getCategories, getCategories, getCategory, getConsumedStorage, getCreateDate, getCreator, getDefaultAccessLevel, getDefinitionForSimplePropertyUpdates, getDeletor, getDescription, getEffectiveAccessLevel, getEffectiveAccessLevel, getExpirationDate, getFamily, getFirstCategory, getFirstVersion, getFlags, getFolderReferences, getFolderReferences, getFolderReferencesSortSpecification, getLastModifier, getLastModifyDate, getLastVersion, getLeftwardRelationshipObjects, getLeftwardRelationshipObjects, getLeftwardRelationships, getLeftwardRelationships, getLeftwardRelationshipsCount, getLeftwardRelationshipsCount, getLinks, getLockEntries, getLockEntries, getLockObject, getLockRestrictions, getLockTypeAuditProperties, getMessageList, getNextVersion, getOwner, getPolicyBundle, getPolicyLists, getPreviousVersion, getPrimaryFolderPath, getPrimaryParentFolder, getPrimaryParentFolder, getRelations, getReservationComment, getReservationDate, getReservor, getRestrictingLockEntries, getRightwardRelationshipObjects, getRightwardRelationshipObjects, getRightwardRelationships, getRightwardRelationships, getSecuringPublicObject, getSingletonVersionDescription, getVersionNumber, getVersions, grantAccess, handleCopy, handleCreate, handleUnlockAll, hasActivityRecord, hasActor, hasAttachmentRelation, hasCategories, hasCategory, hasConfigurationCategories, hasMessageList, hasNameAttribute, hasPropertyBundleAttribute, isAttachment, isDeleted, isLatestVersion, isLocked, isLockingSupported, isOwner, isReserved, isReservedByCurrentUser, isVersionable, isVersioned, isWorkingCopy, listLeftwardRelationships, listRightwardRelationships, lock, lock, lock, lock, newVersion, postCopy, postSecurityChangedEvent, postUpdate, preCopy, preCreate, preUpdate, putPolicy, reassociateLinks, removeAllPolicies, removeAttachment, removePolicy, removePolicy, removeRelationship, reserveNext, resetFolderReferences, resolveFolderReferenceSortSpecification, revokeAccess, revokeAllAccess, setAcl, setDescription, setExpirationDate, setFlags, setFolderReferencesSortSpecification, setLockEntries, setLockEntrySecurity, setOwner, setOwnerByName, setPolicyBundle, setPolicyLists, setSecuringPublicObject, toPublicObjectArray, undelete, unlock, unlock, unlockAll, unReserve, updateFlags, updateLock, vectorPublicObjectElement, vectorToPublicObjectArray, verifyAddRelationshipCapability, verifyCapabilities, verifyCapability, verifyDeleteCapability, verifyLockCapability, verifyRemoveRelationshipCapability, verifyUnlockCapability, verifyVersionSeries
added, addSimpleProperty, addSimpleProperty, applyProperties, auditCreated, canPurge, checkIfPropertyBundleSupported, checkRequiredAttributeSet, clearCopyContext, clearFreeContext, clearUpdateContext, compareTo, constructIdArray, constructIdArray, constructLibraryObject, constructLibraryObjectVector, createDedicatedPropertyBundle, createInstance, deriveDomainUniqueName, dispose, equals, equals, free, freeAll, get, getAttribute, getAttributeByUpperCaseName, getAttributes, getAttributesByUpperCaseNames, getAuditDomainContext, getAuditEventFolderContext, getClassId, getClassname, getClassName, getClassObject, getCommonName, getCommonNameAndClass, getCopyContext, getCreateContext, getData, getDefinition, getEffectivePolicyListElements, getEventualAttributeByUpperCaseName, getFreeContext, getId, getLabel, getName, getObjectReferenceAttribute, getOperationActionSpecificationContext, getPropertyBundle, getPropertyValue, getPublicObjectAttribute, getResourceString, getResourceString, getSchemaObjectAttribute, getSession, getSessionInterface, getSharedStateFactory, getSimpleObjectAttribute, getSimpleProperties, getSimpleProperty, getSimplePropertyValue, getStringIdentifier, getSystemObjectAttribute, getTraceLogger, getUpdateContext, handleAdminModeChange, handleEvent, handleFree, handleUpdate, hashCode, invalidateState, invokeOperation, invokeOperation, invokeServerMethod, isConnected, isCoreEventPostingEnabled, isInstanceOf, isPersistent, isTraced, lockRows, lookupInstanceLabel, performPostCreateExtensions, performPostFreeExtensions, performPostUpdateExtensions, performPreCreateExtensions, performPreFreeExtensions, performPreUpdateExtensions, postEvent, postEvent, postFree, prePostAuditEvent, putProperty, putProperty, removeAllProperties, removeAllSimpleProperties, removeAllSimpleProperties, removed, removeProperty, removeSimpleProperty, removeSimpleProperty, renderAsRandomAccessContent, renderAsReader, renderAsStream, setAttribute, setAttribute, setAttributes, setAttributes, setCopyContext, setFreeContext, setId, setName, setPropertyBundle, setPropertyValue, setUpdateContext, toString, trace, trustHandleCreate, trustHandleCreateAsAdmin, trustHandleFree, trustHandleFreeAsAdmin, trustHandleUpdate, trustHandleUpdateAsAdmin, update, updateAndExposeDefinition, validatePropertyValues, vectorLibraryObjectElement, vectorToLibraryObjectArray, verifyAdministrationMode, verifyConnected, verifyPersistent, verifySystemUserAccess, verifyTargetObject
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getAttributeByUpperCaseName, getClassId, getId, getSessionInterface
getTraceLogger, isTraced, trace
public static final String CLASS_NAME
public static final String PRIMARYVERSIONSERIES_ATTRIBUTE
public static final String SECONDARYVERSIONSERIES_ATTRIBUTE
public static final String DEFAULTVERSIONDESCRIPTION_ATTRIBUTE
protected Family(LibrarySession session, Long id, Long classId, S_LibraryObjectData data) throws IfsException
session
- the sessionid
- the idclassId
- the class iddata
- the Family dataIfsException
- if the operation failspublic static Long getClassId(LibrarySession session) throws IfsException
session
- the session contextIfsException
- if the operation failspublic PublicObjectCapabilities capabilities()
capabilities
in class PublicObject
protected boolean isValidEventType(AuditEvent event) throws IfsException
isValidEventType
in class LibraryObject
event
- the event being posted on this objectIfsException
- if the operation failsprotected void reportFamilyCreated() throws IfsException
IfsException
- if the operation failsprotected void reportFamilyFreed() throws IfsException
IfsException
- if the operation failsprotected void auditPublicObjectLocked(int lockType) throws IfsException
PublicObject
auditPublicObjectLocked
in class PublicObject
lockType
- the lock typeIfsException
- if the operation failsprotected void auditPublicObjectUnlocked(int lockType) throws IfsException
PublicObject
auditPublicObjectUnlocked
in class PublicObject
lockType
- the lock typeIfsException
- if the operation failsprotected void auditUpdated(LibraryObjectDefinition lodef) throws IfsException
LibraryObject
auditUpdated
in class LibraryObject
lodef
- The update definitionIfsException
- if the operation fails.protected void postCreate(LibraryObjectDefinition lodef) throws IfsException
PublicObject
This assumes that a transaction context has already been established.
postCreate
in class PublicObject
lodef
- object definition that was used to create the objectIfsException
- if the operation failsprotected void preFree(LibraryObjectDefinition lodef) throws IfsException
PublicObject
Override to free all existing categories, in such a way that the PO doesn't get updated for each category free.
preFree
in class PublicObject
lodef
- object definition used to hold
options related to the free operationIfsException
- if operation fails.public VersionDescription getDefaultVersionDescription() throws IfsException
IfsException
- if operation fails.public void setDefaultVersionDescription(VersionDescription version) throws IfsException
version
- the desired default VersionDescription.IfsException
- if operation fails.public VersionSeries getVersionSeries() throws IfsException
getVersionSeries
in class PublicObject
IfsException
- if operation fails.public VersionSeries getPrimaryVersionSeries() throws IfsException
IfsException
- if operation fails.public void setPrimaryVersionSeries(VersionSeries series) throws IfsException
series
- VersionSeries to be set as primary.IfsException
- if operation fails.public VersionSeries getSecondaryVersionSeries() throws IfsException
IfsException
- if operation fails.public void setSecondaryVersionSeries(VersionSeries series) throws IfsException
series
- VersionSeries to be set as the secondary series.IfsException
- if operation fails.public PublicObject getResolvedPublicObject() throws IfsException
this
). For the version classes, (Family,
VersionSeries, and VersionDescription), this will return a non
version-class object as determined by the configuration of the instance
of the version class.
This override exists to return the Pending PublicObject value of the primary VersionSeries if the caller is the Reservor of that VersionSeries; in all other cases, it defers to the implementation in the superclass (PublicObject). NOTE that the Pending PublicObject attribute of VersionSeries has been deprecated and will be removed in a future release.
getResolvedPublicObject
in class PublicObject
IfsException
- if operation fails.PublicObject.getResolvedPublicObject()
public PublicObject getWorkingCopy() throws IfsException
getWorkingCopy
in class PublicObject
IfsException
- if the operation failspublic VersionDescription createVersionSeries(VersionDescriptionDefinition vddef) throws IfsException
setPrimaryVersionSeries
method.
If this is the second VersionSeries in the family, the SecondaryVersionSeries
attribute will get updated to refer to the newly created VersionSeries.vddef
- Definition object describing the
first VersionDescription in the new VersionSeries.IfsException
- if the operation failsprotected void verifyAddVersionSeriesCapability() throws IfsException
IfsException
- if the operation failsprotected void verifyRemoveVersionSeriesCapability() throws IfsException
IfsException
- if the operation failspublic VersionSeries[] getAllVersionSeries() throws IfsException
IfsException
- if operation fails.public VersionSeries getAllVersionSeries(int index) throws IfsException
index
- Index to the required versionseriesIfsException
- if operation fails.protected static Vector constructFamilyVector(LibrarySession sess, Vector vector) throws IfsException
sess
- current LibrarySessionvector
- vector of Family objectsIfsException
- if the operation failsprotected static Family constructFamily(LibrarySession sess, S_LibraryObjectData data) throws IfsException
sess
- current LibrarySessiondata
- data componentIfsException
- if the operation failsCopyright © 2023. All rights reserved.