PcapWriteHandler Class — netty Architecture
Architecture documentation for the PcapWriteHandler class in PcapWriteHandler.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 59f0289b_ecfd_de3c_3397_4cf08e2047d1["PcapWriteHandler"] f621a1b5_b094_5cfc_94ae_44445a7f7be6["PcapWriteHandler.java"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|defined in| f621a1b5_b094_5cfc_94ae_44445a7f7be6 248179f2_51ef_4f80_83ac_89c95779a7c4["PcapWriteHandler()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| 248179f2_51ef_4f80_83ac_89c95779a7c4 4e4807e3_947d_baea_eead_5a0d49198b88["writeGlobalHeader()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| 4e4807e3_947d_baea_eead_5a0d49198b88 f413848a_cf63_e812_442c_2bc5760c526a["initializeIfNecessary()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| f413848a_cf63_e812_442c_2bc5760c526a 70ae8233_1a41_b995_2a35_d08a52e5832c["channelActive()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| 70ae8233_1a41_b995_2a35_d08a52e5832c ad9aed33_ce6c_03a6_768d_de9fb726fba9["channelRead()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| ad9aed33_ce6c_03a6_768d_de9fb726fba9 2fb87f56_9808_98f7_33ce_8ee757b86601["write()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| 2fb87f56_9808_98f7_33ce_8ee757b86601 56402456_64d5_e1dd_9d6f_c6dfc0490e45["handleTCP()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| 56402456_64d5_e1dd_9d6f_c6dfc0490e45 320d8848_c045_6f15_fc6c_77ec890cc385["handleTcpPacket()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| 320d8848_c045_6f15_fc6c_77ec890cc385 bbfbdddd_98c4_8181_5429_a45dee375189["completeTCPWrite()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| bbfbdddd_98c4_8181_5429_a45dee375189 89999839_bf9a_67ff_18ff_46d98e911624["incrementUintSegmentNumber()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| 89999839_bf9a_67ff_18ff_46d98e911624 06ef8177_bf66_5538_b798_56d322fe8d3e["handleUDP()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| 06ef8177_bf66_5538_b798_56d322fe8d3e 4e4d1dfd_9ca2_974c_7198_72a58937e36e["completeUDPWrite()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| 4e4d1dfd_9ca2_974c_7198_72a58937e36e ddfb3cec_619a_c9db_27ba_8a1c524104e3["InetSocketAddress()"] 59f0289b_ecfd_de3c_3397_4cf08e2047d1 -->|method| ddfb3cec_619a_c9db_27ba_8a1c524104e3
Relationship Graph
Source Code
handler/src/main/java/io/netty/handler/pcap/PcapWriteHandler.java lines 71–926
public final class PcapWriteHandler extends ChannelDuplexHandler implements Closeable {
/**
* Logger for logging events
*/
private final InternalLogger logger = InternalLoggerFactory.getInstance(PcapWriteHandler.class);
/**
* {@link PcapWriter} Instance
*/
private PcapWriter pCapWriter;
/**
* {@link OutputStream} where we'll write Pcap data.
*/
private final OutputStream outputStream;
/**
* {@code true} if we want to capture packets with zero bytes else {@code false}.
*/
private final boolean captureZeroByte;
/**
* {@code true} if we want to write Pcap Global Header on initialization of
* {@link PcapWriter} else {@code false}.
*/
private final boolean writePcapGlobalHeader;
/**
* {@code true} if we want to synchronize on the {@link OutputStream} while writing
* else {@code false}.
*/
private final boolean sharedOutputStream;
/**
* TCP Sender Segment Number.
* It'll start with 1 and keep incrementing with number of bytes read/sent and wrap at the uint32 max.
*/
private long sendSegmentNumber = 1;
/**
* TCP Receiver Segment Number.
* It'll start with 1 and keep incrementing with number of bytes read/sent and wrap at the uint32 max
*/
private long receiveSegmentNumber = 1;
/**
* Type of the channel this handler is registered on
*/
private ChannelType channelType;
/**
* Address of the initiator of the connection
*/
private InetSocketAddress initiatorAddr;
/**
* Address of the receiver of the connection
*/
private InetSocketAddress handlerAddr;
/**
* Set to {@code true} if this handler is registered on a server pipeline
*/
private boolean isServerPipeline;
/**
* Current of this {@link PcapWriteHandler}
*/
private final AtomicReference<State> state = new AtomicReference<State>(State.INIT);
/**
* Create new {@link PcapWriteHandler} Instance.
* {@code captureZeroByte} is set to {@code false} and
* {@code writePcapGlobalHeader} is set to {@code true}.
*
* @param outputStream OutputStream where Pcap data will be written. Call {@link #close()} to close this
* OutputStream.
* @throws NullPointerException If {@link OutputStream} is {@code null} then we'll throw an
* {@link NullPointerException}
* @deprecated Use {@link Builder} instead.
Source
Frequently Asked Questions
What is the PcapWriteHandler class?
PcapWriteHandler is a class in the netty codebase, defined in handler/src/main/java/io/netty/handler/pcap/PcapWriteHandler.java.
Where is PcapWriteHandler defined?
PcapWriteHandler is defined in handler/src/main/java/io/netty/handler/pcap/PcapWriteHandler.java at line 71.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free