Package org.alfresco.filesys.repo
Class OpenOfficeContentNetworkFile
java.lang.Object
org.alfresco.jlan.server.filesys.NetworkFile
org.alfresco.filesys.alfresco.AlfrescoNetworkFile
org.alfresco.filesys.repo.NodeRefNetworkFile
org.alfresco.filesys.repo.ContentNetworkFile
org.alfresco.filesys.repo.OpenOfficeContentNetworkFile
- All Implemented Interfaces:
NetworkFileLegacyReferenceCount,org.alfresco.jlan.server.filesys.cache.NetworkFileStateInterface
OpenOffice Content Network File Class
Provides special handling for OpenOffice file saves that open the file, truncate, close, then open the file again to write the data, as this causes multiple versions to be generated when the file is versionable.
- Author:
- gkspencer
-
Field Summary
Fields inherited from class org.alfresco.filesys.repo.NodeRefNetworkFile
m_nodeRef, m_pidFields inherited from class org.alfresco.jlan.server.filesys.NetworkFile
ATTRIBUTESONLY, Created, DelayedClose, DelayedWriteError, DeleteOnClose, IOPending, m_accessDate, m_allowedAccess, m_attrib, m_closed, m_createDate, m_dirId, m_fid, m_fileSize, m_fullName, m_grantedAccess, m_modifyDate, m_name, m_streamId, m_streamName, m_uniqueId, m_writeCount, READONLY, READWRITE, WRITEONLY -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedOpenOfficeContentNetworkFile(NodeService nodeService, ContentService contentService, MimetypeService mimetypeService, NodeRef nodeRef, String name) Class constructor -
Method Summary
Modifier and TypeMethodDescriptionvoidClose the filefinal intReturn the delayed close countfinal voidIncrement the delayed close countintreadFile(byte[] buffer, int length, int position, long fileOffset) Read from the file.final booleanCheck if the last file operation was a truncate to zero lengthvoidtruncateFile(long size) Truncate or extend the file to the specified lengthvoidwriteFile(byte[] buffer, int length, int position, long fileOffset) Write a block of data to the file.Methods inherited from class org.alfresco.filesys.repo.ContentNetworkFile
createFile, flushFile, hasContent, isModified, openContent, openFile, seekFile, toStringMethods inherited from class org.alfresco.filesys.repo.NodeRefNetworkFile
decrementLagacyOpenCount, decrementOpenCount, getLegacyOpenCount, getNodeRef, getOpenCount, getProcessId, incrementLegacyOpenCount, incrementOpenCount, setNodeRef, setProcessIdMethods inherited from class org.alfresco.filesys.alfresco.AlfrescoNetworkFile
allowsOpenCloseViaNetworkFile, getFileState, setFileStateMethods inherited from class org.alfresco.jlan.server.filesys.NetworkFile
addLock, close, getAccessDate, getAccessToken, getAllowedAccess, getCreationDate, getDirectoryId, getFileAttributes, getFileId, getFileSize, getFileSizeInt, getFullName, getFullNameStream, getGrantedAccess, getGrantedAccessAsString, getLockAt, getLockList, getModifyDate, getName, getOpLock, getProtocolId, getStreamId, getStreamName, getUniqueId, getWriteCount, hasAccessDate, hasAccessToken, hasCreationDate, hasDelayedClose, hasDelayedWriteError, hasDeleteOnClose, hasIOPending, hasLocks, hasModifyDate, hasNTAttribute, hasOpLock, incrementWriteCount, isArchived, isClosed, isDirectory, isForce, isHidden, isReadOnly, isStream, isSystem, numberOfLocks, removeAllLocks, removeLock, setAccessDate, setAccessToken, setAllowedAccess, setAttributes, setClosed, setCreationDate, setDelayedClose, setDelayedWriteError, setDeleteOnClose, setDirectoryId, setFileId, setFileSize, setFileSize, setForce, setFullName, setGrantedAccess, setIOPending, setModifyDate, setName, setOpLock, setProtocolId, setStatusFlag, setStreamId, setStreamName, setUniqueId, setUniqueId, setUniqueId, wasCreated
-
Constructor Details
-
OpenOfficeContentNetworkFile
protected OpenOfficeContentNetworkFile(NodeService nodeService, ContentService contentService, MimetypeService mimetypeService, NodeRef nodeRef, String name) Class constructor- Parameters:
nodeService- NodeServicecontentService- ContentServicemimetypeService- MimetypeServicenodeRef- NodeRefname- String
-
-
Method Details
-
getDelayedCloseCount
public final int getDelayedCloseCount()Return the delayed close count- Returns:
- int
-
incrementDelayedCloseCount
public final void incrementDelayedCloseCount()Increment the delayed close count -
truncatedToZeroLength
public final boolean truncatedToZeroLength()Check if the last file operation was a truncate to zero length- Returns:
- boolean
-
readFile
Read from the file.- Overrides:
readFilein classContentNetworkFile- Parameters:
buffer- byte[]length- intposition- intfileOffset- long- Returns:
- Length of data read.
- Throws:
IOException
-
writeFile
Write a block of data to the file.- Overrides:
writeFilein classContentNetworkFile- Parameters:
buffer- byte[]length- intposition- intfileOffset- long- Throws:
IOException
-
truncateFile
Truncate or extend the file to the specified length- Overrides:
truncateFilein classContentNetworkFile- Parameters:
size- long- Throws:
IOException
-
closeFile
Close the file- Overrides:
closeFilein classContentNetworkFile- Throws:
IOException
-