Defines the abstract base class for all encoding XDR streams.
Defines the abstract base class for all encoding XDR streams. An encoding XDR stream receives data in the form of Java data types and writes it to a data sink (for instance, network or memory buffer) in the platform-independent XDR format.

Derived classes need to implement the xdrEncodeInt(int) , xdrEncodeOpaque(byte[]) and xdrEncodeOpaque(byte[], int, int) methods to make this complete mess workable. Converted to C# using the db4o Sharpen tool.

コード例 #1
0
        public void xdrEncode(XdrEncodingStream xdr)
        {
            xdr.xdrEncodeBoolean(this._attributes_follow);

            if (this._attributes_follow)
            { this._attributes.xdrEncode(xdr); }
        }
コード例 #2
0
ファイル: MakeAttributes.cs プロジェクト: zjianliu/NFSClient
        public void xdrEncode(XdrEncodingStream xdr)
        {
            xdr.xdrEncodeBoolean(this._setmode);
            if (this._setmode)
            { xdr.xdrEncodeInt(this._mode.Mode); }

            xdr.xdrEncodeBoolean(this._setuid);
            if (this._setuid)
            { xdr.xdrEncodeInt(this._uid); }

            xdr.xdrEncodeBoolean(this._setgid);
            if (this._setgid)
            { xdr.xdrEncodeInt(this._gid); }

            xdr.xdrEncodeBoolean(this._setsize);
            if (this._setsize)
            { xdr.xdrEncodeLong(this._size); }

            xdr.xdrEncodeBoolean(this._setatime != TimeHow.DONT_CHANGE);
            if (this._setatime != TimeHow.DONT_CHANGE)
            { this._atime.xdrEncode(xdr); }

            xdr.xdrEncodeBoolean(this._setmtime != TimeHow.DONT_CHANGE);
            if (this._setmtime != TimeHow.DONT_CHANGE)
            { this._mtime.xdrEncode(xdr); }
        }
コード例 #3
0
ファイル: fs4_status.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr) {
     xdr.xdrEncodeInt(fss_type);
     fss_source.xdrEncode(xdr);
     fss_current.xdrEncode(xdr);
     xdr.xdrEncodeInt(fss_age);
     fss_version.xdrEncode(xdr);
 }
コード例 #4
0
ファイル: ssv_sp_parms4.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     { int _size = ssp_hash_algs.Length; xdr.xdrEncodeInt(_size); for ( int _idx = 0; _idx < _size; ++_idx ) { ssp_hash_algs[_idx].xdrEncode(xdr); } }
     { int _size = ssp_encr_algs.Length; xdr.xdrEncodeInt(_size); for ( int _idx = 0; _idx < _size; ++_idx ) { ssp_encr_algs[_idx].xdrEncode(xdr); } }
     xdr.xdrEncodeInt(ssp_window);
     xdr.xdrEncodeInt(ssp_num_gss_handles);
 }
コード例 #5
0
 public void xdrEncode(XdrEncodingStream xdr) {
     csa_sequenceid.xdrEncode(xdr);
     csa_slotid.xdrEncode(xdr);
     csa_highest_slotid.xdrEncode(xdr);
     xdr.xdrEncodeBoolean(csa_cachethis);
     { int _size = csa_referring_call_lists.Length; xdr.xdrEncodeInt(_size); for ( int _idx = 0; _idx < _size; ++_idx ) { csa_referring_call_lists[_idx].xdrEncode(xdr); } }
 }
コード例 #6
0
ファイル: WRITE4args.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     stateid.xdrEncode(xdr);
     offset.xdrEncode(xdr);
     xdr.xdrEncodeInt(stable);
     xdr.xdrEncodeDynamicOpaque(data);
 }
コード例 #7
0
ファイル: ReadArguments.cs プロジェクト: mushuanli/nekodrive
 public void xdrEncode(XdrEncodingStream xdr)
 {
     this._file.xdrEncode(xdr);
     xdr.xdrEncodeInt(this._offset);
     xdr.xdrEncodeInt(this._count);
     xdr.xdrEncodeInt(this._totalcount);
 }
コード例 #8
0
ファイル: ReadStatus.cs プロジェクト: mushuanli/nekodrive
 public void xdrEncode(XdrEncodingStream xdr)
 {
     this._attributes.xdrEncode(xdr);
     xdr.xdrEncodeInt(this._count);
     xdr.xdrEncodeBoolean(this._eof);
     xdr.xdrEncodeDynamicOpaque(this._data);
 }
