Class BOMInputStream.Builder

All Implemented Interfaces:
IOSupplier<BOMInputStream>
Enclosing class:
BOMInputStream

public static class BOMInputStream.Builder extends AbstractStreamBuilder<BOMInputStream,BOMInputStream.Builder>
Builds a new BOMInputStream.

Using NIO


 BOMInputStream s = BOMInputStream.builder()
   .setPath(Paths.get("MyFile.xml"))
   .setByteOrderMarks(ByteOrderMark.UTF_8)
   .setInclude(false)
   .get();
 

Using IO


 BOMInputStream s = BOMInputStream.builder()
   .setFile(new File("MyFile.xml"))
   .setByteOrderMarks(ByteOrderMark.UTF_8)
   .setInclude(false)
   .get();
 
Since:
2.12.0
See Also:
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • get

      public BOMInputStream get() throws IOException
      Builds a new BOMInputStream.

      You must set input that supports AbstractStreamBuilder.getInputStream(), otherwise, this method throws an exception.

      This builder use the following aspects: InputStream, OpenOption[], include, and ByteOrderMark[].

      This builder use the following aspects:

      • AbstractStreamBuilder.getInputStream()
      • include}
      • byteOrderMarks
      Returns:
      a new instance.
      Throws:
      IllegalStateException - if the origin is null.
      UnsupportedOperationException - if the origin cannot be converted to an InputStream.
      IOException - if an I/O error occurs.
      See Also:
      • AbstractStreamBuilder.getInputStream()
    • setByteOrderMarks

      public BOMInputStream.Builder setByteOrderMarks(ByteOrderMark... byteOrderMarks)
      Sets the ByteOrderMarks to detect and optionally exclude.

      The default is ByteOrderMark.UTF_8.

      Parameters:
      byteOrderMarks - the ByteOrderMarks to detect and optionally exclude.
      Returns:
      this
    • setInclude

      public BOMInputStream.Builder setInclude(boolean include)
      Sets whether to include the UTF-8 BOM (true) or to exclude it (false).

      The default is false.

      Parameters:
      include - true to include the UTF-8 BOM or false to exclude it. return this;
      Returns:
      this