Package org.exoplatform.ecms.xcmis.sp
Class DocumentVersion
- java.lang.Object
-
- org.exoplatform.ecms.xcmis.sp.DocumentVersion
-
- All Implemented Interfaces:
org.xcmis.spi.DocumentData,org.xcmis.spi.ObjectData
public class DocumentVersion extends Object
- Version:
- $Id$
- Author:
- Andrey Parfonov
-
-
Field Summary
Fields Modifier and Type Field Description protected static Set<String>CHECKOUT_SKIPprotected org.exoplatform.ecms.xcmis.sp.JcrNodeEntryentry
-
Constructor Summary
Constructors Constructor Description DocumentVersion(org.exoplatform.ecms.xcmis.sp.JcrNodeEntry jcrEntry)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(org.xcmis.spi.ObjectDataVisitor visitor)voidapplyPolicy(org.xcmis.spi.PolicyData policy)voidcancelCheckout()org.xcmis.spi.DocumentDatacheckin(boolean major, String checkinComment, Map<String,org.xcmis.spi.model.Property<?>> properties, org.xcmis.spi.ContentStream content, List<org.xcmis.spi.model.AccessControlEntry> acl, Collection<org.xcmis.spi.PolicyData> policies)org.xcmis.spi.DocumentDatacheckout()voiddelete()Delete current object.protected org.xcmis.spi.model.Property<?>doGetProperty(org.xcmis.spi.model.PropertyDefinition<?> definition)protected voiddoSetProperty(org.xcmis.spi.model.Property<?> property)Update properties, skip on-create and read-only propertiesbooleanequals(Object obj)List<org.xcmis.spi.model.AccessControlEntry>getACL(boolean onlyBasicPermissions)org.xcmis.spi.model.BaseTypegetBaseType()StringgetChangeToken()org.xcmis.spi.ContentStreamgetContentStream()org.xcmis.spi.ContentStreamgetContentStream(String streamId)StringgetContentStreamFileName()protected StringgetContentStreamId()protected longgetContentStreamLength()StringgetContentStreamMimeType()StringgetCreatedBy()CalendargetCreationDate()CalendargetLastModificationDate()StringgetLastModifiedBy()StringgetName()StringgetObjectId()org.xcmis.spi.FolderDatagetParent()Collection<org.xcmis.spi.FolderData>getParents()Collection<org.xcmis.spi.PolicyData>getPolicies()Map<String,org.xcmis.spi.model.Property<?>>getProperties()Map<String,org.xcmis.spi.model.Property<?>>getProperties(org.xcmis.spi.PropertyFilter filter)org.xcmis.spi.model.Property<?>getProperty(String id)org.xcmis.spi.ItemsIterator<org.xcmis.spi.RelationshipData>getRelationships(org.xcmis.spi.model.RelationshipDirection direction, org.xcmis.spi.model.TypeDefinition type, boolean includeSubRelationshipTypes)org.xcmis.spi.model.TypeDefinitiongetTypeDefinition()StringgetTypeId()StringgetVersionLabel()StringgetVersionSeriesCheckedOutBy()StringgetVersionSeriesCheckedOutId()StringgetVersionSeriesId()booleanhasContent()inthashCode()booleanisLatestMajorVersion()booleanisLatestVersion()booleanisMajorVersion()booleanisPWC()booleanisVersionSeriesCheckedOut()voidremovePolicy(org.xcmis.spi.PolicyData policy)protected voidsave()voidsetACL(List<org.xcmis.spi.model.AccessControlEntry> aces)voidsetContentStream(org.xcmis.spi.ContentStream contentStream)voidsetProperties(Map<String,org.xcmis.spi.model.Property<?>> properties)voidsetProperty(org.xcmis.spi.model.Property<?> property)
-
-
-
Method Detail
-
applyPolicy
public void applyPolicy(org.xcmis.spi.PolicyData policy)
- Specified by:
applyPolicyin interfaceorg.xcmis.spi.ObjectData
-
cancelCheckout
public void cancelCheckout() throws org.xcmis.spi.VersioningException, org.xcmis.spi.StorageException- Specified by:
cancelCheckoutin interfaceorg.xcmis.spi.DocumentData- Throws:
org.xcmis.spi.VersioningExceptionorg.xcmis.spi.StorageException
-
checkin
public org.xcmis.spi.DocumentData checkin(boolean major, String checkinComment, Map<String,org.xcmis.spi.model.Property<?>> properties, org.xcmis.spi.ContentStream content, List<org.xcmis.spi.model.AccessControlEntry> acl, Collection<org.xcmis.spi.PolicyData> policies) throws org.xcmis.spi.StorageException- Specified by:
checkinin interfaceorg.xcmis.spi.DocumentData- Throws:
org.xcmis.spi.StorageException
-
checkout
public org.xcmis.spi.DocumentData checkout() throws org.xcmis.spi.VersioningException, org.xcmis.spi.StorageException- Specified by:
checkoutin interfaceorg.xcmis.spi.DocumentData- Throws:
org.xcmis.spi.VersioningExceptionorg.xcmis.spi.StorageException
-
getACL
public List<org.xcmis.spi.model.AccessControlEntry> getACL(boolean onlyBasicPermissions)
- Specified by:
getACLin interfaceorg.xcmis.spi.ObjectData
-
getName
public String getName()
- Specified by:
getNamein interfaceorg.xcmis.spi.ObjectData
-
getParent
public org.xcmis.spi.FolderData getParent() throws org.xcmis.spi.ConstraintException- Specified by:
getParentin interfaceorg.xcmis.spi.ObjectData- Throws:
org.xcmis.spi.ConstraintException
-
getParents
public Collection<org.xcmis.spi.FolderData> getParents()
- Specified by:
getParentsin interfaceorg.xcmis.spi.ObjectData
-
getPolicies
public Collection<org.xcmis.spi.PolicyData> getPolicies()
- Specified by:
getPoliciesin interfaceorg.xcmis.spi.ObjectData
-
getRelationships
public org.xcmis.spi.ItemsIterator<org.xcmis.spi.RelationshipData> getRelationships(org.xcmis.spi.model.RelationshipDirection direction, org.xcmis.spi.model.TypeDefinition type, boolean includeSubRelationshipTypes)- Specified by:
getRelationshipsin interfaceorg.xcmis.spi.ObjectData
-
getVersionLabel
public String getVersionLabel()
- Specified by:
getVersionLabelin interfaceorg.xcmis.spi.DocumentData
-
getVersionSeriesCheckedOutBy
public String getVersionSeriesCheckedOutBy()
- Specified by:
getVersionSeriesCheckedOutByin interfaceorg.xcmis.spi.DocumentData
-
getVersionSeriesCheckedOutId
public String getVersionSeriesCheckedOutId()
- Specified by:
getVersionSeriesCheckedOutIdin interfaceorg.xcmis.spi.DocumentData
-
isLatestVersion
public boolean isLatestVersion()
- Specified by:
isLatestVersionin interfaceorg.xcmis.spi.DocumentData
-
removePolicy
public void removePolicy(org.xcmis.spi.PolicyData policy)
- Specified by:
removePolicyin interfaceorg.xcmis.spi.ObjectData
-
setACL
public void setACL(List<org.xcmis.spi.model.AccessControlEntry> aces)
- Specified by:
setACLin interfaceorg.xcmis.spi.ObjectData
-
setContentStream
public void setContentStream(org.xcmis.spi.ContentStream contentStream) throws IOException, org.xcmis.spi.VersioningException, org.xcmis.spi.StorageException- Specified by:
setContentStreamin interfaceorg.xcmis.spi.DocumentData- Throws:
IOExceptionorg.xcmis.spi.VersioningExceptionorg.xcmis.spi.StorageException
-
setProperties
public void setProperties(Map<String,org.xcmis.spi.model.Property<?>> properties) throws org.xcmis.spi.NameConstraintViolationException, org.xcmis.spi.VersioningException
- Specified by:
setPropertiesin interfaceorg.xcmis.spi.ObjectData- Throws:
org.xcmis.spi.NameConstraintViolationExceptionorg.xcmis.spi.VersioningException
-
setProperty
public void setProperty(org.xcmis.spi.model.Property<?> property) throws org.xcmis.spi.VersioningException- Specified by:
setPropertyin interfaceorg.xcmis.spi.ObjectData- Throws:
org.xcmis.spi.VersioningException
-
delete
public void delete() throws org.xcmis.spi.StorageExceptionDelete current object.- Throws:
org.xcmis.spi.StorageException- if operation can't be persisted in back-end
-
save
protected void save()
-
getContentStream
public org.xcmis.spi.ContentStream getContentStream() throws IOException- Specified by:
getContentStreamin interfaceorg.xcmis.spi.DocumentData- Throws:
IOException
-
getContentStream
public org.xcmis.spi.ContentStream getContentStream(String streamId) throws IOException
- Specified by:
getContentStreamin interfaceorg.xcmis.spi.ObjectData- Throws:
IOException
-
getContentStreamMimeType
public String getContentStreamMimeType()
- Specified by:
getContentStreamMimeTypein interfaceorg.xcmis.spi.DocumentData
-
getCreationDate
public Calendar getCreationDate()
- Specified by:
getCreationDatein interfaceorg.xcmis.spi.ObjectData
-
getLastModificationDate
public Calendar getLastModificationDate()
- Specified by:
getLastModificationDatein interfaceorg.xcmis.spi.ObjectData
-
getVersionSeriesId
public String getVersionSeriesId()
- Specified by:
getVersionSeriesIdin interfaceorg.xcmis.spi.DocumentData
-
hasContent
public boolean hasContent()
- Specified by:
hasContentin interfaceorg.xcmis.spi.DocumentData
-
isLatestMajorVersion
public boolean isLatestMajorVersion()
- Specified by:
isLatestMajorVersionin interfaceorg.xcmis.spi.DocumentData
-
isMajorVersion
public boolean isMajorVersion()
- Specified by:
isMajorVersionin interfaceorg.xcmis.spi.DocumentData
-
isPWC
public boolean isPWC()
- Specified by:
isPWCin interfaceorg.xcmis.spi.DocumentData
-
isVersionSeriesCheckedOut
public boolean isVersionSeriesCheckedOut()
- Specified by:
isVersionSeriesCheckedOutin interfaceorg.xcmis.spi.DocumentData
-
getContentStreamLength
protected long getContentStreamLength()
- Returns:
- length of content in bytes
-
getContentStreamId
protected String getContentStreamId()
- Returns:
- id of content stream if document has content and
nullotherwise
-
getContentStreamFileName
public String getContentStreamFileName()
- Returns:
- content stream file name if document has content and
nullotherwise
-
getObjectId
public String getObjectId()
- Specified by:
getObjectIdin interfaceorg.xcmis.spi.ObjectData
-
accept
public void accept(org.xcmis.spi.ObjectDataVisitor visitor)
- Specified by:
acceptin interfaceorg.xcmis.spi.ObjectData
-
getBaseType
public org.xcmis.spi.model.BaseType getBaseType()
- Specified by:
getBaseTypein interfaceorg.xcmis.spi.ObjectData
-
getChangeToken
public String getChangeToken()
- Specified by:
getChangeTokenin interfaceorg.xcmis.spi.ObjectData
-
getCreatedBy
public String getCreatedBy()
- Specified by:
getCreatedByin interfaceorg.xcmis.spi.ObjectData
-
getLastModifiedBy
public String getLastModifiedBy()
- Specified by:
getLastModifiedByin interfaceorg.xcmis.spi.ObjectData
-
getProperties
public Map<String,org.xcmis.spi.model.Property<?>> getProperties()
- Specified by:
getPropertiesin interfaceorg.xcmis.spi.ObjectData
-
getProperties
public Map<String,org.xcmis.spi.model.Property<?>> getProperties(org.xcmis.spi.PropertyFilter filter)
- Specified by:
getPropertiesin interfaceorg.xcmis.spi.ObjectData
-
getProperty
public org.xcmis.spi.model.Property<?> getProperty(String id)
- Specified by:
getPropertyin interfaceorg.xcmis.spi.ObjectData
-
getTypeDefinition
public org.xcmis.spi.model.TypeDefinition getTypeDefinition()
- Specified by:
getTypeDefinitionin interfaceorg.xcmis.spi.ObjectData
-
getTypeId
public String getTypeId()
- Specified by:
getTypeIdin interfaceorg.xcmis.spi.ObjectData
-
doGetProperty
protected org.xcmis.spi.model.Property<?> doGetProperty(org.xcmis.spi.model.PropertyDefinition<?> definition)
-
doSetProperty
protected void doSetProperty(org.xcmis.spi.model.Property<?> property) throws org.xcmis.spi.NameConstraintViolationExceptionUpdate properties, skip on-create and read-only properties- Parameters:
property- property to be updated- Throws:
org.xcmis.spi.NameConstraintViolationException
-
-