org.acplt.oncrpc

## Class OncRpcReplyMessage

- java.lang.Object
- - org.acplt.oncrpc.OncRpcMessage
  - - org.acplt.oncrpc.OncRpcReplyMessage

Direct Known Subclasses:
  OncRpcClientReplyMessage, OncRpcServerReplyMessage

    public abstract class OncRpcReplyMessage
    extends OncRpcMessage

The `OncRpcReplyMessage` class represents an ONC/RPC reply message as defined by ONC/RPC in RFC 1831. Such messages are sent back by ONC/RPC to servers to clients and contain (in case of real success) the result of a remote procedure call.

The decision to define only one single class for the accepted and rejected replies was driven by the motivation not to use polymorphism and thus have to upcast and downcast references all the time.

The derived classes are only provided for convinience on the server side.

Version:
  $Revision: 1.2 $ $Date: 2003/08/14 07:56:59 $ $State: Exp $ $Locker: $
Author:
  Harald Albrecht

### Field Summary

Fields
`int` `acceptStatus` Acceptance status in case this reply was sent in response to an accepted call (`OncRpcReplyStatus.ONCRPC_MSG_ACCEPTED`).
`int` `authStatus` Contains the reason for authentification failure in the case of `OncRpcRejectStatus.ONCRPC_AUTH_ERROR`.
`int` `highVersion` Highest supported version in case of `OncRpcRejectStatus.ONCRPC_RPC_MISMATCH` and `OncRpcAcceptStatus.ONCRPC_PROG_MISMATCH`.
`int` `lowVersion` Lowest supported version in case of `OncRpcRejectStatus.ONCRPC_RPC_MISMATCH` and `OncRpcAcceptStatus.ONCRPC_PROG_MISMATCH`.
`int` `rejectStatus` Rejectance status in case this reply sent in response to a rejected call (`OncRpcReplyStatus.ONCRPC_MSG_DENIED`).
`int` `replyStatus` The reply status of the reply message.
`static int` `UNUSED_PARAMETER` Dummy, which can be used to identify unused parameters when constructing `OncRpcReplyMessage` objects.

### Fields inherited from class org.acplt.oncrpc.OncRpcMessage

`messageId, messageType`

### Constructor Summary

Constructors
Constructor and Description
`OncRpcReplyMessage()` Initializes a new `OncRpcReplyMessage` object to represent an invalid state.
`OncRpcReplyMessage(OncRpcCallMessage call, int replyStatus, int acceptStatus, int rejectStatus, int lowVersion, int highVersion, int authStatus)` Initializes a new `OncRpcReplyMessage` object and initializes its complete state from the given parameters.

### Method Summary

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### replyStatus

    public int replyStatus

The reply status of the reply message. This can be either `OncRpcReplyStatus.ONCRPC_MSG_ACCEPTED` or `OncRpcReplyStatus.ONCRPC_MSG_DENIED`. Depending on the value of this field, other fields of an instance of `OncRpcReplyMessage` become important.

The decision to define only one single class for the accepted and rejected replies was driven by the motivation not to use polymorphism and thus have to upcast and downcast references all the time.

#### acceptStatus

    public int acceptStatus

Acceptance status in case this reply was sent in response to an accepted call (`OncRpcReplyStatus.ONCRPC_MSG_ACCEPTED`). This field can take any of the values defined in the `OncRpcAcceptStatus` interface.

Note that even for accepted calls that only in the case of `OncRpcAcceptStatus.ONCRPC_SUCCESS` result data will follow the reply message header.

#### rejectStatus

    public int rejectStatus

Rejectance status in case this reply sent in response to a rejected call (`OncRpcReplyStatus.ONCRPC_MSG_DENIED`). This field can take any of the values defined in the `OncRpcRejectStatus` interface.

#### lowVersion

    public int lowVersion

Lowest supported version in case of `OncRpcRejectStatus.ONCRPC_RPC_MISMATCH` and `OncRpcAcceptStatus.ONCRPC_PROG_MISMATCH`.

#### highVersion

    public int highVersion

Highest supported version in case of `OncRpcRejectStatus.ONCRPC_RPC_MISMATCH` and `OncRpcAcceptStatus.ONCRPC_PROG_MISMATCH`.

#### authStatus

    public int authStatus

Contains the reason for authentification failure in the case of `OncRpcRejectStatus.ONCRPC_AUTH_ERROR`.

#### UNUSED_PARAMETER

    public static final int UNUSED_PARAMETER

Dummy, which can be used to identify unused parameters when constructing `OncRpcReplyMessage` objects.

See Also:
  Constant Field Values

### Constructor Detail

#### OncRpcReplyMessage

    public OncRpcReplyMessage()

Initializes a new `OncRpcReplyMessage` object to represent an invalid state. This default constructor should only be used if in the next step the real state of the reply message is immediately decoded from a XDR stream.

#### OncRpcReplyMessage

    public OncRpcReplyMessage(OncRpcCallMessage call,
                      int replyStatus,
                      int acceptStatus,
                      int rejectStatus,
                      int lowVersion,
                      int highVersion,
                      int authStatus)

Initializes a new `OncRpcReplyMessage` object and initializes its complete state from the given parameters.

Note that depending on the reply, acceptance and rejectance status some parameters are unused and can be specified as `UNUSED_PARAMETER`.

Parameters:
  `call` - The ONC/RPC call this reply message corresponds to.
  `replyStatus` - The reply status (see `OncRpcReplyStatus`).
  `acceptStatus` - The acceptance state (see `OncRpcAcceptStatus`).
  `rejectStatus` - The rejectance state (see `OncRpcRejectStatus`).
  `lowVersion` - lowest supported version.
  `highVersion` - highest supported version.
  `authStatus` - The autentication state (see `OncRpcAuthStatus`).