Class RequestCorrelator.Header

    • Field Summary

      Fields 
      Modifier and Type Field Description
      java.util.Stack<Address> callStack
      Stack<Address>.
      java.lang.String corrName
      The unique name of the associated RequestCorrelator
      java.util.List<Address> dest_mbrs
      Contains a list of members who should receive the request (others will drop).
      long id
      The id of this request to distinguish among other requests from the same RequestCorrelator
      static byte REQ  
      static byte RSP  
      boolean rsp_expected
      msg is synchronous if true
      byte type
      Type of header: request or reply
    • Constructor Summary

      Constructors 
      Constructor Description
      Header()
      Used for externalization
      Header​(byte type, long id, boolean rsp_expected, java.lang.String name)  
    • 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

      • type

        public byte type
        Type of header: request or reply
      • id

        public long id
        The id of this request to distinguish among other requests from the same RequestCorrelator
      • rsp_expected

        public boolean rsp_expected
        msg is synchronous if true
      • corrName

        public java.lang.String corrName
        The unique name of the associated RequestCorrelator
      • callStack

        public java.util.Stack<Address> callStack
        Stack<Address>. Contains senders (e.g. P --> Q --> R)
      • dest_mbrs

        public java.util.List<Address> dest_mbrs
        Contains a list of members who should receive the request (others will drop). Ignored if null
    • Constructor Detail

      • Header

        public Header()
        Used for externalization
      • Header

        public Header​(byte type,
                      long id,
                      boolean rsp_expected,
                      java.lang.String name)
        Parameters:
        type - type of header (REQ/RSP)
        id - id of this header relative to ids of other requests originating from the same correlator
        rsp_expected - whether it's a sync or async request
        name - the name of the RequestCorrelator from which
    • 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
      • 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
      • 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