Exemplo n.º 1
0
 /// <exception cref="VPackException"/>
 public BaseEdgeDocument deserialize(VPackSlice
                                     parent, VPackSlice vpack, VPackDeserializationContext
                                     context)
 {
     return(new BaseEdgeDocument(context.deserialize <System.Collections.IDictionary
                                                      >(vpack)));
 }
Exemplo n.º 2
0
                                                                           > buildChunks(Message message)
        {
            System.Collections.Generic.ICollection <Chunk>
            chunks = new System.Collections.Generic.List <Chunk
                                                          >();
            VPackSlice head = message.getHead();
            int        size = head.getByteSize();
            VPackSlice body = message.getBody();

            if (body != null)
            {
                size += body.getByteSize();
            }
            int n = size / this.chunksize;
            int numberOfChunks = size % this.chunksize != 0 ? n + 1 : n;
            int off            = 0;

            for (int i = 0; size > 0; i++)
            {
                int   len           = System.Math.min(this.chunksize, size);
                long  messageLength = i == 0 && numberOfChunks > 1 ? size : -1L;
                Chunk chunk         = new Chunk
                                          (message.getId(), i, numberOfChunks, messageLength, off, len);
                size -= len;
                off  += len;
                chunks.add(chunk);
            }
            return(chunks);
        }
Exemplo n.º 3
0
 /// <exception cref="VPackException"/>
 public override decimal Deserialize(
     VPackSlice parent,
     VPackSlice vpack,
     VPackDeserializationContext context)
 {
     return(vpack.AsNumber);
 }
Exemplo n.º 4
0
                                                           > deserialize(Response response)
            {
                VPackSlice result = response.getBody().get(ArangoDBConstants
                                                           .RESULT);

                return(this._enclosing.executor.Deserialize(result, new _Type_94().getType()));
            }
Exemplo n.º 5
0
 /// <exception cref="VPackException"/>
 public override BigInteger Deserialize(
     VPackSlice parent,
     VPackSlice vpack,
     VPackDeserializationContext context)
 {
     return(vpack.AsBigInteger);
 }
Exemplo n.º 6
0
        public void AddVPackObject()
        {
            VPackBuilder builder = new VPackBuilder();

            builder.Add(SliceType.Object);
            {
                VPackBuilder builder2 = new VPackBuilder();
                builder2.Add(SliceType.Object);
                builder2.Add("s", "test");
                builder2.Close();
                builder.Add("o", builder2.Slice());
            }
            builder.Close();
            VPackSlice slice = builder.Slice();

            Assert.NotNull(slice);

            Assert.True(slice.IsType(SliceType.Object));

            Assert.True(slice["o"].IsType(SliceType.Object));

            Assert.True(slice["o"]["s"].IsType(SliceType.String));

            Assert.Equal(slice["o"]["s"].ToStringValue(), "test");

            Assert.Equal(slice.Length, 1);

            Assert.Equal(slice["o"].Length, 1);
        }
Exemplo n.º 7
0
        public void AddVPackObjectInArray()
        {
            VPackBuilder builder = new VPackBuilder();

            builder.Add(SliceType.Array);
            for (int i = 0; i < 10; i++)
            {
                VPackBuilder builder2 = new VPackBuilder();
                builder2.Add(SliceType.Object);
                builder2.Add("s", "test");
                builder2.Close();
                builder.Add(builder2.Slice());
            }
            builder.Close();
            VPackSlice slice = builder.Slice();

            Assert.NotNull(slice);

            Assert.True(slice.IsType(SliceType.Array));

            Assert.Equal(slice.Length, 10);
            for (int i = 0; i < 10; i++)
            {
                Assert.True(slice[i].IsType(SliceType.Object));

                Assert.True(slice[i]["s"].IsType(SliceType.String));

                Assert.Equal(slice[i]["s"].ToStringValue(), "test");

                Assert.Equal(slice[i].Length, 1);
            }
        }
Exemplo n.º 8
0
        public void Object2ByteOffset()
        {
            VPackBuilder builder = new VPackBuilder();

            builder.Add(SliceType.Object);
            int size = 10;

            for (int i = 0; i < size; i++)
            {
                builder.Add(i.ToString(), SliceType.Object);
                for (int j = 0; j < size; j++)
                {
                    builder.Add(j.ToString(), "test");
                }
                builder.Close();
            }
            builder.Close();
            VPackSlice vpack = builder.Slice();

            Assert.True(vpack.IsType(SliceType.Object));

            Assert.Equal(vpack.Length, size);
            for (int i = 0; i < size; i++)
            {
                VPackSlice attr = vpack[i.ToString()];

                Assert.True(attr.IsType(SliceType.Object));
                for (int j = 0; j < size; j++)
                {
                    VPackSlice childAttr = attr[j.ToString()];

                    Assert.True(childAttr.IsType(SliceType.String));
                }
            }
        }