コード例 #9
0
ファイル: open_claim4.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     xdr.xdrEncodeInt(claim);
     switch ( claim ) {
     case open_claim_type4.CLAIM_NULL:
         file.xdrEncode(xdr);
         break;
     case open_claim_type4.CLAIM_PREVIOUS:
         xdr.xdrEncodeInt(delegate_type);
         break;
     case open_claim_type4.CLAIM_DELEGATE_CUR:
         delegate_cur_info.xdrEncode(xdr);
         break;
     case open_claim_type4.CLAIM_DELEGATE_PREV:
         file_delegate_prev.xdrEncode(xdr);
         break;
     case open_claim_type4.CLAIM_FH:
         break;
     case open_claim_type4.CLAIM_DELEG_PREV_FH:
         break;
     case open_claim_type4.CLAIM_DELEG_CUR_FH:
         oc_delegate_stateid.xdrEncode(xdr);
         break;
     }
 }
コード例 #10
0
ファイル: WriteStatus.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     this._file_wcc.xdrEncode(xdr);
     xdr.xdrEncodeInt(this._count);
     xdr.xdrEncodeInt((int)this._committed);
     xdr.xdrEncodeOpaque(this._verf, NFSv3Protocol.NFS3_WRITEVERFSIZE);
 }
コード例 #11
0
 public void xdrEncode(XdrEncodingStream xdr)
 {
     gdda_notification_types.xdrEncode(xdr);
     gdda_child_attr_delay.xdrEncode(xdr);
     gdda_dir_attr_delay.xdrEncode(xdr);
     gdda_child_attributes.xdrEncode(xdr);
     gdda_dir_attributes.xdrEncode(xdr);
 }
コード例 #12
0
ファイル: authsys_parms.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     xdr.xdrEncodeInt(stamp);
     xdr.xdrEncodeString(machinename);
     xdr.xdrEncodeInt(uid);
     xdr.xdrEncodeInt(gid);
     xdr.xdrEncodeIntVector(gids);
 }
コード例 #13
0
ファイル: OPEN4resok.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     stateid.xdrEncode(xdr);
     cinfo.xdrEncode(xdr);
     rflags.xdrEncode(xdr);
     attrset.xdrEncode(xdr);
     delegation.xdrEncode(xdr);
 }
コード例 #14
0
ファイル: WriteArguments.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     this._file.xdrEncode(xdr);
     xdr.xdrEncodeInt(this._beginoffset);
     xdr.xdrEncodeInt(this._offset);
     xdr.xdrEncodeInt(this._totalcount);
     xdr.xdrEncodeDynamicOpaque(this._data);
 }
コード例 #15
0
 public void xdrEncode(XdrEncodingStream xdr) {
     loca_length.xdrEncode(xdr);
     xdr.xdrEncodeBoolean(loca_reclaim);
     loca_stateid.xdrEncode(xdr);
     loca_last_write_offset.xdrEncode(xdr);
     loca_time_modify.xdrEncode(xdr);
     loca_layoutupdate.xdrEncode(xdr);
 }
コード例 #16
0
ファイル: ssv_prot_info4.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     xdr.xdrEncodeInt(spi_hash_alg);
     xdr.xdrEncodeInt(spi_encr_alg);
     xdr.xdrEncodeInt(spi_ssv_len);
     xdr.xdrEncodeInt(spi_window);
     { int _size = spi_handles.Length; xdr.xdrEncodeInt(_size); for ( int _idx = 0; _idx < _size; ++_idx ) { spi_handles[_idx].xdrEncode(xdr); } }
 }
コード例 #17
0
ファイル: WriteArguments.cs プロジェクト: mushuanli/nekodrive
 public void xdrEncode(XdrEncodingStream xdr)
 {
     this._file.xdrEncode(xdr);
     xdr.xdrEncodeLong(this._offset);
     xdr.xdrEncodeInt(this._count);
     xdr.xdrEncodeInt((int)this._stable);
     xdr.xdrEncodeDynamicOpaque(this._data);
 }
コード例 #18
0
 public void xdrEncode(XdrEncodingStream xdr)
 {
     this._obj.xdrEncode(xdr);
     this._new_attributes.xdrEncode(xdr);
     xdr.xdrEncodeBoolean(this._guardcheck);
     if (this._guardcheck)
     { this._guardctime.xdrEncode(xdr); }
 }
