public abstract class AbstractPacket extends java.lang.Object implements Packet
PropertiesBasedPacketFactory,
this subclass must implement the following method:
public static Packet newPacket(byte[] rawData, int offset, int length)
throws IllegalRawDataException| Modifier and Type | Class and Description |
|---|---|
static class |
AbstractPacket.AbstractBuilder
Abstract packet builder class.
|
static class |
AbstractPacket.AbstractHeader
Abstract immutable header class.
|
Packet.Builder, Packet.Header| Constructor and Description |
|---|
AbstractPacket() |
| Modifier and Type | Method and Description |
|---|---|
protected java.lang.String |
buildHexString()
This method builds the value
toHexString() will return
using the return value of getRawData(). |
protected byte[] |
buildRawData()
This method builds the value
getRawData() will return by
concatenating the header's raw data and the payload's raw data. |
protected java.lang.String |
buildString()
This method builds the value
toString() will return by
concatenating the header's string representation and the payload's string representation. |
protected int |
calcHashCode()
This method calculates the value
hashCode() will return using
the header's hash code and the payload's hash code. |
protected int |
calcLength()
This method calculates the value
length() will return by
adding up the header length and the payload length. |
boolean |
equals(java.lang.Object obj)
Indicates whether some other object is "equal to" this one.
|
abstract Packet.Builder |
getBuilder()
Returns a new Builder object populated with this object's fields' values.
|
Packet.Header |
getHeader()
Returns the Header object representing this packet's header.
|
Packet |
getPayload()
Returns the Packet object representing this packet's payload.
|
byte[] |
getRawData()
Returns this packet's raw data.
|
int |
hashCode()
Returns a hash code value for the object.
|
int |
length()
Returns the packet length in bytes.
|
java.lang.String |
toHexString()
Returns the hex string representation of this object.
|
java.lang.String |
toString()
Returns a string representation of the object.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitcontains, get, getOuterOf, iteratorpublic Packet.Header getHeader()
public Packet getPayload()
getPayload in interface Packetprotected int calcLength()
length() will return by
adding up the header length and the payload length.
If you write this subclass which represents a packet with extra parts (e.g. a trailer),
you need to override this method.public int length()
calcLength() and caches the return value
when it is called for the first time,
and then, this method returns the cached value from the second time.protected byte[] buildRawData()
getRawData() will return by
concatenating the header's raw data and the payload's raw data.
If you write this subclass which represents a packet with extra parts (e.g. a trailer),
you need to override this method.public byte[] getRawData()
buildRawData() and caches the return value
when it is called for the first time,
and then, this method returns the cached value from the second time.
More correctly, this method returns a copy of the cached value,
so that the cache can't be changed.getRawData in interface Packetpublic abstract Packet.Builder getBuilder()
PacketgetBuilder in interface Packetprotected java.lang.String buildHexString()
toHexString() will return
using the return value of getRawData().
Each octet in this return value is separated by a white space.
(e.g. 00 01 02 03 aa bb cc)public java.lang.String toHexString()
buildHexString() and caches the return value
when it is called for the first time,
and then, this method returns the cached value from the second time.protected java.lang.String buildString()
toString() will return by
concatenating the header's string representation and the payload's string representation.
If you write this subclass which represents a packet with extra parts (e.g. a trailer),
you need to override this method.public java.lang.String toString()
buildString() and caches the return value
when it is called for the first time,
and then, this method returns the cached value from the second time.toString in class java.lang.Objectpublic boolean equals(java.lang.Object obj)
equals in class java.lang.Objectprotected int calcHashCode()
hashCode() will return using
the header's hash code and the payload's hash code.
If you write this subclass which represents a packet with extra parts (e.g. a trailer),
you need to override this method.public int hashCode()
calcHashCode() and caches the return value
when it is called for the first time,
and then, this method returns the cached value from the second time.hashCode in class java.lang.ObjectCopyright © 2011 - 2018 Pcap4J.org. All rights reserved.