/** * Appends chars of the textual representation of the given object to this * buffer. The capacity of the buffer is increased, if necessary, to * accommodate all chars. * * @param obj the object. */ public void append(final Object obj) { append(String.valueOf(obj)); }
@Override public void formatRequestLine(final CharArrayBuffer buffer, final RequestLine reqline) { Args.notNull(buffer, "Char array buffer"); Args.notNull(reqline, "Request line"); buffer.append(reqline.getMethod()); buffer.append(' '); buffer.append(reqline.getUri()); buffer.append(' '); formatProtocolVersion(buffer, reqline.getProtocolVersion()); }
public static Header format(final String name, final Set<String> tokens) { Args.notBlank(name, "Header name"); if (tokens == null || tokens.isEmpty()) { return null; } final CharArrayBuffer buffer = new CharArrayBuffer(256); buffer.append(name); buffer.append(": "); formatTokens(buffer, tokens); return BufferedHeader.create(buffer); }
List<NameValuePair> parse(final String s) { if (s == null) { return null; } final CharArrayBuffer buffer = new CharArrayBuffer(s.length()); buffer.append(s); final ParserCursor cursor = new ParserCursor(0, s.length()); return parse(buffer, cursor); }
@Override public void formatNameValuePair( final CharArrayBuffer buffer, final NameValuePair nvp, final boolean quote) { Args.notNull(buffer, "Char array buffer"); Args.notNull(nvp, "Name / value pair"); buffer.append(nvp.getName()); final String value = nvp.getValue(); if (value != null) { buffer.append('='); formatValue(buffer, value, quote); } }
@Override public void formatElements( final CharArrayBuffer buffer, final HeaderElement[] elems, final boolean quote) { Args.notNull(buffer, "Char array buffer"); Args.notNull(elems, "Header element array"); for (int i = 0; i < elems.length; i++) { if (i > 0) { buffer.append(", "); } formatHeaderElement(buffer, elems[i], quote); } }
@Override public void formatParameters( final CharArrayBuffer buffer, final NameValuePair[] nvps, final boolean quote) { Args.notNull(buffer, "Char array buffer"); Args.notNull(nvps, "Header parameter array"); for (int i = 0; i < nvps.length; i++) { if (i > 0) { buffer.append("; "); } formatNameValuePair(buffer, nvps[i], quote); } }
@Override public void formatElements( final CharArrayBuffer buffer, final HeaderElement[] elems, final boolean quote) { Args.notNull(buffer, "Char array buffer"); Args.notNull(elems, "Header element array"); for (int i = 0; i < elems.length; i++) { if (i > 0) { buffer.append(", "); } formatHeaderElement(buffer, elems[i], quote); } }
@Test public void testAppendCharArrayBuffer() throws Exception { final CharArrayBuffer buffer1 = new CharArrayBuffer(8); buffer1.append(" and more stuff"); final CharArrayBuffer buffer2 = new CharArrayBuffer(8); buffer2.append("stuff"); buffer2.append(buffer1); Assert.assertEquals("stuff and more stuff", buffer2.toString()); }
private void writeClosingChunk() throws IOException { // Write the final chunk. this.lineBuffer.clear(); this.lineBuffer.append('0'); this.buffer.writeLine(this.lineBuffer, this.outputStream); writeTrailers(); this.lineBuffer.clear(); this.buffer.writeLine(this.lineBuffer, this.outputStream); }
private void writeClosingChunk() throws IOException { // Write the final chunk. this.lineBuffer.clear(); this.lineBuffer.append('0'); this.buffer.writeLine(this.lineBuffer, this.outputStream); writeTrailers(); this.lineBuffer.clear(); this.buffer.writeLine(this.lineBuffer, this.outputStream); }
@Override public void complete(final List<? extends Header> trailers) throws IOException { assertNotCompleted(); this.lineBuffer.clear(); this.lineBuffer.append("0"); this.buffer.writeLine(this.lineBuffer); writeTrailers(trailers); this.lineBuffer.clear(); this.buffer.writeLine(this.lineBuffer); super.complete(trailers); }
@Test public void testAppendNullString() throws Exception { final CharArrayBuffer buffer = new CharArrayBuffer(8); buffer.append((String)null); Assert.assertEquals("null", buffer.toString()); }
@Test public void testInputMatchesBufferLength() throws Exception { final String s1 = "abcde"; final SessionOutputBuffer outbuf = new SessionOutputBufferImpl(1024, 5); final CharArrayBuffer chbuffer = new CharArrayBuffer(16); chbuffer.append(s1); outbuf.writeLine(chbuffer); }
@Test public void testSubstring() { final CharArrayBuffer buffer = new CharArrayBuffer(16); buffer.append(" name: value "); Assert.assertEquals(5, buffer.indexOf(':')); Assert.assertEquals(" name", buffer.substring(0, 5)); Assert.assertEquals(" value ", buffer.substring(6, buffer.length())); Assert.assertEquals("name", buffer.substringTrimmed(0, 5)); Assert.assertEquals("value", buffer.substringTrimmed(6, buffer.length())); Assert.assertEquals("", buffer.substringTrimmed(13, buffer.length())); }