Exemplo n.º 9
0
            /// <exception cref="VPackException"/>
            public string deserialize(VPackSlice parent, VPackSlice
                                      vpack, VPackDeserializationContext context)
            {
                string id;

                if (vpack.isCustom())
                {
                    long idLong = NumberUtil.toLong(vpack.getBuffer
                                                        (), vpack.getStart() + 1, vpack.getByteSize() - 1);
                    string collectionName = this.cache.getCollectionName(idLong);
                    if (collectionName != null)
                    {
                        VPackSlice key = parent.get("_key");
                        id = string.format("%s/%s", collectionName, key.getAsString());
                    }
                    else
                    {
                        id = null;
                    }
                }
                else
                {
                    id = vpack.getAsString();
                }
                return(id);
            }
Exemplo n.º 10
0
        public void UnindexedArray()
        {
            long[]       expected = { 1, 16 };
            VPackBuilder builder  = new VPackBuilder();

            builder.GetOptions().SetBuildUnindexedArrays(true);
            builder.Add(SliceType.Array, false);
            foreach (var l in expected)
            {
                builder.Add(l);
            }
            builder.Close();

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsType(SliceType.Array));

            Assert.Equal(slice.Length, 2);
            for (int i = 0; i < expected.Length; i++)
            {
                VPackSlice at = slice[i];

                Assert.True(at.IsInteger());

                Assert.Equal(at.ToInt64(), expected[i]);
            }
        }
Exemplo n.º 11
0
        public void CompactArray()
        {
            long[]       expected = { 1, 16 };
            VPackBuilder builder  = new VPackBuilder();

            builder.Add(SliceType.Array, true);
            foreach (var l in expected)
            {
                builder.Add(l);
            }
            builder.Close();

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsType(SliceType.Array));

            Assert.Equal(slice.Length, 2);
            for (int i = 0; i < expected.Length; i++)
            {
                VPackSlice at = slice[i];

                Assert.True(at.IsNumeric());

                Assert.Equal(at.ToInt64(), expected[i]);
            }
        }
Exemplo n.º 12
0
            /// <exception cref="VPackException"/>
            public System.Collections.Generic.ICollection <UserEntity> deserialize
                (Response response)
            {
                VPackSlice result = response.getBody().get(ArangoDBConstants
                                                           .RESULT);

                return(this._enclosing.executor.Deserialize(result, new _Type_146().getType()));
            }
Exemplo n.º 13
0
 public Message(long id, VPackSlice head, VPackSlice
                body)
     : base()
 {
     this.id   = id;
     this.head = head;
     this.body = body;
 }
Exemplo n.º 14
0
        public void ArrayInArrayInArray()
        {
            //{ { { 1, 2, 3 } } }
            long[][][] values = new long[1][][];
            values[0]    = new long[1][];
            values[0][0] = new long[] { 1, 2, 3 };

            VPackBuilder builder = new VPackBuilder();

            builder.Add(SliceType.Array);
            foreach (var lss in values)
            {
                builder.Add(SliceType.Array);
                foreach (var ls in lss)
                {
                    builder.Add(SliceType.Array);
                    foreach (var l in ls)
                    {
                        builder.Add(l);
                    }
                    builder.Close();
                }
                builder.Close();
            }
            builder.Close();

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsType(SliceType.Array));

            Assert.Equal(slice.Length, values.Length);
            for (int i = 0; i < values.Length; i++)
            {
                VPackSlice lls = slice[i];

                Assert.True(lls.IsType(SliceType.Array));

                Assert.Equal(lls.Length, values[i].Length);
                for (int j = 0; j < values[i].Length; j++)
                {
                    VPackSlice ls = lls[i];

                    Assert.True(ls.IsType(SliceType.Array));

                    Assert.Equal(ls.Length, values[i][j].Length);
                    for (int k = 0; k < values[i][j].Length; k++)
                    {
                        VPackSlice l = ls[k];

                        Assert.True(l.IsInteger());

                        Assert.Equal(l.ToInt64(), values[i][j][k]);
                    }
                }
            }
        }
Exemplo n.º 15
0
        public void AddNull()
        {
            VPackBuilder builder = new VPackBuilder();

            builder.Add(SliceType.Null);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsType(SliceType.Null));
        }
