|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Document
Represents a single version of a document stored in an object store. In addition to being versionable, a
Document
object can be subclassed and can carry content, which is stored in one or more content elements.
Each content element represents content data, which can either be local to an object store (represented by a
ContentTransfer
object) or external to an object store and therefore outside the control of the Content Engine server
(represented by a ContentReference
object). In addition, a Document
object can be associated with a document
lifecycle policy. A document lifecycle policy defines a set of valid lifecycle states for a document, controls the transition of those
states, and specifies the actions to be taken when a document's lifecycle state changes.
Metadata
Auditable: true
Method Summary | |
---|---|
java.io.InputStream |
accessContentStream(int element)
Obtains read access, via an input stream, to the content data of a ContentTransfer content element associated with
this document or annotation. |
void |
applySecurityTemplate(Id applyStateId)
Applies a security policy template to the given object. |
void |
changeState(LifecycleChangeFlags flags)
Changes the current lifecycle state of this document. |
void |
checkin(AutoClassify autoClassify,
CheckinType checkinType)
Checks in this document reservation object by saving it as a new document version. |
DocumentSet |
get_ChildDocuments()
Returns the value of the ChildDocuments property. |
ComponentRelationshipSet |
get_ChildRelationships()
Returns the value of the ChildRelationships property. |
DocClassificationStatus |
get_ClassificationStatus()
Returns the value of the ClassificationStatus property. |
CompoundDocumentState |
get_CompoundDocumentState()
Returns the value of the CompoundDocumentState property. |
ContentElementList |
get_ContentElements()
Returns the value of the ContentElements property. |
StringList |
get_ContentElementsPresent()
Returns the value of the ContentElementsPresent property. |
java.util.Date |
get_ContentRetentionDate()
Returns the value of the ContentRetentionDate property. |
java.lang.Double |
get_ContentSize()
Returns the value of the ContentSize property. |
java.lang.String |
get_CurrentState()
Returns the value of the CurrentState property. |
Versionable |
get_CurrentVersion()
Returns the value of the CurrentVersion property. |
java.util.Date |
get_DateContentLastAccessed()
Returns the value of the DateContentLastAccessed property. |
DocumentSet |
get_DependentDocuments()
Returns the value of the DependentDocuments property. |
DocumentSet |
get_DestinationDocuments()
Returns the value of the DestinationDocuments property. |
DocumentLifecyclePolicy |
get_DocumentLifecyclePolicy()
Returns the value of the DocumentLifecyclePolicy property. |
Id |
get_IndexationId()
Returns the value of the IndexationId property. |
java.lang.Boolean |
get_IsInExceptionState()
Returns the value of the IsInExceptionState property. |
java.lang.String |
get_MimeType()
Returns the value of the MimeType property. |
Document |
get_OwnerDocument()
Returns the value of the OwnerDocument property. |
DocumentSet |
get_ParentDocuments()
Returns the value of the ParentDocuments property. |
ComponentRelationshipSet |
get_ParentRelationships()
Returns the value of the ParentRelationships property. |
byte[] |
get_PublicationInfo()
Returns the value of the PublicationInfo property. |
Folder |
get_PublishingSubsidiaryFolder()
Returns the value of the PublishingSubsidiaryFolder property. |
Versionable |
get_ReleasedVersion()
Returns the value of the ReleasedVersion property. |
ReferentialContainmentRelationship |
get_SecurityParent()
Deprecated. |
Document |
get_SourceDocument()
Returns the value of the SourceDocument property. |
StorageArea |
get_StorageArea()
Returns the value of the StorageArea property. |
java.lang.String |
get_StorageLocation()
Returns the value of the StorageLocation property. |
StoragePolicy |
get_StoragePolicy()
Returns the value of the StoragePolicy property. |
InstanceWorkflowSubscriptionSet |
get_WorkflowSubscriptions()
Returns the value of the WorkflowSubscriptions property. |
PublicationStatus |
getPublicationStatus()
Returns a PublicationStatus enumeration value, which identifies the document's publication
status (dependent, independent, or not a publication). |
java.lang.Boolean |
isLocked()
Queries this object's lock state. |
void |
lock(int timeout,
java.lang.String owner)
Sets a new lock or updates an existing lock on the object. |
void |
moveContent(StorageArea storageArea)
Moves the content data of an object to a new storage area. |
PublishRequest |
publish(PublishTemplate publishTemplate,
java.lang.String publishOptions)
Publishes this Document object according to the specifications included in the specified
publish template as modified by the contents of the publishOptions parameter. |
PublishRequest |
republish(Document publication,
java.lang.String publishOptions)
Republishes the specified published document. |
void |
set_CompoundDocumentState(CompoundDocumentState value)
Sets the value of the CompoundDocumentState property. |
void |
set_ContentElements(ContentElementList value)
Sets the value of the ContentElements property. |
void |
set_DocumentLifecyclePolicy(DocumentLifecyclePolicy value)
Sets the value of the DocumentLifecyclePolicy property. |
void |
set_MimeType(java.lang.String value)
Sets the value of the MimeType property. |
void |
set_OwnerDocument(Document value)
Sets the value of the OwnerDocument property. |
void |
set_PublicationInfo(byte[] value)
Sets the value of the PublicationInfo property. |
void |
set_PublishingSubsidiaryFolder(Folder value)
Sets the value of the PublishingSubsidiaryFolder property. |
void |
set_SecurityParent(ReferentialContainmentRelationship value)
Deprecated. |
void |
set_SourceDocument(Document value)
Sets the value of the SourceDocument property. |
void |
set_StorageArea(StorageArea value)
Sets the value of the StorageArea property. |
void |
set_StoragePolicy(StoragePolicy value)
Sets the value of the StoragePolicy property. |
void |
takeFederatedOwnership()
For a document that has been federated by Content Federation Services (CFS), grants exclusive control of this document to the FileNet P8 Content Engine by making the corresponding external document read-only. |
void |
unlock()
Explicitly removes the lock from this object. |
void |
updateLock(long timeout)
Adjusts the timeout period of the lock on this object. |
Methods inherited from interface com.filenet.api.core.RepositoryObject |
---|
getObjectStore |
Methods inherited from interface com.filenet.api.core.Versionable |
---|
cancelCheckout, changeClass, checkout, createAnnotation, demoteVersion, freeze, get_DateCheckedIn, get_FoldersFiledIn, get_IsCurrentVersion, get_IsFrozenVersion, get_IsReserved, get_IsVersioningEnabled, get_MajorVersionNumber, get_MinorVersionNumber, get_Reservation, get_ReservationType, get_SecurityFolder, get_Versions, get_VersionSeries, get_VersionStatus, promoteVersion, set_DateCheckedIn, set_SecurityFolder |
Methods inherited from interface com.filenet.api.core.Containable |
---|
get_ActiveMarkings, get_Annotations, get_AuditedEvents, get_Containers, get_Creator, get_DateCreated, get_DateLastModified, get_Id, get_LastModifier, get_LockOwner, get_LockTimeout, get_LockToken, get_Name, get_Owner, get_Permissions, get_SecurityPolicy, set_Creator, set_DateCreated, set_DateLastModified, set_LastModifier, set_Owner, set_Permissions, set_SecurityPolicy |
Methods inherited from interface com.filenet.api.replication.Replicable |
---|
get_ExternalReplicaIdentities, get_ReplicationGroup, set_ExternalReplicaIdentities, set_ReplicationGroup |
Methods inherited from interface com.filenet.api.core.Subscribable |
---|
raiseEvent |
Methods inherited from interface com.filenet.api.core.IndependentlyPersistableObject |
---|
addPendingAction, clearPendingActions, delete, getAccessAllowed, getPendingActions, getUpdateSequenceNumber, isCurrent, save, save, setUpdateSequenceNumber |
Methods inherited from interface com.filenet.api.core.IndependentObject |
---|
fetchProperties, fetchProperties, fetchProperty, fetchProperty, getObjectReference, refresh, refresh, refresh |
Methods inherited from interface com.filenet.api.core.EngineObject |
---|
get_ClassDescription, getClassName, getConnection, getProperties, getSuperClasses |
Method Detail |
---|
StoragePolicy get_StoragePolicy()
void set_StoragePolicy(StoragePolicy value)
java.lang.String get_StorageLocation()
StringList get_ContentElementsPresent()
ContentElementList get_ContentElements()
void set_ContentElements(ContentElementList value)
java.lang.Double get_ContentSize()
java.lang.String get_MimeType()
void set_MimeType(java.lang.String value)
java.util.Date get_DateContentLastAccessed()
java.util.Date get_ContentRetentionDate()
DocumentLifecyclePolicy get_DocumentLifecyclePolicy()
void set_DocumentLifecyclePolicy(DocumentLifecyclePolicy value)
java.lang.String get_CurrentState()
java.lang.Boolean get_IsInExceptionState()
InstanceWorkflowSubscriptionSet get_WorkflowSubscriptions()
DocClassificationStatus get_ClassificationStatus()
StorageArea get_StorageArea()
void set_StorageArea(StorageArea value)
Id get_IndexationId()
CompoundDocumentState get_CompoundDocumentState()
void set_CompoundDocumentState(CompoundDocumentState value)
DocumentSet get_ChildDocuments()
ComponentRelationshipSet get_ChildRelationships()
DocumentSet get_ParentDocuments()
ComponentRelationshipSet get_ParentRelationships()
Document get_SourceDocument()
void set_SourceDocument(Document value)
DocumentSet get_DestinationDocuments()
Document get_OwnerDocument()
void set_OwnerDocument(Document value)
DocumentSet get_DependentDocuments()
byte[] get_PublicationInfo()
void set_PublicationInfo(byte[] value)
Folder get_PublishingSubsidiaryFolder()
void set_PublishingSubsidiaryFolder(Folder value)
java.lang.Boolean isLocked()
lock
method
and handle any exception thrown if the method fails.
Note that this method returns an approximation of the locked state
at the time of the call. Once this method executes and returns the value, the object's lock state could be
immediately changed by another application's call to the lock
method or the lock could expire.
Before calling this method, make sure that the object's LockToken, LockTimeout, and DateLastModified properties have relatively fresh values. If any of those properties is missing, they are silently fetched from the server and added to the object's property cache.
The isLocked
method returns false
if the LockTimeout property is not set
or if the lock has expired. The lock is determined to be expired if the DateLastModified property
value plus the number of seconds specified by the LockTimeout property is less than the current system
time. (All millisecond components are dropped from the calculation.) If the DateLastModified
property is not set, this method returns false
because the check against the lock timeout value
or the lock token will yield null
, meaning that the object is not locked. As soon as some action locks the object, the
DateLastModified property will be updated and can then used for the expiration
calculation.
Note: To successfully run isLocked
and other cooperative locking methods, system clocks on the
IBM FileNet P8 platform engine machines must be synchronized. The calculation performed by the isLocked()
method is done on the client system. If the client and server machine clocks are not synchronized, the result of this
calculation might be incorrect.
true
if this object is locked; otherwise, returns false
.void lock(int timeout, java.lang.String owner)
To successfully execute this method, the current user must have permission to modify this object's
properties. For example, locking a Document
object requires
AccessLevel.WRITE_DOCUMENT
.
If the call succeeds:
owner
parameter. (New lock only.)timeout
is applied to the object's LockTimeout property.To update an existing lock, the objects needs to be in the locked state and the current user
needs to match the user of the lock. Note that the user is the logged in user, not the owner
string.
If the call succeeds, then only the LockTimeout
property is updated with the timeout value. The owner
parameter in this case is ignored. (See the updateLock()
method instead.)
timeout
- An integer that represents the number of seconds after which the lock will expire.
The range of values is 0 to 2147483647 (Integer.MAX_VALUE
) seconds.owner
- A String
representing the user name to be assigned as the owner of the
lock on this object. Defaults to the short principal name of the requesting user. The value is strictly advisory and
is not validated against user or group names known to the Content Engine. The value can be used by applications such as WebDAV to identify the user who has locked the object.
E_OBJECT_LOCKED
- If the object is already locked and the current user does not match the user of the lock.
E_OBJECT_NOT_LOCKED
- If the user tries to update an existing lock but the object is not locked (absence of a LockToken).PublicationStatus getPublicationStatus()
PublicationStatus
enumeration value, which identifies the document's publication
status (dependent, independent, or not a publication).
PublicationStatus
object.void applySecurityTemplate(Id applyStateId)
applyStateId
parameter
must match the value of the ApplyStateID property of one of the templates in the security policy
for the object. For a versioning security template, the apply state ID can be one of the following:
- VersionStatusId.IN_PROCESS
- VersionStatusId.RELEASED
- VersionStatusId.RESERVATION
- VersionStatusId.SUPERSEDED
For an application security template, the apply state ID is defined by your application.
applyStateId
- An Id
object representing the unique identifier of the security template
to apply.PublishRequest republish(Document publication, java.lang.String publishOptions)
Document
object as its source document. This method
returns the PublishRequest
object that is queued for this request. All publish requests are asynchronous,
including copy operations, which do not transform the document. A publish request is always enqueued, and
a copy of the PublishRequest
object is always returned to the caller.
The publishOptions
parameter is a string containing XML that specifies the publish options for
the republished document. See Publish Options XML
for more information.
publication
- The Document
object to be republished.publishOptions
- A string containing XML that specifies the publish options for the republished document. Can be null
, in which case the values for the publication name, output folder, and event action are as specified in the associated publish template.
PublishRequest
object that is queued for this request.java.io.InputStream accessContentStream(int element)
ContentTransfer
content element associated with
this document or annotation. If content data is not present in the object’s property cache, it will be fetched from the server.
The Content Engine will not automatically close the stream after access has finished; unless you want the stream to
remain open, your application should close the stream after it has finished reading the content data.
element
- An int
specifying the index of the content element to which the content data belongs.
InputStream
object for reading content data.
API_INDEX_OUT_OF_BOUNDS
- if the element
parameter specifies an invalid index.
API_NO_CONTENT_ELEMENTS
- if no content elements exist on this document or annotation.
API_NOT_A_CONTENT_TRANSFER
- if the content element is not a ContentTransfer
object.void changeState(LifecycleChangeFlags flags)
DocumentState
objects belonging to this document's associated DocumentLifecyclePolicy
object.
You can change a document's current lifecycle state to another predefined state, place a document into an exception state,
or remove a document from an exception state by specifying an instance of the LifecycleChangeFlags
constant
class in the flags
parameter, as follows:
PROMOTE
: Promotes the document's current lifecycle state to the next state in its document lifecycle policy and sets the document's
CurrentState property to the name of the next state. Throws an error if the document is in the exception state or in the last state of its lifecycle.DEMOTE
: Demotes the document's current lifecycle state to the previous state in its document lifecycle policy and sets the document's
CurrentState property to the name of the previous state, unless the CanBeDemoted property of the document’s current state (DocumentState
object) is set to false
. Throws an error if the document is in the exception state, in the first state of its lifecycle, or does not allow demotion.SET_EXCEPTION
: Places the document into the exception state and sets its IsInExceptionState property to true
.
Throws an error if the document's IsInExceptionState property is already set to true
.CLEAR_EXCEPTION
: Removes the document from the exception state and sets its IsInExceptionState property to false
.
Throws an error if the document's IsInExceptionState property is already set to false
.RESET
: Resets the lifecycle state to the initial state in its document lifecycle policy and sets the document's
CurrentState property to the name of the initial state. Throws an error if the document is in the exception state.
flags
- A LifecycleChangeFlags
constant that specifies the new lifecycle state for this document.
E_BAD_PARAMETER
- if you attempt to promote, demote, reset, or place into the exception state a document that is in the exception state or attempt to clear the
exception of a document that is not in the exception state.
E_NOT_SUPPORTED
- if you attempt to promote a document that is in the last state of its lifecycle or demote a document that is in the first state of its lifecycle
or does not allow demotion.DocumentState
void takeFederatedOwnership()
E_NOT_SUPPORTED
- if this document is a reservation object (VersionStatus property is set
to RESERVATION
).PublishRequest publish(PublishTemplate publishTemplate, java.lang.String publishOptions)
Document
object according to the specifications included in the specified
publish template as modified by the contents of the publishOptions
parameter. This method
returns the PublishRequest
object that is queued for this request. All publish requests are asynchronous,
including copy operations, which do not transform the document. A publish request is always enqueued, and
a copy of the PublishRequest
object is always returned to the caller.
The publish template you specify, as well as any objects specified in the publish template itself,
must reside on the same object store as this Document
object. Note that publishing to a
document class containing a required binary- or object-valued property is not supported as there is no
way to set these property values during publishing.
The publishOptions
parameter is a string containing XML that specifies the publish options
for the published document. See Publish Options XML
for more information.
After a successful call to publish
, call the save
method of the returned
PublishRequest
object to submit the request to the publish queue.
publishTemplate
- The PublishTemplate
object to use for this publish operation.publishOptions
- A string containing XML that specifies the publish options for the published document. Can be null
, in which case the values for the publication name, output folder, and event action are as specified in the associated publish template.
PublishRequest
object that is queued for this request.void moveContent(StorageArea storageArea)
storageArea
- A StorageArea
object specifying the new storage area for this object's content data.void checkin(AutoClassify autoClassify, CheckinType checkinType)
MAJOR_VERSION
to check it in a major version or MINOR_VERSION
to check it in a
minor version). A major version is either the current released document version (if it is the latest major version) or a
former released version that was superseded. A minor version is either the in-process document version (if it is the latest minor version)
or a former in-process version that was superseded.
In addition, if the reservation object is an exclusive reservation (its ReservationType property is set
to EXCLUSIVE
), you must be the reservation owner (the reservation owner's name is the value of the reservation object's
Creator property) or have the WRITE_OWNER
access right. An error will occur if this method is called by a document that is
not a reservation object.
Before you can check in a document that has content, you must set the content for the document by adding to its ContentElements
collection one or more ContentTransfer
objects if the content is stored in a Content Engine object store, or one or more ContentReference
objects if the content is stored externally. If you do not want the Content Engine to assign a MIME type to the checked-in document, you must
explicitly set the value of the document's MimeType property before calling the checkin
method. After a successful check-in,
the reservation object becomes the new current version of the document (its IsCurrentVersion property is set to true
).
During a minor version check-in, the new minor document version is marked as in-process (its VersionStatus property is set to IN_PROCESS
) and the
previous in-process minor document version (if it exists) is marked as superseded (its VersionStatus property is set to SUPERSEDED
).
During a major version check-in, the new major document version is marked as released (its VersionStatus property is set to RELEASED
) and
the previous released major document version and in-process minor document version (if they exist) are marked as superseded.
The checkinType
parameter specifies whether to check in a document as a minor or a major version; set it to MINOR_VERSION
to check in a minor version, or MAJOR_VERSION
to check in a major version. The autoClassify
parameter specifies whether
the document should have automatic document classification enabled. (This feature is not supported for publish templates.) If set to
AUTO_CLASSIFY
, and if a classifier exists for the document's content type, the
document will automatically be assigned the proper document class and its properties will be populated based on the
document content (and, in the case of XML document classification, mapping rules from user-defined scripts). The Content Engine's
classification service uses a document's MIME type to determine if there is a classifier capable of parsing the document. If you set the
autoClassify
parameter to AUTO_CLASSIFY
, the check-in operation changes the value of the document's ClassificationStatus
property to CLASSIFICATION_PENDING
; if you set it to DO_NOT_AUTO_CLASSIFY
, the property is set to
NOT_CLASSIFIED
.
autoClassify
- An AutoClassify
constant specifying whether to auto-classify a document during
check-in.checkinType
- A CheckinType
constant specifying whether to check in a document as a new minor
version or as a new major version.
E_NOT_SUPPORTED
- if this method is called by a document that is not a reservation object.void updateLock(long timeout)
This method updates the object's DateLastModified
property to the current time and its LockTimeout
property to the timeout value.
The net effect of this may extend or shorten the original lock's expiration time. Only the user who locked the object can successfully call this method; for any other user,
an exception is thrown.
There is no limit to the number of times you can call this method.
timeout
- The changed timeout value, in seconds, for this object's lock. The range of values is
0 to 2147483647 (Integer.MAX_VALUE
) seconds.void unlock()
AccessRight.WRITE_ACL
permission on the object. An exception is thrown
if the above conditions are not met.
Upon successful execution of this method, the values for the object's LockOwner, LockToken, and LockTimeout properties
are removed (set to null
). If you do not call unlock
to explicitly remove the lock, the lock is implicitly removed
when the lock's timeout value expires.
E_OBJECT_NOT_LOCKED
- If the object is not locked.void set_SecurityParent(ReferentialContainmentRelationship value)
ReferentialContainmentRelationship get_SecurityParent()
SecurityParent
property has no value), this method
returns null
. For more information, see
SecurityParent Property.
Versionable get_ReleasedVersion()
Versionable get_CurrentVersion()
get_CurrentVersion
in interface Versionable
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |