Class FragHeader

  • All Implemented Interfaces:
    java.io.Externalizable, java.io.Serializable, Streamable

    public class FragHeader
    extends Header
    implements Streamable
    Version:
    $Id: FragHeader.java,v 1.3 2007/05/01 10:55:10 belaban Exp $
    Author:
    Bela Ban
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      FragHeader()  
      FragHeader​(long id, int frag_id, int num_frags)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void readExternal​(java.io.ObjectInput in)  
      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 writeExternal​(java.io.ObjectOutput out)  
      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, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • id

        public long id
      • frag_id

        public int frag_id
      • num_frags

        public int num_frags
    • Constructor Detail

      • FragHeader

        public FragHeader()
      • FragHeader

        public FragHeader​(long id,
                          int frag_id,
                          int num_frags)
    • Method Detail

      • toString

        public java.lang.String toString()
        Overrides:
        toString in class Header
      • writeExternal

        public void writeExternal​(java.io.ObjectOutput out)
                           throws java.io.IOException
        Specified by:
        writeExternal in interface java.io.Externalizable
        Throws:
        java.io.IOException
      • readExternal

        public void readExternal​(java.io.ObjectInput in)
                          throws java.io.IOException,
                                 java.lang.ClassNotFoundException
        Specified by:
        readExternal in interface java.io.Externalizable
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException
      • 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
        Specified by:
        writeTo in interface Streamable
        Throws:
        java.io.IOException
      • 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.
        Overrides:
        size in class Header
      • 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
        Specified by:
        readFrom in interface Streamable
        Throws:
        java.io.IOException
        java.lang.IllegalAccessException
        java.lang.InstantiationException