KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > mail > util > BEncoderStream


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the "License"). You may not use this file except
5  * in compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * glassfish/bootstrap/legal/CDDLv1.0.txt or
9  * https://glassfish.dev.java.net/public/CDDLv1.0.html.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * HEADER in each file and include the License file at
15  * glassfish/bootstrap/legal/CDDLv1.0.txt. If applicable,
16  * add the following below this CDDL HEADER, with the
17  * fields enclosed by brackets "[]" replaced with your
18  * own identifying information: Portions Copyright [yyyy]
19  * [name of copyright owner]
20  */

21
22 /*
23  * @(#)BEncoderStream.java 1.4 05/08/29
24  *
25  * Copyright 1997-2005 Sun Microsystems, Inc. All Rights Reserved.
26  */

27
28 package com.sun.mail.util;
29
30 import java.io.*;
31
32 /**
33  * This class implements a 'B' Encoder as defined by RFC2047 for
34  * encoding MIME headers. It subclasses the BASE64EncoderStream
35  * class.
36  *
37  * @author John Mani
38  */

39
40 public class BEncoderStream extends BASE64EncoderStream {
41
42     /**
43      * Create a 'B' encoder that encodes the specified input stream.
44      * @param out the output stream
45      */

46     public BEncoderStream(OutputStream out) {
47     super(out, Integer.MAX_VALUE); // MAX_VALUE is 2^31, should
48
// suffice (!) to indicate that
49
// CRLFs should not be inserted
50
}
51
52     /**
53      * Returns the length of the encoded version of this byte array.
54      */

55     public static int encodedLength(byte[] b) {
56         return ((b.length + 2)/3) * 4;
57     }
58 }
59
Popular Tags