KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > derby > iapi > services > io > AccessibleByteArrayOutputStream


1 /*
2
3    Derby - Class org.apache.derby.iapi.services.io.AccessibleByteArrayOutputStream
4
5    Licensed to the Apache Software Foundation (ASF) under one or more
6    contributor license agreements. See the NOTICE file distributed with
7    this work for additional information regarding copyright ownership.
8    The ASF licenses this file to you under the Apache License, Version 2.0
9    (the "License"); you may not use this file except in compliance with
10    the License. You may obtain a copy of the License at
11
12       http://www.apache.org/licenses/LICENSE-2.0
13
14    Unless required by applicable law or agreed to in writing, software
15    distributed under the License is distributed on an "AS IS" BASIS,
16    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17    See the License for the specific language governing permissions and
18    limitations under the License.
19
20  */

21
22 package org.apache.derby.iapi.services.io;
23
24 import java.io.ByteArrayOutputStream JavaDoc;
25
26 /**
27  * This allows us to get to the byte array to go back and
28  * edit contents or get the array without having a copy made.
29  <P>
30    Since a copy is not made, users must be careful that no more
31    writes are made to the stream if the array reference is handed off.
32  * <p>
33  * Users of this must make the modifications *before* the
34  * next write is done, and then release their hold on the
35  * array.
36    
37  */

38 public class AccessibleByteArrayOutputStream extends ByteArrayOutputStream JavaDoc {
39
40     public AccessibleByteArrayOutputStream() {
41         super();
42     }
43
44     public AccessibleByteArrayOutputStream(int size) {
45         super(size);
46     }
47
48     /**
49      * The caller promises to set their variable to null
50      * before any other calls to write to this stream are made.
51        Or promises to throw away references to the stream before
52        passing the array reference out of its control.
53      */

54     public byte[] getInternalByteArray() {
55         return buf;
56     }
57 }
58
Popular Tags