Class RequestID

  • All Implemented Interfaces:
    Externalizable, Serializable

    public class RequestID
    extends Object
    implements Externalizable

    This class represents an identifier for a request. However, there are some differences in what constitutes "uniqueness" for a given RequestID that is based on context (where the id is used). The RequestID has 2 parts: connectionID, and executionIDFor the purposes of the RequestID, the combined representation is "connectionID.executionID" - this implies a scoping for the name parts. The connectionID specifies a particular connection that is making requests. Each connection generates a unique executionID for each request execution, so the executionID is only unique in the context of a connectionID.

    When this class is used between client and server, the connectionID is implied and thus only the executionID part will be used. The server will qualify the executionID with a connectionID when it reaches the server.

    RequestIDs are immutable so no setters exist. This allows hashcodes to be pre-computed for faster comparison in equals.

    See Also:
    Serialized Form