Exemplo n.º 16
0
        public void AddNull()
        {
            VPackBuilder builder = new VPackBuilder();

            builder.Add(ValueType.NULL);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsNull);
        }
Exemplo n.º 17
0
        public void AddBooleanFalse()
        {
            VPackBuilder builder = new VPackBuilder();

            builder.Add(false);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsBoolean);
            Assert.False(slice.AsBoolean);
        }
Exemplo n.º 18
0
 public Request(string database, RequestType requestType
                , string path)
     : base()
 {
     this.database    = database;
     this.requestType = requestType;
     this.request     = path;
     this.body        = null;
     this.queryParam  = new System.Collections.Generic.Dictionary <string, string>();
     this.headerParam = new System.Collections.Generic.Dictionary <string, string>();
 }
Exemplo n.º 19
0
        public void AddStringLong()
        {
            VPackBuilder builder = new VPackBuilder();
            const string VALUE   = "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus.";

            builder.Add(VALUE);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsString);
            Assert.Equal(VALUE, slice.AsString);
        }
Exemplo n.º 20
0
        public void AddStringShort()
        {
            VPackBuilder builder = new VPackBuilder();
            const string VALUE   = "Hallo Welt!";

            builder.Add(VALUE);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsString);
            Assert.Equal(VALUE, slice.AsString);
        }
Exemplo n.º 21
0
        public void AddDate()
        {
            VPackBuilder builder = new VPackBuilder();
            DateTime     value   = DateTime.Now;

            builder.Add(value);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsDate);
            Assert.Equal(value, slice.AsDate);
        }
Exemplo n.º 22
0
        public void AddBigIntegerAsUInt()
        {
            VPackBuilder builder = new VPackBuilder();
            BigInteger   value   = new BigInteger(long.MaxValue);

            builder.Add(value, ValueType.UINT);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsUInt);
            Assert.Equal(value, slice.AsBigInteger);
        }
Exemplo n.º 23
0
        public void AddLongAsUInt()
        {
            VPackBuilder builder = new VPackBuilder();
            const long   VALUE   = long.MaxValue;

            builder.Add(VALUE, ValueType.UINT);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsUInt);
            Assert.Equal(VALUE, slice.AsLong);
        }
Exemplo n.º 24
0
        public void AddIntegerAsInt()
        {
            VPackBuilder builder = new VPackBuilder();
            const int    VALUE   = int.MaxValue;

            builder.Add(VALUE);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsInt);
            Assert.Equal(VALUE, slice.AsInt);
        }
Exemplo n.º 25
0
        public void AddBigIntegerAsSmallIntMax()
        {
            VPackBuilder builder = new VPackBuilder();
            BigInteger   value   = new BigInteger(9);

            builder.Add(value, ValueType.SMALLINT);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsSmallInt);
            Assert.Equal(value, slice.AsBigInteger);
        }
Exemplo n.º 26
0
        public void AddLongAsSmallIntMax()
        {
            VPackBuilder builder = new VPackBuilder();
            const long   VALUE   = 9;

            builder.Add(VALUE);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsSmallInt);
            Assert.Equal(VALUE, slice.AsLong);
        }
Exemplo n.º 27
0
        public void AddBooleanFalse()
        {
            VPackBuilder builder = new VPackBuilder();

            builder.Add(false);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsType(SliceType.Boolean));

            Assert.False(slice.ToBoolean());
        }
Exemplo n.º 28
0
        public void AddDouble()
        {
            VPackBuilder builder = new VPackBuilder();
            const double VALUE   = Double.MaxValue;

            builder.Add(VALUE);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsDouble);
            Assert.Equal(VALUE, slice.AsDouble);
        }
Exemplo n.º 29
0
        public void AddIntegerAsSmallIntMax()
        {
            VPackBuilder builder = new VPackBuilder();
            const int    VALUE   = 9;

            builder.Add(VALUE);

            VPackSlice slice = builder.Slice();

            Assert.True(slice.IsSmallInt);
            Assert.Equal(VALUE, slice.AsInt);
        }
Exemplo n.º 30
0
            /// <exception cref="VPackException"/>
            public Response deserialize(VPackSlice
                                        parent, VPackSlice vpack, VPackDeserializationContext
                                        context)
            {
                Response response = new Response
                                        ();

                response.setVersion(vpack.get(0).getAsInt());
                response.setType(vpack.get(1).getAsInt());
                response.setResponseCode(vpack.get(2).getAsInt());
                return(response);
            }