• BlackBerry Dynamics
  • Runtime library for Android applications
  • 12.0.1.79
ChunkedOutputStream Class Reference

Implements chunked transfer coding. More...

Inheritance diagram for ChunkedOutputStream:
OutputStream

Description

See RFC 2616, section 3.6.1. Writes are buffered to an internal buffer (2048 default size).

Author
Mohammad Rezaei (Goldman, Sachs & Co.)
Oleg Kalnichevski
Since
4.0

Notice

The following notice applies to the original API on which this API is based, and to its documentation. The documentation of this API has been revised from the original.

/*
 * Copyright (C) 2006 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

Public Member Functions

 ChunkedOutputStream (final SessionOutputBuffer out, int bufferSize) throws IOException
 Wraps a session output buffer and chunks the output. More...
 
 ChunkedOutputStream (final SessionOutputBuffer out) throws IOException
 Wraps a session output buffer and chunks the output. More...
 
void finish () throws IOException
 Must be called to ensure the internal cache is flushed and the closing chunk is written. More...
 
void write (byte b[]) throws IOException
 Writes the array. More...
 
void flush () throws IOException
 Flushes the content buffer and the underlying stream. More...
 
void close () throws IOException
 Finishes writing to the underlying stream, but does NOT close the underlying stream. More...
 

Protected Member Functions

void flushCache () throws IOException
 Writes the cache out onto the underlying stream. More...
 
void flushCacheWithAppend (byte bufferToAppend[], int off, int len) throws IOException
 Writes the cache and bufferToAppend to the underlying stream as one large chunk. More...
 

Constructor & Destructor Documentation

◆ ChunkedOutputStream() [1/2]

ChunkedOutputStream ( final SessionOutputBuffer  out,
int  bufferSize 
) throws IOException
Parameters
outthe session output buffer to wrap
bufferSizeminimum chunk size (excluding last chunk)
Exceptions
IOException

◆ ChunkedOutputStream() [2/2]

ChunkedOutputStream ( final SessionOutputBuffer  out) throws IOException

The default buffer size of 2048 was chosen because the chunk overhead is less than 0.5%

Parameters
outthe output buffer to wrap
Exceptions
IOException

Member Function Documentation

◆ flushCache()

void flushCache ( ) throws IOException
protected
Exceptions
IOException

◆ flushCacheWithAppend()

void flushCacheWithAppend ( byte  bufferToAppend[],
int  off,
int  len 
) throws IOException
protected
Parameters
bufferToAppend
off
len
Exceptions
IOException

◆ finish()

void finish ( ) throws IOException
Exceptions
IOException

◆ write()

void write ( byte  b[]) throws IOException

If the array does not fit within the buffer, it is not split, but rather written out as one large chunk.

Parameters
b
Exceptions
IOException

◆ flush()

void flush ( ) throws IOException
Exceptions
IOException

◆ close()

void close ( ) throws IOException
Exceptions
IOException