Provides Base64 encoding and decoding of data hosted by the java.lang.String
instances. It helps to create a robust channel of communication though http
and xml and offer a simple handle of management: the java.lang.String type.
If the hosted data is actual text (semantically speaking), the class assumed
that the text is UTF-8 encoded.
Since Base64 conversion process manages bytes and the
javax.xml.bind.DatatypeConverter is used for it to take place, the class has
to transfer data between the java.lang.String object and the array of bytes,
so that an encoding method is necessary. In the case hosted data is actual
text the UTF-8 encoding method is used. In the case the string hosts binary
data a single-byte encoding method is used because the class assumes that
such a method (in the reverse direction) was used in the original step that
converted bits of binary data to the hosting string: a fictitious 'decode'
process. In this original process of 'decoding' binary data into a string
single-byte encoding method was used because it assures that any single byte
value (from 0x00 to 0xff) has a legal corresponding form in the encoded text so
that to be correctly transferred back during decoding.