Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## oracle.ifs.beans
Class Family

    java.lang.Object
      oracle.ifs.beans.LibraryObject
          oracle.ifs.beans.TieLibraryObject
              oracle.ifs.beans.PublicObject
                  oracle.ifs.beans.TiePublicObject
                      oracle.ifs.beans.Family

All Implemented Interfaces:
  IfsEventHandler, LibraryObjectInterface, PublicObjectInterface, Traceable

Direct Known Subclasses:
  TieFamily

    public class Family

extends TiePublicObject

The `Family` class is one of the "versioning" classes. Together with the other versioning classes, VersionSeries and VersionDescription, the Family class supports PublicObject versioning. The most common PublicObject to be versioned is a Document.

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:

- If DefaultVersionDescription is set, it returns the PublicObject referred to by the VersionDescription.
- If the DefaultVersionDescription is not set, then it looks at the PrimaryVersionSeries. The VersionSeries refers to a DefaultVersionDescription. It returns the PublicObject referred to by this VersionDescription.

See Also:
  `VersionSeries`, `VersionDescription`, `PublicObject`, `LockObject`
(Published)

Field Summary
`static java.lang.String` | `CLASS_NAME` This class name for this class.
`static java.lang.String` | `DEFAULTVERSIONDESCRIPTION_ATTRIBUTE` The VersionDescription which will be used as the ResolvedPublicObject for this Family.
`static java.lang.String` | `PRIMARYVERSIONSERIES_ATTRIBUTE` If the DefaultVersionDescription is null, the VersionSeries which will be used as the ResolvedPublicObject for this Family.
`static java.lang.String` | `SECONDARYVERSIONSERIES_ATTRIBUTE` Represents the "second" VersionSeries in a family that contains more than one VersionSeries.

Fields inherited from class oracle.ifs.beans.PublicObject
`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`

Fields inherited from class oracle.ifs.beans.LibraryObject
`DOMAIN_UNIQUENAME_DEFAULT_DELIMITER, m_ClassId, m_Id, m_Session`

Constructor Summary
`protected` | `Family(LibrarySession session, java.lang.Long id, java.lang.Long classId, S_LibraryObjectData data)` Construct a Family object - standard variant.

