Class RFC1522Codec

    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected static java.lang.String POSTFIX
      Prefix.
      protected static java.lang.String PREFIX
      Postfix.
      protected static char SEP
      Separator.
    • Constructor Summary

      Constructors 
      Constructor Description
      RFC1522Codec()  
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected java.lang.String decodeText​(java.lang.String text)
      Applies an RFC 1522 compliant decoding scheme to the given string of text.
      protected abstract byte[] doDecoding​(byte[] bytes)
      Decodes an array of bytes using the defined encoding scheme.
      protected abstract byte[] doEncoding​(byte[] bytes)
      Encodes an array of bytes using the defined encoding scheme.
      protected java.lang.String encodeText​(java.lang.String text, java.lang.String charsetName)
      Applies an RFC 1522 compliant encoding scheme to the given string of text with the given charset.
      protected java.lang.String encodeText​(java.lang.String text, java.nio.charset.Charset charset)
      Applies an RFC 1522 compliant encoding scheme to the given string of text with the given charset.
      protected abstract java.lang.String getEncoding()
      Returns the codec name (referred to as encoding in the RFC 1522).
      • Methods inherited from class java.lang.Object

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

      • RFC1522Codec

        RFC1522Codec()
    • Method Detail

      • encodeText

        protected java.lang.String encodeText​(java.lang.String text,
                                              java.nio.charset.Charset charset)
                                       throws EncoderException
        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.
        See Also:
        Standard charsets
      • encodeText

        protected java.lang.String encodeText​(java.lang.String text,
                                              java.lang.String charsetName)
                                       throws EncoderException,
                                              java.io.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
        charsetName - the charset to use
        Returns:
        RFC 1522 compliant "encoded-word"
        Throws:
        EncoderException - thrown if there is an error condition during the Encoding process.
        java.io.UnsupportedEncodingException - if charset is not available
        See Also:
        Standard charsets
      • decodeText

        protected java.lang.String decodeText​(java.lang.String text)
                                       throws DecoderException,
                                              java.io.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.
        java.io.UnsupportedEncodingException - thrown if charset specified in the "encoded-word" header is not supported
      • getEncoding

        protected abstract java.lang.String getEncoding()
        Returns the codec name (referred to as encoding in the RFC 1522).
        Returns:
        name of the codec
      • doEncoding

        protected abstract byte[] doEncoding​(byte[] bytes)
                                      throws EncoderException
        Encodes an array of bytes using the defined encoding scheme.
        Parameters:
        bytes - Data to be encoded
        Returns:
        A byte array containing the encoded data
        Throws:
        EncoderException - thrown if the Encoder encounters a failure condition during the encoding process.
      • doDecoding

        protected abstract 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.