org.jgroups.protocols.pbcast

## Class STREAMING_STATE_TRANSFER.StateHeader

- java.lang.Object
- - org.jgroups.Header
  - - org.jgroups.protocols.pbcast.STREAMING_STATE_TRANSFER.StateHeader

All Implemented Interfaces:
  Streamable

Enclosing class:
  STREAMING_STATE_TRANSFER

    public static class STREAMING_STATE_TRANSFER.StateHeader
    extends Header

### Field Summary

Fields
`static byte` `STATE_PART`
`static byte` `STATE_REQ`
`static byte` `STATE_RSP`

### Constructor Summary

Constructors
Constructor and Description
`STREAMING_STATE_TRANSFER.StateHeader()`
`STREAMING_STATE_TRANSFER.StateHeader(byte type, Address sender, IpAddress bind_addr, Digest digest, java.lang.String state_id)`
`STREAMING_STATE_TRANSFER.StateHeader(byte type, Address sender, long id, Digest digest)`
`STREAMING_STATE_TRANSFER.StateHeader(byte type, Address sender, java.lang.String state_id)`

### Method Summary

Methods
`boolean` `equals(java.lang.Object o)`
`Digest` `getDigest()`
`java.lang.String` `getStateId()`
`int` `getType()`
`int` `hashCode()`
`void` `readFrom(java.io.DataInputStream in)` Read the state of the current object (including superclasses) from instream Note that the input stream must not be closed
`int` `size()` To be implemented by subclasses.
`java.lang.String` `toString()`
`void` `writeTo(java.io.DataOutputStream out)` Write the entire state of the current object (including superclasses) to outstream.

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Field Detail

#### STATE_REQ

    public static final byte STATE_REQ

See Also:
  Constant Field Values

#### STATE_RSP

    public static final byte STATE_RSP

See Also:
  Constant Field Values

#### STATE_PART

    public static final byte STATE_PART

See Also:
  Constant Field Values

### Constructor Detail

#### STREAMING_STATE_TRANSFER.StateHeader

    public STREAMING_STATE_TRANSFER.StateHeader()

#### STREAMING_STATE_TRANSFER.StateHeader

    public STREAMING_STATE_TRANSFER.StateHeader(byte type,
                                        Address sender,
                                        java.lang.String state_id)

#### STREAMING_STATE_TRANSFER.StateHeader

    public STREAMING_STATE_TRANSFER.StateHeader(byte type,
                                        Address sender,
                                        long id,
                                        Digest digest)

#### STREAMING_STATE_TRANSFER.StateHeader

    public STREAMING_STATE_TRANSFER.StateHeader(byte type,
                                        Address sender,
                                        IpAddress bind_addr,
                                        Digest digest,
                                        java.lang.String state_id)

### Method Detail

#### getType

    public int getType()

#### getDigest

    public Digest getDigest()

#### getStateId

    public java.lang.String getStateId()

#### equals

    public boolean equals(java.lang.Object o)

Overrides:
  `equals` in class `java.lang.Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `java.lang.Object`

#### toString

    public java.lang.String toString()

Overrides:
  `toString` in class `Header`

#### writeTo

    public void writeTo(java.io.DataOutputStream out)
                 throws java.io.IOException

Description copied from interface: `Streamable`
Write the entire state of the current object (including superclasses) to outstream. Note that the output stream must not be closed

Throws:
  `java.io.IOException`

#### readFrom

    public void readFrom(java.io.DataInputStream in)
                  throws java.io.IOException,
                         java.lang.IllegalAccessException,
                         java.lang.InstantiationException

Description copied from interface: `Streamable`
Read the state of the current object (including superclasses) from instream Note that the input stream must not be closed

Throws:
  `java.io.IOException`
  `java.lang.IllegalAccessException`
  `java.lang.InstantiationException`

#### size

    public int size()

Description copied from class: `Header`
To be implemented by subclasses. Return the size of this object for the serialized version of it. I.e. how many bytes this object takes when flattened into a buffer. This may be different for each instance, or can be the same. This may also just be an estimation. E.g. FRAG uses it on Message to determine whether or not to fragment the message. Fragmentation itself will be accurate, because the entire message will actually be serialized into a byte buffer, so we can determine the exact size.

Specified by:
  `size` in class `Header`