/*
 * Automatically generated by jrpcgen 1.0.7 on 29.11.2012
 * jrpcgen is part of the "Remote Tea.Net" ONC/RPC package for C#
 * See http://remotetea.sourceforge.net for details
 */
namespace NFSLibrary.Protocols.V4.RPC.Callback{
using org.acplt.oncrpc;

public class nfs_cb_resop4 : XdrAble {
    public int resop;
    public CB_GETATTR4res opcbgetattr;
    public CB_RECALL4res opcbrecall;
    public CB_LAYOUTRECALL4res opcblayoutrecall;
    public CB_NOTIFY4res opcbnotify;
    public CB_PUSH_DELEG4res opcbpush_deleg;
    public CB_RECALL_ANY4res opcbrecall_any;
    public CB_RECALLABLE_OBJ_AVAIL4res opcbrecallable_obj_avail;
    public CB_RECALL_SLOT4res opcbrecall_slot;
    public CB_SEQUENCE4res opcbsequence;
    public CB_WANTS_CANCELLED4res opcbwants_cancelled;
    public CB_NOTIFY_LOCK4res opcbnotify_lock;
    public CB_NOTIFY_DEVICEID4res opcbnotify_deviceid;
    public CB_ILLEGAL4res opcbillegal;

    public nfs_cb_resop4() {
    }

    public nfs_cb_resop4(XdrDecodingStream xdr) {
        xdrDecode(xdr);
    }

    public void xdrEncode(XdrEncodingStream xdr) {
        xdr.xdrEncodeInt(resop);
        switch ( resop ) {
        case nfs_cb_opnum4.OP_CB_GETATTR:
            opcbgetattr.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_RECALL:
            opcbrecall.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_LAYOUTRECALL:
            opcblayoutrecall.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_NOTIFY:
            opcbnotify.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_PUSH_DELEG:
            opcbpush_deleg.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_RECALL_ANY:
            opcbrecall_any.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_RECALLABLE_OBJ_AVAIL:
            opcbrecallable_obj_avail.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_RECALL_SLOT:
            opcbrecall_slot.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_SEQUENCE:
            opcbsequence.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_WANTS_CANCELLED:
            opcbwants_cancelled.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_NOTIFY_LOCK:
            opcbnotify_lock.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_NOTIFY_DEVICEID:
            opcbnotify_deviceid.xdrEncode(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_ILLEGAL:
            opcbillegal.xdrEncode(xdr);
            break;
        }
    }

    public void xdrDecode(XdrDecodingStream xdr) {
        resop = xdr.xdrDecodeInt();
        switch ( resop ) {
        case nfs_cb_opnum4.OP_CB_GETATTR:
            opcbgetattr = new CB_GETATTR4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_RECALL:
            opcbrecall = new CB_RECALL4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_LAYOUTRECALL:
            opcblayoutrecall = new CB_LAYOUTRECALL4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_NOTIFY:
            opcbnotify = new CB_NOTIFY4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_PUSH_DELEG:
            opcbpush_deleg = new CB_PUSH_DELEG4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_RECALL_ANY:
            opcbrecall_any = new CB_RECALL_ANY4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_RECALLABLE_OBJ_AVAIL:
            opcbrecallable_obj_avail = new CB_RECALLABLE_OBJ_AVAIL4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_RECALL_SLOT:
            opcbrecall_slot = new CB_RECALL_SLOT4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_SEQUENCE:
            opcbsequence = new CB_SEQUENCE4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_WANTS_CANCELLED:
            opcbwants_cancelled = new CB_WANTS_CANCELLED4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_NOTIFY_LOCK:
            opcbnotify_lock = new CB_NOTIFY_LOCK4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_NOTIFY_DEVICEID:
            opcbnotify_deviceid = new CB_NOTIFY_DEVICEID4res(xdr);
            break;
        case nfs_cb_opnum4.OP_CB_ILLEGAL:
            opcbillegal = new CB_ILLEGAL4res(xdr);
            break;
        }
    }

}
} // End of nfs_cb_resop4.cs