コード例 #19
0
ファイル: Info.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     xdr.xdrEncodeInt(this._tsize);
     xdr.xdrEncodeInt(this._bsize);
     xdr.xdrEncodeInt(this._blocks);
     xdr.xdrEncodeInt(this._bfree);
     xdr.xdrEncodeInt(this._bavail);
 }
コード例 #20
0
 public void xdrEncode(XdrEncodingStream xdr)
 {
     csr_sessionid.xdrEncode(xdr);
     csr_sequence.xdrEncode(xdr);
     csr_flags.xdrEncode(xdr);
     csr_fore_chan_attrs.xdrEncode(xdr);
     csr_back_chan_attrs.xdrEncode(xdr);
 }
コード例 #21
0
 public void xdrEncode(XdrEncodingStream xdr)
 {
     this._dir.xdrEncode(xdr);
     this._cookie.xdrEncode(xdr);
     xdr.xdrEncodeOpaque(this._cookieverf, NFSv3Protocol.NFS3_COOKIEVERFSIZE);
     xdr.xdrEncodeInt(this._dircount);
     xdr.xdrEncodeInt(this._maxcount);
 }
コード例 #22
0
ファイル: SEQUENCE4args.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
     {
     sa_sessionid.xdrEncode(xdr);
     sa_sequenceid.xdrEncode(xdr);
     sa_slotid.xdrEncode(xdr);
     sa_highest_slotid.xdrEncode(xdr);
     xdr.xdrEncodeBoolean(sa_cachethis);
 }
コード例 #23
0
ファイル: READDIR4args.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     cookie.xdrEncode(xdr);
     cookieverf.xdrEncode(xdr);
     dircount.xdrEncode(xdr);
     maxcount.xdrEncode(xdr);
     attr_request.xdrEncode(xdr);
 }
コード例 #24
0
ファイル: OPEN4args.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr)
 {
     seqid.xdrEncode(xdr);
     share_access.xdrEncode(xdr);
     share_deny.xdrEncode(xdr);
     owner.xdrEncode(xdr);
     openhow.xdrEncode(xdr);
     claim.xdrEncode(xdr);
 }
コード例 #25
0
ファイル: locker4.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr) {
     xdr.xdrEncodeBoolean(new_lock_owner);
     if ( new_lock_owner == true ) {
         open_owner.xdrEncode(xdr);
     }
     else if ( new_lock_owner == false ) {
         lock_owner.xdrEncode(xdr);
     }
 }
コード例 #26
0
ファイル: Groups.cs プロジェクト: mushuanli/nekodrive
 public void xdrEncode(XdrEncodingStream xdr)
 {
     if (this._value != null)
     {
         xdr.xdrEncodeBoolean(true);
         this._value.xdrEncode(xdr);
     }
     else { xdr.xdrEncodeBoolean(false); };
 }
コード例 #27
0
ファイル: SEQUENCE4resok.cs プロジェクト: zjianliu/NFSClient
    public void xdrEncode(XdrEncodingStream xdr)
 {
        sr_sessionid.xdrEncode(xdr);
        sr_sequenceid.xdrEncode(xdr);
        sr_slotid.xdrEncode(xdr);
        sr_highest_slotid.xdrEncode(xdr);
        sr_target_highest_slotid.xdrEncode(xdr);
        sr_status_flags.xdrEncode(xdr);
    }
コード例 #28
0
        public void xdrEncode(XdrEncodingStream xdr)
        {
            xdr.xdrEncodeBoolean(this._handleexists);
            if (this._handleexists)
            { this._handle.xdrEncode(xdr); }

            this._attributes.xdrEncode(xdr);
            this._dir_wcc.xdrEncode(xdr);
        }
コード例 #29
0
ファイル: LAYOUTGET4args.cs プロジェクト: zjianliu/NFSClient
 public void xdrEncode(XdrEncodingStream xdr) {
     xdr.xdrEncodeInt(loga_layout_type);
     xdr.xdrEncodeInt(loga_iomode);
     loga_offset.xdrEncode(xdr);
     loga_length.xdrEncode(xdr);
     loga_minlength.xdrEncode(xdr);
     loga_stateid.xdrEncode(xdr);
     loga_maxcount.xdrEncode(xdr);
 }
コード例 #30
0
 public void xdrEncode(XdrEncodingStream xdr)
 {
     xdr.xdrEncodeInt(this._mode.Mode);
     xdr.xdrEncodeInt(this._uid);
     xdr.xdrEncodeInt(this._gid);
     xdr.xdrEncodeInt(this._size);
     this._atime.xdrEncode(xdr);
     this._mtime.xdrEncode(xdr);
 }