Class PcapWriteHandler.Builder

java.lang.Object
io.netty.handler.pcap.PcapWriteHandler.Builder
Enclosing class:
PcapWriteHandler

public static final class PcapWriteHandler.Builder extends Object
Builder for PcapWriteHandler
  • Field Details

    • captureZeroByte

      private boolean captureZeroByte
    • sharedOutputStream

      private boolean sharedOutputStream
    • writePcapGlobalHeader

      private boolean writePcapGlobalHeader
    • channelType

      private PcapWriteHandler.ChannelType channelType
    • initiatorAddr

      private InetSocketAddress initiatorAddr
    • handlerAddr

      private InetSocketAddress handlerAddr
    • isServerPipeline

      private boolean isServerPipeline
  • Constructor Details

    • Builder

      private Builder()
  • Method Details

    • captureZeroByte

      public PcapWriteHandler.Builder captureZeroByte(boolean captureZeroByte)
      Set to true to enable capturing packets with empty (0 bytes) payload. Otherwise, if set to false, empty packets will be filtered out.
      Parameters:
      captureZeroByte - Whether to filter out empty packets.
      Returns:
      this builder
    • sharedOutputStream

      public PcapWriteHandler.Builder sharedOutputStream(boolean sharedOutputStream)
      Set to true if multiple PcapWriteHandler instances will be writing to the same OutputStream concurrently, and write locking is required. Otherwise, if set to false, no locking will be done. Additionally, PcapWriteHandler.close() will not close the underlying OutputStream. Note: it is probably an error to have both writePcapGlobalHeader and sharedOutputStream set to true at the same time.
      Parameters:
      sharedOutputStream - Whether OutputStream is shared or not
      Returns:
      this builder
    • writePcapGlobalHeader

      public PcapWriteHandler.Builder writePcapGlobalHeader(boolean writePcapGlobalHeader)
      Set to true to write Pcap Global Header on initialization. Otherwise, if set to false, Pcap Global Header will not be written on initialization. This could when writing Pcap data on a existing file where Pcap Global Header is already present.
      Parameters:
      writePcapGlobalHeader - Whether to write the pcap global header.
      Returns:
      this builder
    • forceTcpChannel

      public PcapWriteHandler.Builder forceTcpChannel(InetSocketAddress serverAddress, InetSocketAddress clientAddress, boolean isServerPipeline)
      Force this handler to write data as if they were TCP packets, with the given connection metadata. If this method isn't called, we determine the metadata from the channel.
      Parameters:
      serverAddress - The address of the TCP server (handler)
      clientAddress - The address of the TCP client (initiator)
      isServerPipeline - Whether the handler is part of the server channel
      Returns:
      this builder
    • forceUdpChannel

      public PcapWriteHandler.Builder forceUdpChannel(InetSocketAddress localAddress, InetSocketAddress remoteAddress)
      Force this handler to write data as if they were UDP packets, with the given connection metadata. If this method isn't called, we determine the metadata from the channel.
      Note that even if this method is called, the address information on DatagramPacket takes precedence if it is present.
      Parameters:
      localAddress - The address of the UDP local
      remoteAddress - The address of the UDP remote
      Returns:
      this builder
    • build

      public PcapWriteHandler build(OutputStream outputStream)
      Build the PcapWriteHandler.
      Parameters:
      outputStream - The output stream to write the pcap data to.
      Returns:
      The handler.