@Nullable private static String toHeaderValue(MessageBytes value) { switch (value.getType()) { case MessageBytes.T_BYTES: { final ByteChunk chunk = value.getByteChunk(); return new String(chunk.getBuffer(), chunk.getOffset(), chunk.getLength(), StandardCharsets.US_ASCII); } case MessageBytes.T_CHARS: { final CharChunk chunk = value.getCharChunk(); return new String(chunk.getBuffer(), chunk.getOffset(), chunk.getLength()); } case MessageBytes.T_STR: { return value.getString(); } } return null; } }
@Nullable private static AsciiString toHeaderName(MessageBytes value) { switch (value.getType()) { case MessageBytes.T_BYTES: { final ByteChunk chunk = value.getByteChunk(); return new AsciiString(chunk.getBuffer(), chunk.getOffset(), chunk.getLength(), true); } case MessageBytes.T_CHARS: { final CharChunk chunk = value.getCharChunk(); return new AsciiString(chunk.getBuffer(), chunk.getOffset(), chunk.getLength()); } case MessageBytes.T_STR: { return HttpHeaderNames.of(value.getString()); } } return null; }
public void append( CharChunk src ) throws IOException { append( src.getBuffer(), src.getOffset(), src.getLength()); }
public void append( CharChunk src ) throws IOException { append( src.getBuffer(), src.getOffset(), src.getLength()); }
public void append( CharChunk src ) throws IOException { append( src.getBuffer(), src.getOffset(), src.getLength()); }
public void append( CharChunk src ) throws IOException { append( src.getBuffer(), src.getOffset(), src.getLength()); }
public void append( CharChunk src ) throws IOException { append( src.getBuffer(), src.getOffset(), src.getLength()); }
public boolean equals(CharChunk cc) { return equals( cc.getChars(), cc.getOffset(), cc.getLength()); }
public void append( CharChunk src ) throws IOException { append( src.getBuffer(), src.getOffset(), src.getLength()); }
public void append( CharChunk src ) throws IOException { append( src.getBuffer(), src.getOffset(), src.getLength()); }
public boolean equals(CharChunk cc) { return equals( cc.getChars(), cc.getOffset(), cc.getLength()); }
public boolean equals(CharChunk cc) { return equals( cc.getChars(), cc.getOffset(), cc.getLength()); }
public boolean equals(CharChunk cc) { return equals( cc.getChars(), cc.getOffset(), cc.getLength()); }
public boolean equals(CharChunk cc) { return equals( cc.getChars(), cc.getOffset(), cc.getLength()); }
public boolean equals(CharChunk cc) { return equals(cc.getChars(), cc.getOffset(), cc.getLength()); }
public boolean equals(CharChunk cc) { return equals( cc.getChars(), cc.getOffset(), cc.getLength()); }
public void append(CharChunk src) throws IOException { append(src.getBuffer(), src.getOffset(), src.getLength()); }
public boolean equals(CharChunk cc) { return equals( cc.getChars(), cc.getOffset(), cc.getLength()); }
public void processParameters( MessageBytes data, String encoding ) { if( data==null || data.isNull() || data.getLength() <= 0 ) return; if( data.getType() == MessageBytes.T_BYTES ) { ByteChunk bc=data.getByteChunk(); processParameters( bc.getBytes(), bc.getOffset(), bc.getLength(), encoding); } else { if (data.getType()!= MessageBytes.T_CHARS ) data.toChars(); CharChunk cc=data.getCharChunk(); processParameters( cc.getChars(), cc.getOffset(), cc.getLength()); } }
/** Convert a message bytes chars to bytes */ public final void convert(MessageBytes mb ) throws IOException { int type=mb.getType(); if( type==MessageBytes.T_BYTES ) return; ByteChunk orig=bb; setByteChunk( mb.getByteChunk()); bb.recycle(); bb.allocate( 32, -1 ); if( type==MessageBytes.T_STR ) { convert( mb.getString() ); // System.out.println("XXX Converting " + mb.getString() ); } else if( type==MessageBytes.T_CHARS ) { CharChunk charC=mb.getCharChunk(); convert( charC.getBuffer(), charC.getOffset(), charC.getLength()); //System.out.println("XXX Converting " + mb.getCharChunk() ); } else { if (log.isDebugEnabled()) log.debug("XXX unknowon type " + type ); } flushBuffer(); //System.out.println("C2B: XXX " + bb.getBuffer() + bb.getLength()); setByteChunk(orig); }