Class SevenZFile.Builder

java.lang.Object
org.apache.commons.io.build.AbstractSupplier<SevenZFile,SevenZFile.Builder>
org.apache.commons.io.build.AbstractOriginSupplier<SevenZFile,SevenZFile.Builder>
org.apache.commons.io.build.AbstractStreamBuilder<SevenZFile,SevenZFile.Builder>
org.apache.commons.compress.archivers.sevenz.SevenZFile.Builder
All Implemented Interfaces:
org.apache.commons.io.function.IOSupplier<SevenZFile>
Enclosing class:
SevenZFile

public static class SevenZFile.Builder extends org.apache.commons.io.build.AbstractStreamBuilder<SevenZFile,SevenZFile.Builder>
Builds new instances of SevenZFile.
Since:
1.26.0
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    get()
     
    setDefaultName(String defaultName)
    Sets the default name.
    setMaxMemoryLimitKb(int maxMemoryLimitKb)
    Sets the maximum amount of memory in kilobytes to use for parsing the archive and during extraction.
    setPassword(byte[] password)
    Sets the password.
    setPassword(char[] password)
    Sets the password.
    setPassword(String password)
    Sets the password.
    Sets the input channel.
    setTryToRecoverBrokenArchives(boolean tryToRecoverBrokenArchives)
    Sets whether SevenZFile will try to recover broken archives where the CRC of the file's metadata is 0.
    setUseDefaultNameForUnnamedEntries(boolean useDefaultNameForUnnamedEntries)
    Sets whether entries without a name should get their names set to the archive's default file name.

    Methods inherited from class org.apache.commons.io.build.AbstractStreamBuilder

    getBufferSize, getBufferSizeDefault, getCharSequence, getCharset, getCharsetDefault, getFile, getInputStream, getOpenOptions, getOutputStream, getPath, getRandomAccessFile, getReader, getWriter, setBufferSize, setBufferSize, setBufferSizeChecker, setBufferSizeDefault, setBufferSizeMax, setCharset, setCharset, setCharsetDefault, setOpenOptions

    Methods inherited from class org.apache.commons.io.build.AbstractOriginSupplier

    checkOrigin, getOrigin, hasOrigin, newByteArrayOrigin, newCharSequenceOrigin, newFileOrigin, newFileOrigin, newInputStreamOrigin, newOutputStreamOrigin, newPathOrigin, newPathOrigin, newRandomAccessFileOrigin, newRandomAccessFileOrigin, newReaderOrigin, newURIOrigin, newWriterOrigin, setByteArray, setCharSequence, setFile, setFile, setInputStream, setOrigin, setOutputStream, setPath, setPath, setRandomAccessFile, setRandomAccessFile, setReader, setURI, setWriter

    Methods inherited from class org.apache.commons.io.build.AbstractSupplier

    asThis

    Methods inherited from class java.lang.Object

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

    Methods inherited from interface org.apache.commons.io.function.IOSupplier

    asSupplier, getUnchecked
  • Constructor Details

  • Method Details

    • get

      public SevenZFile get() throws IOException
      Throws:
      IOException
    • setDefaultName

      Sets the default name.
      Parameters:
      defaultName - the default name.
      Returns:
      this.
    • setMaxMemoryLimitKb

      public SevenZFile.Builder setMaxMemoryLimitKb(int maxMemoryLimitKb)
      Sets the maximum amount of memory in kilobytes to use for parsing the archive and during extraction.

      Not all codecs honor this setting. Currently only LZMA and LZMA2 are supported.

      Parameters:
      maxMemoryLimitKb - the max memory limit in kilobytes.
      Returns:
      this.
    • setPassword

      public SevenZFile.Builder setPassword(byte[] password)
      Sets the password.
      Parameters:
      password - the password.
      Returns:
      this.
    • setPassword

      public SevenZFile.Builder setPassword(char[] password)
      Sets the password.
      Parameters:
      password - the password.
      Returns:
      this.
    • setPassword

      Sets the password.
      Parameters:
      password - the password.
      Returns:
      this.
    • setSeekableByteChannel

      Sets the input channel.
      Parameters:
      seekableByteChannel - the input channel.
      Returns:
      this.
    • setTryToRecoverBrokenArchives

      public SevenZFile.Builder setTryToRecoverBrokenArchives(boolean tryToRecoverBrokenArchives)
      Sets whether SevenZFile will try to recover broken archives where the CRC of the file's metadata is 0.

      This special kind of broken archive is encountered when mutli volume archives are closed prematurely. If you enable this option SevenZFile will trust data that looks as if it could contain metadata of an archive and allocate big amounts of memory. It is strongly recommended to not enable this option without setting setMaxMemoryLimitKb(int) at the same time.

      Parameters:
      tryToRecoverBrokenArchives - whether SevenZFile will try to recover broken archives where the CRC of the file's metadata is 0.
      Returns:
      this.
    • setUseDefaultNameForUnnamedEntries

      public SevenZFile.Builder setUseDefaultNameForUnnamedEntries(boolean useDefaultNameForUnnamedEntries)
      Sets whether entries without a name should get their names set to the archive's default file name.
      Parameters:
      useDefaultNameForUnnamedEntries - whether entries without a name should get their names set to the archive's default file name.
      Returns:
      this.