Package org.apache.qpid.transport.codec

Examples of org.apache.qpid.transport.codec.BBEncoder


        send(enc);
    }

    protected void schemaResponse(long seq, ClassBinding cb)
    {
        BBEncoder enc = init('s', seq);
        cb.encode(enc);
        send(enc);
    }
View Full Code Here


        send(enc);
    }

    protected void content(char c, long seq, Destination dest, ManagedObject mo)
    {
        BBEncoder enc = init(c, seq);
        ClassBinding cb = getClassBinding(mo);
        String pkg = cb.getPackage();
        String cls = cb.getName();
        enc.writeStr8(pkg);
        enc.writeStr8(cls);
        enc.writeBin128(cb.getSchemaHash());
        long now = System.currentTimeMillis() * 1000000;
        enc.writeUint64(now);
        enc.writeUint64(now);
        enc.writeUint64(0);
        enc.writeUint64(0x0000FFFFFFFFFFFFL & ((bbank << 28) | abank));
        enc.writeUint64(mo.getId());
        for (PropertyBinding p : cb.getProperties())
        {
            p.getType().encode(enc, mo.get(p));
        }
        if (dest == null)
View Full Code Here

        }
    }

    protected void complete(long seq, Destination dest)
    {
        BBEncoder enc = init('z', seq);
        enc.writeUint32(0);
        enc.writeStr8("");
        send(dest, enc);
    }
View Full Code Here

    }

    protected void methodResponse(long seq, Destination dest, int status,
            String text, MethodBinding method, Object[] result)
    {
        BBEncoder enc = init('m', seq);
        enc.writeUint32(status);
        enc.writeStr16(text == null ? "" : text);
        if (method != null)
        {
            int idx = 0;
            for (ParameterBinding p : method.getOutParameters())
            {
View Full Code Here

        return buf;
    }

    private void method(Method method, SegmentType type)
    {
        BBEncoder enc = encoder.get();
        enc.init();
        enc.writeUint16(method.getEncodedType());
        if (type == SegmentType.COMMAND)
        {
            if (method.isSync())
            {
                enc.writeUint16(0x0101);
            }
            else
            {
                enc.writeUint16(0x0100);
            }
        }
        method.write(enc);
        ByteBuffer methodSeg = enc.segment();

        byte flags = FIRST_SEG;

        boolean payload = method.hasPayload();
        if (!payload)
        {
            flags |= LAST_SEG;
        }

        ByteBuffer headerSeg = null;
        if (payload)
        {
            final Header hdr = method.getHeader();
            if (hdr != null)
            {
                final Struct[] structs = hdr.getStructs();

                for (Struct st : structs)
                {
                    enc.writeStruct32(st);
                }
            }
            headerSeg = enc.segment();
        }

        synchronized (sendlock)
        {
            fragment(flags, type, method, methodSeg);
View Full Code Here

    }

    @ Override
    protected void writeMapToData()
    {
        BBEncoder encoder = new BBEncoder(1024);
        encoder.writeMap(_map);
        _data = ByteBuffer.wrap(encoder.segment());
    }
View Full Code Here

        return buf;
    }

    private void method(Method method, SegmentType type)
    {
        BBEncoder enc = encoder.get();
        enc.init();
        enc.writeUint16(method.getEncodedType());
        if (type == SegmentType.COMMAND)
        {
            if (method.isSync())
            {
                enc.writeUint16(0x0101);
            }
            else
            {
                enc.writeUint16(0x0100);
            }
        }
        method.write(enc);
        ByteBuffer methodSeg = enc.segment();

        byte flags = FIRST_SEG;

        boolean payload = method.hasPayload();
        if (!payload)
        {
            flags |= LAST_SEG;
        }

        ByteBuffer headerSeg = null;
        if (payload)
        {
            final Header hdr = method.getHeader();
            if (hdr != null)
            {
                final Struct[] structs = hdr.getStructs();

                for (Struct st : structs)
                {
                    enc.writeStruct32(st);
                }
            }
            headerSeg = enc.segment();
        }

        synchronized (sendlock)
        {
            fragment(flags, type, method, methodSeg);
View Full Code Here

    // The super clas methods resets the buffer
    @ Override
    public ByteBuffer getData()
    {
        BBEncoder encoder = new BBEncoder(1024);
        encoder.writeMap(getMap());
        return encoder.segment();
    }
View Full Code Here


    public QMFMessage(String routingKey, QMFCommand[] commands)
    {
        _routingKey = routingKey;
        BBEncoder encoder = new BBEncoder(256);

        for(QMFCommand cmd : commands)
        {
            cmd.encode(encoder);
        }


        _content = encoder.buffer();
    }
View Full Code Here

        {
            return (byte[]) object;
        }
        else if(object instanceof Map)
        {
            BBEncoder encoder = new BBEncoder(1024);
            encoder.writeMap((Map)object);
            ByteBuffer buf = encoder.segment();
            int remaining = buf.remaining();
            byte[] data = new byte[remaining];
            buf.get(data);
            return data;

        }
        else if(object instanceof List)
        {
            BBEncoder encoder = new BBEncoder(1024);
            encoder.writeList((List) object);
            ByteBuffer buf = encoder.segment();
            int remaining = buf.remaining();
            byte[] data = new byte[remaining];
            buf.get(data);
            return data;
        }
View Full Code Here

TOP

Related Classes of org.apache.qpid.transport.codec.BBEncoder

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.