Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.logging.log4j.core.appender
Class OutputStreamManager

    java.lang.Object
      org.apache.logging.log4j.core.appender.AbstractManager
          org.apache.logging.log4j.core.appender.OutputStreamManager

Direct Known Subclasses:
  AbstractSocketManager, FileManager, MemoryMappedFileManager, RandomAccessFileManager

    public class OutputStreamManager

extends AbstractManager

Manages an OutputStream so that it can be shared by multiple Appenders and will allow appenders to reconfigure without requiring a new stream.

Field Summary
`protected Layout<?>` | `layout`

Fields inherited from class org.apache.logging.log4j.core.appender.AbstractManager
`count, LOGGER`

Constructor Summary
`protected` | `OutputStreamManager(OutputStream os, String streamName, Layout<?> layout)`

Method Summary
`protected void` | `close()`
`void` | `flush()` Flushes any buffers.
`static
`<T> OutputStreamManager`
` | `getManager(String name, T data, ManagerFactory<? extends OutputStreamManager,T> factory)` Creates a Manager.
`protected OutputStream` | `getOutputStream()`
`boolean` | `isOpen()` Returns the status of the stream.
`void` | `releaseSub()` Default hook to write footer during close.
`protected void` | `setOutputStream(OutputStream os)`
`protected void` | `write(byte[] bytes)` Some output streams synchronize writes while others do not.
`protected void` | `write(byte[] bytes, int offset, int length)` Some output streams synchronize writes while others do not.
`protected void` | `writeFooter()` Writes the footer.

Methods inherited from class org.apache.logging.log4j.core.appender.AbstractManager
`getContentFormat, getCount, getName, hasManager, release`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### layout

    protected final Layout<?> layout

Constructor Detail

### OutputStreamManager

    protected OutputStreamManager(OutputStream os,
                                  String streamName,
                                  Layout<?> layout)

Method Detail

### getManager

    public static <T> OutputStreamManager getManager(String name,
                                                     T data,
                                                     ManagerFactory<? extends OutputStreamManager,T> factory)

  Creates a Manager.

  Type Parameters:
    `T` - The type of the OutputStreamManager.
  Parameters:
    `name` - The name of the stream to manage.
    `data` - The data to pass to the Manager.
    `factory` - The factory to use to create the Manager.
  Returns:
    An OutputStreamManager.

### releaseSub

    public void releaseSub()

  Default hook to write footer during close.

  Overrides:
    `releaseSub` in class `AbstractManager`

### writeFooter

    protected void writeFooter()

  Writes the footer.

### isOpen

    public boolean isOpen()

  Returns the status of the stream.

  Returns:
    true if the stream is open, false if it is not.

### getOutputStream

    protected OutputStream getOutputStream()

### setOutputStream

    protected void setOutputStream(OutputStream os)

### write

    protected void write(byte[] bytes,
                         int offset,
                         int length)

  Some output streams synchronize writes while others do not. Synchronizing here insures that log events won't be intertwined.

  Parameters:
    `bytes` - The serialized Log event.
    `offset` - The offset into the byte array.
    `length` - The number of bytes to write.
  Throws:
    `AppenderLoggingException` - if an error occurs.

### write

    protected void write(byte[] bytes)

  Some output streams synchronize writes while others do not.

  Parameters:
    `bytes` - The serialized Log event.
  Throws:
    `AppenderLoggingException` - if an error occurs.

### close

    protected void close()

### flush

    public void flush()

  Flushes any buffers.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 1999-2015 Apache Software Foundation. All Rights Reserved.
Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.