net.sf.okapi.common.filterwriter

## Class ZipFilterWriter

- java.lang.Object
- - net.sf.okapi.common.filterwriter.ZipFilterWriter

- All Implemented Interfaces:
    java.lang.AutoCloseable, IFilterWriter

      public class ZipFilterWriter
      extends java.lang.Object
      implements IFilterWriter

  Implements the `IFilterWriter` interface for filters that handle formats made of a ZIP package with embedded extractable documents, such as IDML or OpenOffice.org files (ODT, ODS, ODP, etc.)

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ZipFilterWriter(EncoderManager encoderManager)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `cancel()` Cancels the current process.
    `void` | `close()` Closes the output.
    `protected StartDocument` | `convertToStartDocument(StartSubDocument res)`
    `protected IFilterWriter` | `createSubDocumentFilterWriter(StartSubDocument res)`
    `protected ISkeletonWriter` | `createSubDocumentSkeletonWriter(StartSubDocument res)`
    `EncoderManager` | `getEncoderManager()` Gets the current encoder manager for this writer.
    `LocaleId` | `getLocale()`
    `java.lang.String` | `getName()` Gets the name of this writer.
    `IParameters` | `getParameters()` Gets the current parameters for this writer.
    `ISkeletonWriter` | `getSkeletonWriter()` Gets the skeleton writer associated with this writer.
    `IFilterWriter` | `getSubDocWriter()`
    `Event` | `handleEvent(Event event)` Handles the filter events.
    `protected void` | `processDocumentPart(Event event)`
    `protected void` | `processEndSubDocument(Ending res)`
    `protected void` | `processStartDocument(StartDocument res)`
    `protected void` | `processStartSubDocument(StartSubDocument res)`
    `void` | `setOptions(LocaleId locale, java.lang.String defaultEncoding)` Sets the options for this writer.
    `void` | `setOutput(java.io.OutputStream output)` Sets the output through its output stream.
    `void` | `setOutput(java.lang.String path)` Sets the output through the path of the output file.
    `void` | `setParameters(IParameters params)` Sets new parameters for this writer.
    `void` | `setSubDocWriter(IFilterWriter subDocWriter)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ZipFilterWriter

          public ZipFilterWriter(EncoderManager encoderManager)

  - ### Method Detail

    - #### cancel

          public void cancel()

      Description copied from interface: `IFilterWriter`
      Cancels the current process.
      Specified by:
        `cancel` in interface `IFilterWriter`

    - #### close

          public void close()

      Description copied from interface: `IFilterWriter`
      Closes the output. Developers must make sure this method is safe to call even if there is nothing to close.
      Specified by:
        `close` in interface `java.lang.AutoCloseable`
      Specified by:
        `close` in interface `IFilterWriter`

    - #### getName

          public java.lang.String getName()

      Description copied from interface: `IFilterWriter`
      Gets the name of this writer.
      Specified by:
        `getName` in interface `IFilterWriter`
      Returns:
        The name of the writer.

    - #### getEncoderManager

          public EncoderManager getEncoderManager()

      Description copied from interface: `IFilterWriter`
      Gets the current encoder manager for this writer. Some special implementation of IFilterWriter may not use an encoder manager (for example writers that do not use skeleton).
      Specified by:
        `getEncoderManager` in interface `IFilterWriter`
      Returns:
        the current encoder manager for this writer, or null if none exists for this writer.

    - #### getSkeletonWriter

          public ISkeletonWriter getSkeletonWriter()

      Description copied from interface: `IFilterWriter`
      Gets the skeleton writer associated with this writer. Some implementation of IFilterWriter may not use a skeleton writer.
      Specified by:
        `getSkeletonWriter` in interface `IFilterWriter`
      Returns:
        the skeleton writer associated with this writer or null if none is associated.

    - #### getParameters

          public IParameters getParameters()

      Description copied from interface: `IFilterWriter`
      Gets the current parameters for this writer.
      Specified by:
        `getParameters` in interface `IFilterWriter`
      Returns:
        The current parameters for this writer.

    - #### handleEvent

          public Event handleEvent(Event event)

      Description copied from interface: `IFilterWriter`
      Handles the filter events.
      Specified by:
        `handleEvent` in interface `IFilterWriter`
      Parameters:
        `event` - The event to process.
      Returns:
        The event that was processed.

    - #### setOptions

          public void setOptions(LocaleId locale,
                        java.lang.String defaultEncoding)

      Description copied from interface: `IFilterWriter`
      Sets the options for this writer.
      Specified by:
        `setOptions` in interface `IFilterWriter`
      Parameters:
        `locale` - the output locale.
        `defaultEncoding` - Name of the character set encoding for the output.

    - #### setOutput

          public void setOutput(java.lang.String path)

      Description copied from interface: `IFilterWriter`
      Sets the output through the path of the output file.
      Specified by:
        `setOutput` in interface `IFilterWriter`
      Parameters:
        `path` - Full path of the output file.

    - #### setOutput

          public void setOutput(java.io.OutputStream output)

      Description copied from interface: `IFilterWriter`
      Sets the output through its output stream.
      Specified by:
        `setOutput` in interface `IFilterWriter`
      Parameters:
        `output` - Output stream to use for the output.

    - #### setParameters

          public void setParameters(IParameters params)

      Description copied from interface: `IFilterWriter`
      Sets new parameters for this writer.
      Specified by:
        `setParameters` in interface `IFilterWriter`
      Parameters:
        `params` - The new parameters to use.

    - #### processStartDocument

          protected void processStartDocument(StartDocument res)

    - #### processDocumentPart

          protected void processDocumentPart(Event event)

    - #### createSubDocumentSkeletonWriter

          protected ISkeletonWriter createSubDocumentSkeletonWriter(StartSubDocument res)

    - #### createSubDocumentFilterWriter

          protected IFilterWriter createSubDocumentFilterWriter(StartSubDocument res)

    - #### convertToStartDocument

          protected StartDocument convertToStartDocument(StartSubDocument res)

    - #### processStartSubDocument

          protected void processStartSubDocument(StartSubDocument res)

    - #### processEndSubDocument

          protected void processEndSubDocument(Ending res)

    - #### getSubDocWriter

          public IFilterWriter getSubDocWriter()

    - #### setSubDocWriter

          public void setSubDocWriter(IFilterWriter subDocWriter)

    - #### getLocale

          public final LocaleId getLocale()