Class LinkMemoryNetworkFile

  • All Implemented Interfaces:
    NetworkFileLegacyReferenceCount, org.alfresco.jlan.server.filesys.cache.NetworkFileStateInterface

    public class LinkMemoryNetworkFile
    extends NodeRefNetworkFile
    Link Node In Memory Network File Class

    In memory network file implementation that uses a memory buffer for the file data.

    Author:
    gkspencer
    • Field Summary

      • Fields 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

      Constructors 
      Constructor Description
      LinkMemoryNetworkFile​(java.lang.String name, byte[] data, org.alfresco.jlan.server.filesys.FileInfo finfo, org.alfresco.service.cmr.repository.NodeRef nodeRef)
      Class constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void closeFile()
      Close the network file.
      long currentPosition()
      Return the current file position.
      void flushFile()
      Flush the file.
      org.alfresco.jlan.server.filesys.cache.FileState getFileState()
      Return a dummy file state for this file
      boolean isEndOfFile()
      Determine if the end of file has been reached.
      void openFile​(boolean createFlag)
      Open the file.
      int readFile​(byte[] buf, int len, int pos, long fileOff)
      Read from the file.
      long seekFile​(long pos, int typ)
      Seek to the specified file position.
      void truncateFile​(long siz)
      Truncate the file
      void writeFile​(byte[] buf, int len, int pos)
      Write a block of data to the file.
      void writeFile​(byte[] buf, int len, int pos, long offset)
      Write a block of data to the file.
      • Methods 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, toString, wasCreated
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • LinkMemoryNetworkFile

        public LinkMemoryNetworkFile​(java.lang.String name,
                                     byte[] data,
                                     org.alfresco.jlan.server.filesys.FileInfo finfo,
                                     org.alfresco.service.cmr.repository.NodeRef nodeRef)
        Class constructor.
        Parameters:
        name - String
        data - byte[]
        finfo - FileInfo
        nodeRef - NodeRef
    • Method Detail

      • closeFile

        public void closeFile()
                       throws java.io.IOException
        Close the network file.
        Specified by:
        closeFile in class org.alfresco.jlan.server.filesys.NetworkFile
        Throws:
        java.io.IOException
      • currentPosition

        public long currentPosition()
        Return the current file position.
        Returns:
        long
      • flushFile

        public void flushFile()
                       throws java.io.IOException
        Flush the file.
        Specified by:
        flushFile in class org.alfresco.jlan.server.filesys.NetworkFile
        Throws:
        java.io.IOException
      • isEndOfFile

        public boolean isEndOfFile()
                            throws java.io.IOException
        Determine if the end of file has been reached.
        Returns:
        boolean
        Throws:
        java.io.IOException
      • openFile

        public void openFile​(boolean createFlag)
                      throws java.io.IOException
        Open the file.
        Specified by:
        openFile in class org.alfresco.jlan.server.filesys.NetworkFile
        Parameters:
        createFlag - boolean
        Throws:
        java.io.IOException
      • readFile

        public int readFile​(byte[] buf,
                            int len,
                            int pos,
                            long fileOff)
                     throws java.io.IOException
        Read from the file.
        Specified by:
        readFile in class org.alfresco.jlan.server.filesys.NetworkFile
        Parameters:
        buf - byte[]
        len - int
        pos - int
        fileOff - long
        Returns:
        Length of data read.
        Throws:
        java.io.IOException
      • seekFile

        public long seekFile​(long pos,
                             int typ)
                      throws java.io.IOException
        Seek to the specified file position.
        Specified by:
        seekFile in class org.alfresco.jlan.server.filesys.NetworkFile
        Parameters:
        pos - long
        typ - int
        Returns:
        long
        Throws:
        java.io.IOException
      • truncateFile

        public void truncateFile​(long siz)
                          throws java.io.IOException
        Truncate the file
        Specified by:
        truncateFile in class org.alfresco.jlan.server.filesys.NetworkFile
        Parameters:
        siz - long
        Throws:
        java.io.IOException
      • writeFile

        public void writeFile​(byte[] buf,
                              int len,
                              int pos)
                       throws java.io.IOException
        Write a block of data to the file.
        Parameters:
        buf - byte[]
        len - int
        Throws:
        java.io.IOException
      • writeFile

        public void writeFile​(byte[] buf,
                              int len,
                              int pos,
                              long offset)
                       throws java.io.IOException
        Write a block of data to the file.
        Specified by:
        writeFile in class org.alfresco.jlan.server.filesys.NetworkFile
        Parameters:
        buf - byte[]
        len - int
        pos - int
        offset - long
        Throws:
        java.io.IOException
      • getFileState

        public org.alfresco.jlan.server.filesys.cache.FileState getFileState()
        Return a dummy file state for this file
        Specified by:
        getFileState in interface org.alfresco.jlan.server.filesys.cache.NetworkFileStateInterface
        Overrides:
        getFileState in class AlfrescoNetworkFile
        Returns:
        FileState