Package mungbean.protocol

Examples of mungbean.protocol.LittleEndianDataWriter


    protected abstract Type newInstance();

    @Override
    protected void encode(AbstractBSONCoders bson, Type l, LittleEndianDataWriter writer) {
        ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
        LittleEndianDataWriter out = new LittleEndianDataWriter(byteOut);
        Iterable<KeyValuePair<Integer, ItemType>> values = valuesOf(l);
        for (KeyValuePair<Integer, ItemType> pair : values) {
            ItemType value = pair.value();
            bson.forValue(value).write(bson, String.valueOf(pair.key()), value, out);
        }
View Full Code Here


    protected abstract Iterable<KeyValuePair<String, Object>> entriesOf(T item);

    @Override
    public void encode(AbstractBSONCoders bson, T o, LittleEndianDataWriter writer) {
        ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
        LittleEndianDataWriter localWriter = new LittleEndianDataWriter(byteOut);
        for (KeyValuePair<String, Object> entry : entriesOf(o)) {
            bson.forValue(entry.value()).write(bson, entry.key(), entry.value(), localWriter);
        }
        byte[] bytes = byteOut.toByteArray();
        writer.writeInt(bytes.length + 4 + 1);
View Full Code Here

        return false;
    }

    public BSON write(AbstractBSONCoders bson, JavaType o) {
        ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
        encode(bson, o, new LittleEndianDataWriter(byteOut));
        return new BSON(byteOut.toByteArray());
    }
View Full Code Here

                            put("brr", Arrays.asList(new Integer[] { 1, 2, 3, 4, 5, 6 }));
                        }
                    });
                }
            };
            context.write(new MapBSONCoders(), "foo", map, new LittleEndianDataWriter(out));
            specify(out.toByteArray(), does.containExactly(MAP_FIXTURE));
        }
View Full Code Here

            return new BSONBoolean();
        }

        public void trueBooleanCanBeEncodedIntoBson() {
            ByteArrayOutputStream out = new ByteArrayOutputStream();
            context.write(new MapBSONCoders(), "foo", true, new LittleEndianDataWriter(out));
            specify(out.toByteArray(), does.containExactly(new byte[] { 8, 'f', 'o', 'o', 0, 1 }));
        }
View Full Code Here

            specify(out.toByteArray(), does.containExactly(new byte[] { 8, 'f', 'o', 'o', 0, 1 }));
        }

        public void falseBooleanCanBeEncodedIntoBson() {
            ByteArrayOutputStream out = new ByteArrayOutputStream();
            context.write(new MapBSONCoders(), "foo", false, new LittleEndianDataWriter(out));
            specify(out.toByteArray(), does.containExactly(new byte[] { 8, 'f', 'o', 'o', 0, 0 }));
        }
View Full Code Here

            return new BSONString();
        }

        public void stringValueCanBeEncodedIntoBson() {
            ByteArrayOutputStream out = new ByteArrayOutputStream();
            context.write(new MapBSONCoders(), "foo", "bar", new LittleEndianDataWriter(out));
            specify(out.toByteArray(), does.containExactly(new byte[] { 2, 'f', 'o', 'o', 0, 0, 0, 0, 4, 'b', 'a', 'r', 0 }));
        }
View Full Code Here

            return new BSONNumber();
        }

        public void doubleValueCanBeEncodedIntoBson() {
            ByteArrayOutputStream out = new ByteArrayOutputStream();
            context.write(new MapBSONCoders(), "foo", 123D, new LittleEndianDataWriter(out));
            specify(out.toByteArray(), does.containExactly(new byte[] { 1, 'f', 'o', 'o', 0, 0, 0, 0, 0, 0, -64, 94, 64 }));
        }
View Full Code Here

        }

        public void listWithIntegersCanBeEncodedIntoBson() {
            ByteArrayOutputStream out = new ByteArrayOutputStream();
            List<Integer> input = Arrays.asList(1, 2);
            LittleEndianDataWriter leWriter = new LittleEndianDataWriter(out);
            context.encode(new MapBSONCoders(), input, leWriter);
            specify(out.toByteArray(), does.containExactly(new byte[] { 19, 0, 0, 0, 16, 48, 0, 1, 0, 0, 0, 16, 49, 0, 2, 0, 0, 0, 0 }));
        }
View Full Code Here

                {
                    put("foo", 1);
                    put("bar", "zap");
                }
            };
            context.write(new MapBSONCoders(), "foo", map, new LittleEndianDataWriter(out));
            specify(out.toByteArray(), does.containExactly(MAP_FIXTURE));
        }
View Full Code Here

TOP

Related Classes of mungbean.protocol.LittleEndianDataWriter

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.