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_ATTRIBUTEDOMAIN_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, getPrimaryFolderPathIds, 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, verifyVersionSeriesadded, 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, verifyTargetObjectclone, finalize, getClass, notify, notifyAll, wait, wait, waitgetAttributeByUpperCaseName, getClassId, getId, getSessionInterfacegetTraceLogger, isTraced, tracepublic 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 PublicObjectprotected boolean isValidEventType(AuditEvent event) throws IfsException
Ovedrridden by subclasses to check the ClassObject of the target object of the event.
isValidEventType in class LibraryObjectevent - 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
PublicObjectauditPublicObjectLocked in class PublicObjectlockType - the lock typeIfsException - if the operation failsprotected void auditPublicObjectUnlocked(int lockType)
throws IfsException
PublicObjectauditPublicObjectUnlocked in class PublicObjectlockType - the lock typeIfsException - if the operation failsprotected void auditUpdated(LibraryObjectDefinition lodef) throws IfsException
LibraryObjectauditUpdated in class LibraryObjectlodef - The update definitionIfsException - if the operation fails.protected void postCreate(LibraryObjectDefinition lodef) throws IfsException
PublicObjectThis assumes that a transaction context has already been established.
postCreate in class PublicObjectlodef - object definition that was used to create the objectIfsException - if the operation failsprotected void preFree(LibraryObjectDefinition lodef) throws IfsException
PublicObjectOverride to free all existing categories, in such a way that the PO doesn't get updated for each category free.
preFree in class PublicObjectlodef - 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 PublicObjectIfsException - 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 PublicObjectIfsException - if operation fails.PublicObject.getResolvedPublicObject()public PublicObject getWorkingCopy() throws IfsException
getWorkingCopy in class PublicObjectIfsException - 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 © 2025. All rights reserved.