View Javadoc

1   //
2   //  ========================================================================
3   //  Copyright (c) 1995-2013 Mort Bay Consulting Pty. Ltd.
4   //  ------------------------------------------------------------------------
5   //  All rights reserved. This program and the accompanying materials
6   //  are made available under the terms of the Eclipse Public License v1.0
7   //  and Apache License v2.0 which accompanies this distribution.
8   //
9   //      The Eclipse Public License is available at
10  //      http://www.eclipse.org/legal/epl-v10.html
11  //
12  //      The Apache License v2.0 is available at
13  //      http://www.opensource.org/licenses/apache2.0.php
14  //
15  //  You may elect to redistribute this code under either of these licenses.
16  //  ========================================================================
17  //
18  
19  package org.eclipse.jetty.util;
20  import java.io.ByteArrayOutputStream;
21  import java.nio.charset.Charset;
22  
23  /* ------------------------------------------------------------ */
24  /** ByteArrayOutputStream with public internals
25  
26   * 
27   */
28  public class ByteArrayOutputStream2 extends ByteArrayOutputStream
29  {
30      public ByteArrayOutputStream2(){super();}
31      public ByteArrayOutputStream2(int size){super(size);}
32      public byte[] getBuf(){return buf;}
33      public int getCount(){return count;}
34      public void setCount(int count){this.count = count;}
35  
36      public void reset(int minSize)
37      {
38          reset();
39          if (buf.length<minSize)
40          {
41              buf=new byte[minSize];
42          }
43      }
44      
45      public void writeUnchecked(int b)
46      {
47          buf[count++]=(byte)b;
48      }
49      
50      public String toString(Charset charset)
51      {
52          return new String(buf, 0, count, charset);
53      }
54  }