Class FileManager

    • Method Detail

      • getFileManager

        public static FileManager getFileManager​(String fileName,
                                                 boolean append,
                                                 boolean locking,
                                                 boolean bufferedIo,
                                                 boolean createOnDemand,
                                                 String advertiseUri,
                                                 Layout<? extends Serializable> layout,
                                                 int bufferSize,
                                                 String filePermissions,
                                                 String fileOwner,
                                                 String fileGroup,
                                                 Configuration configuration)
        Returns the FileManager.
        Parameters:
        fileName - The name of the file to manage.
        append - true if the file should be appended to, false if it should be overwritten.
        locking - true if the file should be locked while writing, false otherwise.
        bufferedIo - true if the contents should be buffered as they are written.
        createOnDemand - true if you want to lazy-create the file (a.k.a. on-demand.)
        advertiseUri - the URI to use when advertising the file
        layout - The layout
        bufferSize - buffer size for buffered IO
        filePermissions - File permissions
        fileOwner - File owner
        fileGroup - File group
        configuration - The configuration.
        Returns:
        A FileManager for the File.
      • defineAttributeView

        protected void defineAttributeView​(Path path)
      • write

        protected void write​(byte[] bytes,
                             int offset,
                             int length,
                             boolean immediateFlush)
        Description copied from class: OutputStreamManager
        Some output streams synchronize writes while others do not. Synchronizing here insures that log events won't be intertwined.
        Overrides:
        write in class OutputStreamManager
        Parameters:
        bytes - The serialized Log event.
        offset - The offset into the byte array.
        length - The number of bytes to write.
        immediateFlush - flushes immediately after writing.
      • getFileName

        public String getFileName()
        Returns the name of the File being managed.
        Returns:
        The name of the File being managed.
      • isAppend

        public boolean isAppend()
        Returns the append status.
        Returns:
        true if the file will be appended to, false if it is overwritten.
      • isCreateOnDemand

        public boolean isCreateOnDemand()
        Returns the lazy-create.
        Returns:
        true if the file will be lazy-created.
      • isLocking

        public boolean isLocking()
        Returns the lock status.
        Returns:
        true if the file will be locked when writing, false otherwise.
      • getBufferSize

        public int getBufferSize()
        Returns the buffer size to use if the appender was configured with BufferedIO=true, otherwise returns a negative number.
        Returns:
        the buffer size, or a negative number if the output stream is not buffered
      • getFilePermissions

        public Set<PosixFilePermission> getFilePermissions()
        Returns posix file permissions if defined and the OS supports posix file attribute, null otherwise.
        Returns:
        File posix permissions
        See Also:
        PosixFileAttributeView
      • getFileOwner

        public String getFileOwner()
        Returns file owner if defined and the OS supports owner file attribute view, null otherwise.
        Returns:
        File owner
        See Also:
        FileOwnerAttributeView
      • getFileGroup

        public String getFileGroup()
        Returns file group if defined and the OS supports posix/group file attribute view, null otherwise.
        Returns:
        File group
        See Also:
        PosixFileAttributeView
      • isAttributeViewEnabled

        public boolean isAttributeViewEnabled()
        Returns true if file attribute view enabled for this file manager.
        Returns:
        True if posix or owner supported and defined false otherwise.
      • getContentFormat

        public Map<String,​String> getContentFormat()
        FileManager's content format is specified by: Key: "fileURI" Value: provided "advertiseURI" param.
        Overrides:
        getContentFormat in class AbstractManager
        Returns:
        Map of content format keys supporting FileManager