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

## org.apache.commons.codec.net
Class QCodec

    java.lang.Object
      org.apache.commons.codec.net.QCodec

All Implemented Interfaces:
  Decoder, Encoder, StringDecoder, StringEncoder

    public class QCodec

extends Object
implements StringEncoder, StringDecoder

Similar to the Quoted-Printable content-transfer-encoding defined in RFC 1521 and designed to allow text containing mostly ASCII characters to be decipherable on an ASCII terminal without decoding.

RFC 1522 describes techniques to allow the encoding of non-ASCII text in various portions of a RFC 822 [2] message header, in a manner which is unlikely to confuse existing message handling software.

Since:
  1.3
Version:
  $Id: QCodec.java 1170351 2011-09-13 21:09:09Z ggregory $
Author:
  Apache Software Foundation
See Also:
  MIME (Multipurpose Internet Mail Extensions) Part Two: Message Header Extensions for Non-ASCII Text

Field Summary
`protected static String` | `POSTFIX` Prefix
`protected static String` | `PREFIX` Postfix
`protected static char` | `SEP` Separator.

Constructor Summary
`QCodec()` Default constructor.
`QCodec(String charset)` Constructor which allows for the selection of a default charset

Method Summary
`Object` | `decode(Object pObject)` Decodes a quoted-printable object into its original form.
`String` | `decode(String pString)` Decodes a quoted-printable string into its original form.
`protected String` | `decodeText(String text)` Applies an RFC 1522 compliant decoding scheme to the given string of text.
`protected byte[]` | `doDecoding(byte[] bytes)` Decodes an array of bytes using the defined encoding scheme
`protected byte[]` | `doEncoding(byte[] bytes)` Encodes an array of bytes using the defined encoding scheme
`Object` | `encode(Object pObject)` Encodes an object into its quoted-printable form using the default charset.
`String` | `encode(String pString)` Encodes a string into its quoted-printable form using the default charset.
`String` | `encode(String pString, String charset)` Encodes a string into its quoted-printable form using the specified charset.
`protected String` | `encodeText(String text, String charset)` Applies an RFC 1522 compliant encoding scheme to the given string of text with the given charset.
`String` | `getDefaultCharset()` The default charset used for string decoding and encoding.
`protected String` | `getEncoding()` Returns the codec name (referred to as encoding in the RFC 1522)
`boolean` | `isEncodeBlanks()` Tests if optional transformation of SPACE characters is to be used
`void` | `setEncodeBlanks(boolean b)` Defines whether optional transformation of SPACE characters is to be used

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

Field Detail

### SEP

    protected static final char SEP

  Separator.

  See Also:
    Constant Field Values

### POSTFIX

    protected static final String POSTFIX

  Prefix

  See Also:
    Constant Field Values

### PREFIX

    protected static final String PREFIX

  Postfix

  See Also:
    Constant Field Values

Constructor Detail

### QCodec

    public QCodec()

  Default constructor.

### QCodec

    public QCodec(String charset)

  Constructor which allows for the selection of a default charset

  Parameters:
    `charset` - the default string charset to use.
  See Also:
    Standard charsets

Method Detail

### getEncoding

    protected String getEncoding()

  Returns the codec name (referred to as encoding in the RFC 1522)

  Returns:
    name of the codec

### doEncoding

    protected byte[] doEncoding(byte[] bytes)

  Encodes an array of bytes using the defined encoding scheme

  Parameters:
    `bytes` - Data to be encoded
  Returns:
    A byte array containing the encoded data

### doDecoding

    protected byte[] doDecoding(byte[] bytes)
                         throws DecoderException

  Decodes an array of bytes using the defined encoding scheme

  Parameters:
    `bytes` - Data to be decoded
  Returns:
    a byte array that contains decoded data
  Throws:
    `DecoderException` - A decoder exception is thrown if a Decoder encounters a failure condition during the decode process.