Method Summary
`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 java.util.Vector` | `constructFamilyVector(LibrarySession sess, java.util.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 java.lang.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.

Methods inherited from class oracle.ifs.beans.PublicObject
`addAccess, addCategory, addFlags, addRelationship, canAcquireManualLock, canReleaseDavLock, canReleaseLock, canReleaseManualLock, checkAuditViewCapability, checkCapabilities, checkCapability, checkEffectiveAccess, checkEffectiveAccess, checkLockAccess, checkVersioned, clearFlags, constructPublicObject, constructPublicObjectArray, constructPublicObjectVector, copy, coreAutoFolderingEnabled, createCategories, createDedicatedPolicyPropertyBundle, delete, deriveEffectiveAccessLevel, free, getAcl, getAllFolderPaths, getAllFolderPaths, getAllFolderPaths, getAnyFolderPath, getAnyFolderPath, getAnyFolderPath, getCapabilities, getCategories, getCategories, getCategories, getCategories, getCategories, getCategory, getConsumedStorage, getCreateDate, getCreator, getDefaultAccessLevel, getDeletor, getDescription, getEffectiveAccessLevel, getEffectiveAccessLevel, getExpirationDate, getFamily, getFirstVersion, getFlags, getFolderReferences, getFolderReferences, getFolderReferencesSortSpecification, getLastModifier, getLastModifyDate, getLastVersion, getLeftwardRelationshipObjects, getLeftwardRelationshipObjects, getLeftwardRelationships, getLeftwardRelationships, getLeftwardRelationshipsCount, getLeftwardRelationshipsCount, getLinks, getLockEntries, getLockEntries, getLockObject, getLockRestrictions, getLockTypeAuditProperties, getNextVersion, getOwner, getPolicyBundle, getPolicyLists, getPreviousVersion, getPrimaryFolderPath, getPrimaryParentFolder, getPrimaryParentFolder, getReservationComment, getReservationDate, getReservor, getRestrictingLockEntries, getRightwardRelationshipObjects, getRightwardRelationshipObjects, getRightwardRelationships, getRightwardRelationships, getSecuringPublicObject, getSingletonVersionDescription, getVersionNumber, getVersions, grantAccess, handleCopy, handleCreate, handleUnlockAll, hasCategories, hasConfigurationCategories, hasNameAttribute, isDeleted, isLatestVersion, isLocked, isLockingSupported, isOwner, isReserved, isReservedByCurrentUser, isVersionable, isVersioned, isWorkingCopy, listLeftwardRelationships, listRightwardRelationships, lock, lock, lock, lock, newVersion, postCopy, postUpdate, preCopy, preCreate, preUpdate, putPolicy, reassociateLinks, removeAllPolicies, 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, verifyDeleteCapability, verifyLockCapability, verifyUnlockCapability, verifyVersionSeries`

Methods inherited from class oracle.ifs.beans.LibraryObject
`applyProperties, auditCreated, checkRequiredAttributeSet, clearCopyContext, clearFreeContext, clearUpdateContext, constructIdArray, constructIdArray, constructLibraryObject, constructLibraryObjectVector, createDedicatedPropertyBundle, deriveDomainUniqueName, dispose, equals, free, get, getAttribute, getAttributeByUpperCaseName, getAttributes, getAttributesByUpperCaseNames, getAuditDomainContext, getAuditEventFolderContext, getClassId, getClassname, getClassName, getClassObject, getCommonName, getCopyContext, getCreateContext, getData, getDefinition, getEffectivePolicyListElements, getEventualAttributeByUpperCaseName, getFreeContext, getId, getLabel, getName, getObjectReferenceAttribute, getOperationActionSpecificationContext, getPropertyBundle, getPropertyValue, getPublicObjectAttribute, getResourceString, getResourceString, getSchemaObjectAttribute, getSession, getSessionInterface, getSharedStateFactory, getStringIdentifier, getSystemObjectAttribute, getTraceLogger, getUpdateContext, handleAdminModeChange, handleEvent, handleFree, handleUpdate, hashCode, invokeOperation, invokeOperation, invokeServerMethod, isConnected, isCoreEventPostingEnabled, isInstanceOf, isTraced, lockRows, lookupInstanceLabel, postEvent, postEvent, postFree, prePostAuditEvent, putProperty, putProperty, removeAllProperties, removeProperty, 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, verifySystemUserAccess, verifyTargetObject`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface oracle.ifs.common.LibraryObjectInterface
`getAttributeByUpperCaseName, getClassId, getId, getSessionInterface`

Methods inherited from interface oracle.ifs.common.Traceable
`getTraceLogger, isTraced, trace`

Field Detail

### CLASS_NAME

    public static final java.lang.String CLASS_NAME

  Description copied from class: `Family`
  This class name for this class. Useful for methods that take a class name argument.

  See Also:
    Constant Field Values
  (Published)

### PRIMARYVERSIONSERIES_ATTRIBUTE

    public static final java.lang.String PRIMARYVERSIONSERIES_ATTRIBUTE

  Description copied from class: `Family`
  If the DefaultVersionDescription is null, the VersionSeries which will be used as the ResolvedPublicObject for this Family.

  See Also:
    Constant Field Values
  (Published)

### SECONDARYVERSIONSERIES_ATTRIBUTE

    public static final java.lang.String SECONDARYVERSIONSERIES_ATTRIBUTE

  Description copied from class: `Family`
  Represents the "second" VersionSeries in a family that contains more than one VersionSeries. Used as a more efficient way to access the second VersionSeries in a Family that contains no more than two VersionSeries.

  See Also:
    Constant Field Values
  (Published)

### DEFAULTVERSIONDESCRIPTION_ATTRIBUTE

    public static final java.lang.String DEFAULTVERSIONDESCRIPTION_ATTRIBUTE

  Description copied from class: `Family`
  The VersionDescription which will be used as the ResolvedPublicObject for this Family. If null, the ResolvedPublicObject for this Family will be the PrimaryVersionSeries.

  See Also:
    Constant Field Values
  (Published)

Constructor Detail

### Family

    protected Family(LibrarySession session,
                     java.lang.Long id,
                     java.lang.Long classId,
                     S_LibraryObjectData data)
              throws IfsException

  Construct a Family object - standard variant.

  Parameters:
    `session` - the session
    `id` - the id
    `classId` - the class id
    `data` - the Family data
  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

Method Detail

### getClassId

    public static java.lang.Long getClassId(LibrarySession session)
                                     throws IfsException

  Description copied from class: `Family`
  Get the ID of the ClassObject representing FAMILY.

  Parameters:
    `session` - the session context
  Returns:
    the ID of the FAMILY ClassObject
  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

### capabilities

    public PublicObjectCapabilities capabilities()

  Description copied from class: `Family`
  Returns the PublicObjectCapabilities delegate which tracks the capabilities of this object.

  Overrides:
    `capabilities` in class `PublicObject`
  Returns:
    an instance of TieFamilyCapabilities

### isValidEventType

    protected boolean isValidEventType(AuditEvent event)
                                throws IfsException

  Description copied from class: `Family`
  Checks to see if the event type in the process of being posted on the target LibraryObject is consistent with the target.

  Overrides:
    `isValidEventType` in class `LibraryObject`
  Parameters:
    `event` - the event being posted on this object
  Returns:
    true if the type is consistent; false otherwise
  Throws:
    `IfsException` - if the operation fails

### reportFamilyCreated

    protected void reportFamilyCreated()
                                throws IfsException

  Description copied from class: `Family`
  Audits a Family create operation.

  Throws:
    `IfsException` - if the operation fails

### reportFamilyFreed

    protected void reportFamilyFreed()
                              throws IfsException

  Description copied from class: `Family`
  Audits a Family free operation.

  Throws:
    `IfsException` - if the operation fails

### auditPublicObjectLocked

    protected void auditPublicObjectLocked(int lockType)
                                    throws IfsException

  Description copied from class: `PublicObject`
  Audits a PublicObject being locked.

  Overrides:
    `auditPublicObjectLocked` in class `PublicObject`
  Parameters:
    `lockType` - the lock type
  Throws:
    `IfsException` - if the operation fails

### auditPublicObjectUnlocked

    protected void auditPublicObjectUnlocked(int lockType)
                                      throws IfsException

  Description copied from class: `PublicObject`
  Audits a PublicObject being unlocked.

  Overrides:
    `auditPublicObjectUnlocked` in class `PublicObject`
  Parameters:
    `lockType` - the lock type
  Throws:
    `IfsException` - if the operation fails

### auditUpdated

    protected void auditUpdated(LibraryObjectDefinition lodef)
                         throws IfsException

  Description copied from class: `LibraryObject`
  Creates audit events for the update operation.

  Overrides:
    `auditUpdated` in class `LibraryObject`
  Parameters:
    `lodef` - The update definition
  Throws:
    `IfsException` - if the operation fails.

### postCreate

    protected void postCreate(LibraryObjectDefinition lodef)
                       throws IfsException

  Description copied from class: `PublicObject`
  Extensibility point to perform actions after the creation of a PublicObject.

  This assumes that a transaction context has already been established.

  Overrides:
    `postCreate` in class `PublicObject`
  Parameters:
    `lodef` - object definition that was used to create the object
  Throws:
    `IfsException` - if the operation fails

### preFree

    protected void preFree(LibraryObjectDefinition lodef)
                    throws IfsException

  Description copied from class: `PublicObject`
  Extensibility point to perform actions prior to the permanent deletion ("free") of a object.

  Override to free all existing categories, in such a way that the PO doesn't get updated for each category free.

  Overrides:
    `preFree` in class `PublicObject`
  Parameters:
    `lodef` - object definition used to hold options related to the free operation
  Throws:
    `IfsException` - if operation fails.

### getDefaultVersionDescription

    public VersionDescription getDefaultVersionDescription()
                                                    throws IfsException

  Description copied from class: `Family`
  Gets the default VersionDescription of this family. This may be null if no default VersionDescription is set.

  Returns:
    the default object, or null.
  Throws:
    `IfsException` - if operation fails.
  (Published)

### setDefaultVersionDescription

    public void setDefaultVersionDescription(VersionDescription version)
                                      throws IfsException

  Description copied from class: `Family`
  Sets the default VersionDescription of this Family. The default VersionDescription need not reside in the PrimaryVersionSeries (but it does need to be in this family).

  Parameters:
    `version` - the desired default VersionDescription.
  Throws:
    `IfsException` - if operation fails.
  (Published)

### getVersionSeries

    public VersionSeries getVersionSeries()
                                   throws IfsException

  Description copied from class: `Family`
  Gets the PrimaryVersionSeries in this Family. Override to PublicObject.getVersionSeries().

  Overrides:
    `getVersionSeries` in class `PublicObject`
  Returns:
    the PrimaryVersionSeries
  Throws:
    `IfsException` - if operation fails.
  (Unpublished)

### getPrimaryVersionSeries

    public VersionSeries getPrimaryVersionSeries()
                                          throws IfsException

  Description copied from class: `Family`
  Gets the PrimaryVersionSeries in this Family.

  Returns:
    the PrimaryVersionSeries.
  Throws:
    `IfsException` - if operation fails.
  (Published)

### setPrimaryVersionSeries

    public void setPrimaryVersionSeries(VersionSeries series)
                                 throws IfsException

  Description copied from class: `Family`
  Sets the PrimaryVersionSeries of this Family.

  Parameters:
    `series` - VersionSeries to be set as primary.
  Throws:
    `IfsException` - if operation fails.
  (Published)

### getSecondaryVersionSeries

    public VersionSeries getSecondaryVersionSeries()
                                            throws IfsException

  Description copied from class: `Family`
  Gets the SecondaryVersionSeries in this Family

  Returns:
    the SecondaryVersionSeries or null if no secondary VersionSeries is set.
  Throws:
    `IfsException` - if operation fails.
  (Published)

### setSecondaryVersionSeries

    public void setSecondaryVersionSeries(VersionSeries series)
                                   throws IfsException

  Description copied from class: `Family`
  Sets the SecondaryVersionSeries of this Family.

  Parameters:
    `series` - VersionSeries to be set as the secondary series.
  Throws:
    `IfsException` - if operation fails.
  (Published)

### getResolvedPublicObject

    public PublicObject getResolvedPublicObject()
                                         throws IfsException

  Description copied from class: `Family`
  Returns the PublicObject to which this object resolves. For the non version classes (for example, Document and Folder) this simply returns itself (`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.

  Overrides:
    `getResolvedPublicObject` in class `PublicObject`
  Returns:
    PublicObject to which this object resolves
  Throws:
    `IfsException` - if operation fails.
  See Also:
    `PublicObject.getResolvedPublicObject()`
  (Published)

