@Override public void writeMessageBegin(TMessage message) throws TException { final Context context = isRequestFlag ? InvocationContext.Factory.getCurrentInstance() : TransactionContext.Factory.getCurrentInstance(); if (realHeaderProtocol == null) { realHeaderProtocol = new TBinaryProtocol(getTransport()); } // length(int32) stx(int8) version(string) protocol(int8) seqid(int32) header(struct) body(struct) etx(int8) realHeaderProtocol.writeByte(STX); realHeaderProtocol.writeString(VERSION); realHeaderProtocol.writeByte(context.getCodecProtocol().getCode()); realHeaderProtocol.writeI32(context.getSeqid()); switch (context.getCodecProtocol()) { case Binary: realContentProtocol = new TBinaryProtocol(getTransport()); break; case CompressedBinary: realContentProtocol = new TCompactProtocol(getTransport()); break; case Json: realContentProtocol = new TJSONProtocol(getTransport()); break; case Xml: realContentProtocol = null; break; } new SoaHeaderSerializer().write(context.getHeader(), this); realContentProtocol.writeMessageBegin(message); }
@Override public void writeMessageBegin(TMessage message) throws TException { final Context context = isRequestFlag ? InvocationContext.Factory.getCurrentInstance() : TransactionContext.Factory.getCurrentInstance(); if (realHeaderProtocol == null) { realHeaderProtocol = new TBinaryProtocol(getTransport()); } // length(int32) stx(int8) version(string) protocol(int8) seqid(int32) header(struct) body(struct) etx(int8) realHeaderProtocol.writeByte(STX); realHeaderProtocol.writeString(VERSION); realHeaderProtocol.writeByte(context.getCodecProtocol().getCode()); realHeaderProtocol.writeI32(context.getSeqid()); switch (context.getCodecProtocol()) { case Binary: realContentProtocol = new TBinaryProtocol(getTransport()); break; case CompressedBinary: realContentProtocol = new TCompactProtocol(getTransport()); break; case Json: realContentProtocol = new TJSONProtocol(getTransport()); break; case Xml: realContentProtocol = null; break; } new SoaHeaderSerializer().write(context.getHeader(), this); realContentProtocol.writeMessageBegin(message); }
public static CodecProtocol toCodecProtocol(byte code) { CodecProtocol[] values = CodecProtocol.values(); for (CodecProtocol protocol : values) { if (protocol.getCode() == code) return protocol; } return null; } }
public static CodecProtocol toCodecProtocol(byte code) { CodecProtocol[] values = CodecProtocol.values(); for (CodecProtocol protocol : values) { if (protocol.getCode() == code) return protocol; } return null; } }