Class Base64Decoding

java.lang.Object
org.jppf.utils.base64.Base64Decoding

public final class Base64Decoding extends Object
Author:
Laurent Cohen
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static byte[]
    decode(byte[] source)
    Low-level access to decoding ASCII characters in the form of a byte array.
    static byte[]
    decode(byte[] source, int off, int len, int options)
    Low-level access to decoding ASCII characters in the form of a byte array.
    static byte[]
    Decodes data from Base64 notation, automatically detecting gzip-compressed data and decompressing it.
    static byte[]
    decode(String s, int options)
    Decodes data from Base64 notation, automatically detecting gzip-compressed data and decompressing it.
    static void
    decodeFileToFile(String infile, String outfile)
    Reads infile and decodes it to outfile.
    static byte[]
    Convenience method for reading a base64-encoded file and decoding it.
    static void
    decodeToFile(String dataToDecode, String filename)
    Convenience method for decoding data to a file.
    static Object
    decodeToObject(String encodedObject)
    Attempts to decode Base64 data and deserialize a Java Object within.
    static Object
    decodeToObject(String encodedObject, int options, ClassLoader loader)
    Attempts to decode Base64 data and deserialize a Java Object within.
    static void
    encodeFileToFile(String infile, String outfile)
    Reads infile and encodes it to outfile.
    static String
    Convenience method for reading a binary file and base64-encoding it.
    static void
    encodeToFile(byte[] dataToEncode, String filename)
    Convenience method for encoding data to a file.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Base64Decoding

      public Base64Decoding()
  • Method Details

    • decode

      public static byte[] decode(byte[] source) throws IOException
      Low-level access to decoding ASCII characters in the form of a byte array. Ignores GUNZIP option, if it's set. This is not generally a recommended method, although it is used internally as part of the decoding process. Special case: if len = 0, an empty array is returned. Still, if you need more speed and reduced memory footprint (and aren't gzipping), consider this method.
      Parameters:
      source - The Base64 encoded data
      Returns:
      decoded data
      Throws:
      IOException - if any I/O error occurs.
      Since:
      2.3.1
    • decode

      public static byte[] decode(byte[] source, int off, int len, int options) throws IOException
      Low-level access to decoding ASCII characters in the form of a byte array. Ignores GUNZIP option, if it's set. This is not generally a recommended method, although it is used internally as part of the decoding process. Special case: if len = 0, an empty array is returned. Still, if you need more speed and reduced memory footprint (and aren't gzipping), consider this method.
      Parameters:
      source - The Base64 encoded data
      off - The offset of where to begin decoding
      len - The length of characters to decode
      options - Can specify options such as alphabet type to use
      Returns:
      decoded data
      Throws:
      IOException - If bogus characters exist in source data
      Since:
      1.3
    • decode

      public static byte[] decode(String s) throws IOException
      Decodes data from Base64 notation, automatically detecting gzip-compressed data and decompressing it.
      Parameters:
      s - the string to decode
      Returns:
      the decoded data
      Throws:
      IOException - If there is a problem
      Since:
      1.4
    • decode

      public static byte[] decode(String s, int options) throws IOException
      Decodes data from Base64 notation, automatically detecting gzip-compressed data and decompressing it.
      Parameters:
      s - the string to decode
      options - encode options such as URL_SAFE
      Returns:
      the decoded data
      Throws:
      IOException - if there is an error
      NullPointerException - if s is null
      Since:
      1.4
    • decodeToObject

      public static Object decodeToObject(String encodedObject) throws IOException, ClassNotFoundException
      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
      Throws:
      NullPointerException - if encodedObject is null
      IOException - if there is a general error
      ClassNotFoundException - if the decoded object is of a class that cannot be found by the JVM
      Since:
      1.5
    • decodeToObject

      public static Object decodeToObject(String encodedObject, int options, ClassLoader loader) throws IOException, ClassNotFoundException
      Attempts to decode Base64 data and deserialize a Java Object within. Returns null if there was an error. If loader is not null, it will be the class loader used when deserializing.
      Parameters:
      encodedObject - The Base64 data to decode
      options - Various parameters related to decoding
      loader - Optional class loader to use in deserializing classes.
      Returns:
      The decoded and deserialized object
      Throws:
      NullPointerException - if encodedObject is null
      IOException - if there is a general error
      ClassNotFoundException - if the decoded object is of a class that cannot be found by the JVM
      Since:
      2.3.4
    • encodeToFile

      public static void encodeToFile(byte[] dataToEncode, String filename) throws IOException
      Convenience method for encoding data to a file.

      As of v 2.3, if there is a error, the method will throw an IOException. This is new to v2.3! In earlier versions, it just returned false, but in retrospect that's a pretty poor way to handle it.

      Parameters:
      dataToEncode - byte array of data to encode in base64 form
      filename - Filename for saving encoded data
      Throws:
      IOException - if there is an error
      NullPointerException - if dataToEncode is null
      Since:
      2.1
    • decodeToFile

      public static void decodeToFile(String dataToDecode, String filename) throws IOException
      Convenience method for decoding data to a file.

      As of v 2.3, if there is a error, the method will throw an IOException. This is new to v2.3! In earlier versions, it just returned false, but in retrospect that's a pretty poor way to handle it.

      Parameters:
      dataToDecode - Base64-encoded data as a string
      filename - Filename for saving decoded data
      Throws:
      IOException - if there is an error
      Since:
      2.1
    • decodeFromFile

      public static byte[] decodeFromFile(String filename) throws IOException
      Convenience method for reading a base64-encoded file and decoding it.

      As of v 2.3, if there is a error, the method will throw an IOException. This is new to v2.3! In earlier versions, it just returned false, but in retrospect that's a pretty poor way to handle it.

      Parameters:
      filename - Filename for reading encoded data
      Returns:
      decoded byte array
      Throws:
      IOException - if there is an error
      Since:
      2.1
    • encodeFromFile

      public static String encodeFromFile(String filename) throws IOException
      Convenience method for reading a binary file and base64-encoding it.

      As of v 2.3, if there is a error, the method will throw an IOException. This is new to v2.3! In earlier versions, it just returned false, but in retrospect that's a pretty poor way to handle it.

      Parameters:
      filename - Filename for reading binary data
      Returns:
      base64-encoded string
      Throws:
      IOException - if there is an error
      Since:
      2.1
    • encodeFileToFile

      public static void encodeFileToFile(String infile, String outfile) throws IOException
      Reads infile and encodes it to outfile.
      Parameters:
      infile - Input file
      outfile - Output file
      Throws:
      IOException - if there is an error
      Since:
      2.2
    • decodeFileToFile

      public static void decodeFileToFile(String infile, String outfile) throws IOException
      Reads infile and decodes it to outfile.
      Parameters:
      infile - Input file
      outfile - Output file
      Throws:
      IOException - if there is an error
      Since:
      2.2