### encode

    public String encode(String pString,
                         String charset)
                  throws EncoderException

  Encodes a string into its quoted-printable form using the specified charset. Unsafe characters are escaped.

  Parameters:
    `pString` - string to convert to quoted-printable form
    `charset` - the charset for pString
  Returns:
    quoted-printable string
  Throws:
    `EncoderException` - thrown if a failure condition is encountered during the encoding process.

### encode

    public String encode(String pString)
                  throws EncoderException

  Encodes a string into its quoted-printable form using the default charset. Unsafe characters are escaped.

  Specified by:
    `encode` in interface `StringEncoder`
  Parameters:
    `pString` - string to convert to quoted-printable form
  Returns:
    quoted-printable string
  Throws:
    `EncoderException` - thrown if a failure condition is encountered during the encoding process.

### decode

    public String decode(String pString)
                  throws DecoderException

  Decodes a quoted-printable string into its original form. Escaped characters are converted back to their original representation.

  Specified by:
    `decode` in interface `StringDecoder`
  Parameters:
    `pString` - quoted-printable string to convert into its original form
  Returns:
    original string
  Throws:
    `DecoderException` - A decoder exception is thrown if a failure condition is encountered during the decode process.

### encode

    public Object encode(Object pObject)
                  throws EncoderException

  Encodes an object into its quoted-printable form using the default charset. Unsafe characters are escaped.

  Specified by:
    `encode` in interface `Encoder`
  Parameters:
    `pObject` - object to convert to quoted-printable form
  Returns:
    quoted-printable object
  Throws:
    `EncoderException` - thrown if a failure condition is encountered during the encoding process.

### decode

    public Object decode(Object pObject)
                  throws DecoderException

  Decodes a quoted-printable object into its original form. Escaped characters are converted back to their original representation.

  Specified by:
    `decode` in interface `Decoder`
  Parameters:
    `pObject` - quoted-printable object to convert into its original form
  Returns:
    original object
  Throws:
    `DecoderException` - Thrown if the argument is not a `String`. Thrown if a failure condition is encountered during the decode process.

### getDefaultCharset

    public String getDefaultCharset()

  The default charset used for string decoding and encoding.

  Returns:
    the default string charset.

### isEncodeBlanks

    public boolean isEncodeBlanks()

  Tests if optional transformation of SPACE characters is to be used

  Returns:
    `true` if SPACE characters are to be transformed, `false` otherwise

### setEncodeBlanks

    public void setEncodeBlanks(boolean b)

  Defines whether optional transformation of SPACE characters is to be used

  Parameters:
    `b` - `true` if SPACE characters are to be transformed, `false` otherwise

### encodeText

    protected String encodeText(String text,
                                String charset)
                         throws EncoderException,
                                UnsupportedEncodingException

  Applies an RFC 1522 compliant encoding scheme to the given string of text with the given charset. This method constructs the "encoded-word" header common to all the RFC 1522 codecs and then invokes `doEncoding(byte [])` method of a concrete class to perform the specific encoding.

  Parameters:
    `text` - a string to encode
    `charset` - a charset to be used
  Returns:
    RFC 1522 compliant "encoded-word"
  Throws:
    `EncoderException` - thrown if there is an error condition during the Encoding process.
    `UnsupportedEncodingException` - thrown if charset is not supported
  See Also:
    Standard charsets

### decodeText

    protected String decodeText(String text)
                         throws DecoderException,
                                UnsupportedEncodingException

  Applies an RFC 1522 compliant decoding scheme to the given string of text. This method processes the "encoded-word" header common to all the RFC 1522 codecs and then invokes `doEncoding(byte [])` method of a concrete class to perform the specific decoding.

  Parameters:
    `text` - a string to decode
  Returns:
    A new decoded String or `null` if the input is `null`.
  Throws:
    `DecoderException` - thrown if there is an error condition during the decoding process.
    `UnsupportedEncodingException` - thrown if charset specified in the "encoded-word" header is not supported

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

Copyright © 2002-2011 The Apache Software Foundation. All Rights Reserved.