/*
 * 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
 */
using NFSLibrary.Protocols.Commons;
using org.acplt.oncrpc;

namespace NFSLibrary.Protocols.V3.RPC
{
    public class PathConfigurationAccessOK : XdrAble
    {
        private PostOperationAttributes _obj_attributes;
        private int _linkmax;
        private int _name_max;
        private bool _no_trunc;
        private bool _chown_restricted;
        private bool _case_insensitive;
        private bool _case_preserving;

        public PathConfigurationAccessOK()
        { }

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

        public void xdrEncode(XdrEncodingStream xdr)
        {
            this._obj_attributes.xdrEncode(xdr);
            xdr.xdrEncodeInt(this._linkmax);
            xdr.xdrEncodeInt(this._name_max);
            xdr.xdrEncodeBoolean(this._no_trunc);
            xdr.xdrEncodeBoolean(this._chown_restricted);
            xdr.xdrEncodeBoolean(this._case_insensitive);
            xdr.xdrEncodeBoolean(this._case_preserving);
        }

        public void xdrDecode(XdrDecodingStream xdr)
        {
            this._obj_attributes = new PostOperationAttributes(xdr);
            this._linkmax = xdr.xdrDecodeInt();
            this._name_max = xdr.xdrDecodeInt();
            this._no_trunc = xdr.xdrDecodeBoolean();
            this._chown_restricted = xdr.xdrDecodeBoolean();
            this._case_insensitive = xdr.xdrDecodeBoolean();
            this._case_preserving = xdr.xdrDecodeBoolean();
        }

        public PostOperationAttributes Attributes
        {
            get
            { return this._obj_attributes; }
        }

        public int MaximumHardLinks
        {
            get
            { return this._linkmax; }
        }

        public int MaximumNameLength
        {
            get
            { return this._name_max; }
        }

        public bool NoTrunticate
        {
            get
            { return this._no_trunc; }
        }

        public bool CHOWNRestricted
        {
            get
            { return this._chown_restricted; }
        }

        public bool CaseInsensitive
        {
            get
            { return this._case_insensitive; }
        }

        public bool CasePreserving
        {
            get
            { return this._case_preserving; }
        }
    }

    public class PathConfigurationAccessFAIL : XdrAble
    {
        private PostOperationAttributes _obj_attributes;

        public PathConfigurationAccessFAIL()
        { }

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

        public void xdrEncode(XdrEncodingStream xdr)
        { this._obj_attributes.xdrEncode(xdr); }

        public void xdrDecode(XdrDecodingStream xdr)
        { this._obj_attributes = new PostOperationAttributes(xdr); }

        public PostOperationAttributes Attributes
        {
            get
            { return this._obj_attributes; }
        }
    }
    // End of PATHCONF3res.cs
}