Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Rice Pastry API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## rice.p2p.util
Class Base64

    java.lang.Object
      rice.p2p.util.Base64

public class Base64
extends java.lang.Object

Nested Class Summary
`static class` | `Base64.InputStream` A `Base64#InputStream` will read data from another `InputStream`, given in the constructor, and encode/decode to/from Base64 notation on the fly.
`static class` | `Base64.OutputStream` A `Base64#OutputStream` will write data to another `OutputStream`, given in the constructor, and encode/decode to/from Base64 notation on the fly.

Field Summary
`static int` | `DECODE` Specify decoding.
`static int` | `DONT_BREAK_LINES` Don't break lines when encoding (violates strict Base64 specification)
`static int` | `ENCODE` Specify encoding.
`static int` | `GZIP` Specify that data should be gzip-compressed.
`static int` | `NO_OPTIONS` No options specified.

Method Summary
`static byte[]` | `decode(byte[] source, int off, int len)` Very low-level access to decoding ASCII characters in the form of a byte array.
`static byte[]` | `decode(java.lang.String s)` Decodes data from Base64 notation, automatically detecting gzip-compressed data and decompressing it.
`static java.lang.Object` | `decodeToObject(java.lang.String encodedObject)` Attempts to decode Base64 data and deserialize a Java Object within.
`static java.lang.String` | `encodeBytes(byte[] source)` Encodes a byte array into Base64 notation.
`static java.lang.String` | `encodeBytes(byte[] source, int options)` Encodes a byte array into Base64 notation.
`static java.lang.String` | `encodeBytes(byte[] source, int off, int len)` Encodes a byte array into Base64 notation.
`static java.lang.String` | `encodeBytes(byte[] source, int off, int len, int options)` Encodes a byte array into Base64 notation.
`static java.lang.String` | `encodeObject(java.io.Serializable serializableObject)` Serializes an object and returns the Base64-encoded version of that serialized object.
`static java.lang.String` | `encodeObject(java.io.Serializable serializableObject, int options)` Serializes an object and returns the Base64-encoded version of that serialized object.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### NO_OPTIONS

    public static final int NO_OPTIONS

  No options specified. Value is zero.

  See Also:
    Constant Field Values

### ENCODE

    public static final int ENCODE

  Specify encoding.

  See Also:
    Constant Field Values

### DECODE

    public static final int DECODE

  Specify decoding.

  See Also:
    Constant Field Values

### GZIP

    public static final int GZIP

  Specify that data should be gzip-compressed.

  See Also:
    Constant Field Values

### DONT_BREAK_LINES

    public static final int DONT_BREAK_LINES

  Don't break lines when encoding (violates strict Base64 specification)

  See Also:
    Constant Field Values

Method Detail

### encodeObject

    public static java.lang.String encodeObject(java.io.Serializable serializableObject)

  Serializes an object and returns the Base64-encoded version of that serialized object. If the object cannot be serialized or there is another error, the method will return `null`. The object is not GZip-compressed before being encoded.

  Parameters:
    `serializableObject` - The object to encode
  Returns:
    The Base64-encoded object
  Since:
    1.4

### encodeObject

    public static java.lang.String encodeObject(java.io.Serializable serializableObject,
                                                int options)

  Serializes an object and returns the Base64-encoded version of that serialized object. If the object cannot be serialized or there is another error, the method will return `null`.

  Valid options:

         GZIP: gzip-compresses object before encoding it.
         DONT_BREAK_LINES: don't break lines at 76 characters
           Note: Technically, this makes your encoding non-compliant.

  Example: `encodeObject( myObj, Base64.GZIP )` or

  Example: `encodeObject( myObj, Base64.GZIP | Base64.DONT_BREAK_LINES )`

  Parameters:
    `serializableObject` - The object to encode
  Returns:
    The Base64-encoded object
  Since:
    2.0
  See Also:
    `GZIP`, `DONT_BREAK_LINES`

### encodeBytes

    public static java.lang.String encodeBytes(byte[] source)

  Encodes a byte array into Base64 notation. Does not GZip-compress data.

  Parameters:
    `source` - The data to convert
  Since:
    1.4

### encodeBytes

    public static java.lang.String encodeBytes(byte[] source,
                                               int options)

  Encodes a byte array into Base64 notation.

  Valid options:

         GZIP: gzip-compresses object before encoding it.
         DONT_BREAK_LINES: don't break lines at 76 characters
           Note: Technically, this makes your encoding non-compliant.

  Example: `encodeBytes( myData, Base64.GZIP )` or

  Example: `encodeBytes( myData, Base64.GZIP | Base64.DONT_BREAK_LINES )`

  Parameters:
    `source` - The data to convert
    `options` - Specified options
  Since:
    2.0
  See Also:
    `GZIP`, `DONT_BREAK_LINES`

### encodeBytes

    public static java.lang.String encodeBytes(byte[] source,
                                               int off,
                                               int len)

  Encodes a byte array into Base64 notation. Does not GZip-compress data.

  Parameters:
    `source` - The data to convert
    `off` - Offset in array where conversion should begin
    `len` - Length of data to convert
  Since:
    1.4

### encodeBytes

    public static java.lang.String encodeBytes(byte[] source,
                                               int off,
                                               int len,
                                               int options)

  Encodes a byte array into Base64 notation.

  Valid options:

         GZIP: gzip-compresses object before encoding it.
         DONT_BREAK_LINES: don't break lines at 76 characters
           Note: Technically, this makes your encoding non-compliant.

  Example: `encodeBytes( myData, Base64.GZIP )` or

  Example: `encodeBytes( myData, Base64.GZIP | Base64.DONT_BREAK_LINES )`

  Parameters:
    `source` - The data to convert
    `off` - Offset in array where conversion should begin
    `len` - Length of data to convert
    `options` - Specified options
  Since:
    2.0
  See Also:
    `GZIP`, `DONT_BREAK_LINES`

### decode

    public static byte[] decode(byte[] source,
                                int off,
                                int len)

  Very low-level access to decoding ASCII characters in the form of a byte array. Does not support automatically gunzipping or any other "fancy" features.

  Parameters:
    `source` - The Base64 encoded data
    `off` - The offset of where to begin decoding
    `len` - The length of characters to decode
  Returns:
    decoded data
  Since:
    1.3

### decode

    public static byte[] decode(java.lang.String s)

  Decodes data from Base64 notation, automatically detecting gzip-compressed data and decompressing it.

  Parameters:
    `s` - the string to decode
  Returns:
    the decoded data
  Since:
    1.4

### decodeToObject

    public static java.lang.Object decodeToObject(java.lang.String encodedObject)

  Attempts to decode Base64 data and deserialize a Java Object within. Returns `null` if there was an error.

  Parameters:
    `encodedObject` - The Base64 data to decode
  Returns:
    The decoded and deserialized object
  Since:
    1.5

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Rice Pastry API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2005 - Rice Pastry.