### getWorkingCopy

    public PublicObject getWorkingCopy()
                                throws IfsException

  Description copied from class: `Family`
  Returns the working copy, or null if this Family is not checked out by the current user.

  Overrides:
    `getWorkingCopy` in class `PublicObject`
  Returns:
    the working copy
  Throws:
    `IfsException` - if the operation fails

### createVersionSeries

    public VersionDescription createVersionSeries(VersionDescriptionDefinition vddef)
                                           throws IfsException

  Description copied from class: `Family`
  Creates a new VersionSeries in this family. Note that since a VersionSeries must have at least one VersionDescription, this method takes a VersionDescriptionDefinition and creates that also. If the VersionDescriptionDefinition does not contain a VersionSeriesDefinition, then a default one will be used to create the new VersionSeries. Note also that the newly created VersionSeries can be made the primary via the `setPrimaryVersionSeries` method. If this is the second VersionSeries in the family, the SecondaryVersionSeries attribute will get updated to refer to the newly created VersionSeries.

  Parameters:
    `vddef` - Definition object describing the first VersionDescription in the new VersionSeries.
  Returns:
    the first version description of the new series
  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

### getAllVersionSeries

    public VersionSeries[] getAllVersionSeries()
                                        throws IfsException

  Description copied from class: `Family`
  Gets an array of all VersionSeries of the current Family.

  Returns:
    all VersionSeriess of the current Family.
  Throws:
    `IfsException` - if operation fails.
  (Unpublished)

### getAllVersionSeries

    public VersionSeries getAllVersionSeries(int index)
                                      throws IfsException

  Description copied from class: `Family`
  Gets the specified VersionSeries of the current PublicObject.

  Parameters:
    `index` - Index to the required versionseries
  Returns:
    the specified version of the current PublicObject.
  Throws:
    `IfsException` - if operation fails.
  (Unpublished)

### constructFamilyVector

    protected static java.util.Vector constructFamilyVector(LibrarySession sess,
                                                            java.util.Vector vector)
                                                     throws IfsException

  Description copied from class: `Family`
  Returns Family Vector from a Vector of S_LibraryObjectData objects.

  Parameters:
    `sess` - current LibrarySession
    `vector` - vector of Family objects
  Returns:
    vector of family objects
  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

### constructFamily

    protected static Family constructFamily(LibrarySession sess,
                                            S_LibraryObjectData data)
                                     throws IfsException

  Description copied from class: `Family`
  Constructs a Family object from the S_LibraryObjectData object.

  Parameters:
    `sess` - current LibrarySession
    `data` - data component
  Returns:
    family object corresponding to the data object
  Throws:
    `IfsException` - if the operation fails
  (Unpublished)

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD