Example #1
0
        public bool Get(long key, ref DataVar dv, Transaction txn)
        {
            IntPtr pBuf   = dv.bufferPointer;
            int    buflen = dv.bufferLength;
            int    dlen   = dv.dataLength;
            int    dofft  = dv.dataOffset;
            int    eflag  = (int)dv.opsFlag;

            int retval = BangDBNative.GetAdvancedTran(_connection, key, ref pBuf, buflen, ref dlen, dofft, ref eflag, txn.GetTranPtr());

            dv.opsFlag       = (BangDBDataOpsFlag)eflag;
            dv.bufferPointer = pBuf;
            dv.dataLength    = dlen;
            return(retval < 0 ? false : true);
        }
Example #2
0
        public bool Get(byte[] key, ref DataVar dv, Transaction txn)
        {
            if (key == null)
            {
                throw new Exception("key can't be null");
            }

            IntPtr pBuf   = dv.bufferPointer;
            int    buflen = dv.bufferLength;
            int    dlen   = dv.dataLength;
            int    dofft  = dv.dataOffset;
            int    eflag  = (int)dv.opsFlag;

            int retval = BangDBNative.GetAdvancedTran(_connection, key, key.Length, ref pBuf, buflen, ref dlen, dofft, ref eflag, txn.GetTranPtr());

            dv.opsFlag       = (BangDBDataOpsFlag)eflag;
            dv.bufferPointer = pBuf;
            dv.dataLength    = dlen;
            return(retval < 0 ? false : true);
        }