Package org.codehaus.groovy.runtime
Class EncodingGroovyMethods
- java.lang.Object
-
- org.codehaus.groovy.runtime.EncodingGroovyMethods
-
public class EncodingGroovyMethods extends Object
This class defines all the encoding/decoding groovy methods which enhance the normal JDK classes when inside the Groovy environment. Static methods are used with the first parameter the destination class.
-
-
Constructor Summary
Constructors Constructor Description EncodingGroovyMethods()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static byte[]
decodeBase64(String value)
Decode the String from Base64 into a byte array.static byte[]
decodeBase64Url(String value)
Decodes a Base64 URL and Filename Safe encoded String into a byte array.static byte[]
decodeHex(String value)
Decodes a hex string to a byte array.static String
digest(byte[] self, String algorithm)
digest the byte arraystatic String
digest(CharSequence self, String algorithm)
digest the CharSequence instancestatic Writable
encodeBase64(byte[] data)
Produce a Writable object which writes the Base64 encoding of the byte array.static Writable
encodeBase64(byte[] data, boolean chunked)
Produce a Writable object which writes the Base64 encoding of the byte array.static Writable
encodeBase64(Byte[] data)
Produce a Writable object which writes the Base64 encoding of the byte array.static Writable
encodeBase64(Byte[] data, boolean chunked)
Produce a Writable object which writes the Base64 encoding of the byte array.static Writable
encodeBase64Url(byte[] data)
Produce a Writable object which writes the Base64 URL and Filename Safe encoding of the byte array.static Writable
encodeBase64Url(byte[] data, boolean pad)
Produce a Writable object which writes the Base64 URL and Filename Safe encoding of the byte array.static Writable
encodeBase64Url(Byte[] data)
Produce a Writable object which writes the Base64 URL and Filename Safe encoding of the byte array.static Writable
encodeBase64Url(Byte[] data, boolean pad)
Produce a Writable object which writes the Base64 URL and Filename Safe encoding of the byte array.static Writable
encodeHex(byte[] data)
Produces a Writable that writes the hex encoding of the byte[].static Writable
encodeHex(Byte[] data)
Produces a Writable that writes the hex encoding of the Byte[].static String
md5(byte[] self)
Calculate md5 of the byte arraystatic String
md5(CharSequence self)
Calculate md5 of the CharSequence instancestatic String
sha256(byte[] self)
Calculate SHA-256 of the byte arraystatic String
sha256(CharSequence self)
Calculate SHA-256 of the CharSequence instance
-
-
-
Method Detail
-
encodeBase64
public static Writable encodeBase64(Byte[] data, boolean chunked)
Produce a Writable object which writes the Base64 encoding of the byte array. Calling toString() on the result returns the encoding as a String. For more information on Base64 encoding and chunking seeRFC 4648
.- Parameters:
data
- Byte array to be encodedchunked
- whether or not the Base64 encoded data should be MIME chunked- Returns:
- object which will write the Base64 encoding of the byte array
- Since:
- 1.5.1
-
encodeBase64
public static Writable encodeBase64(Byte[] data)
Produce a Writable object which writes the Base64 encoding of the byte array. Calling toString() on the result returns the encoding as a String. For more information on Base64 encoding and chunking seeRFC 4648
.- Parameters:
data
- Byte array to be encoded- Returns:
- object which will write the Base64 encoding of the byte array
- Since:
- 1.0
-
encodeBase64
public static Writable encodeBase64(byte[] data, boolean chunked)
Produce a Writable object which writes the Base64 encoding of the byte array. Calling toString() on the result returns the encoding as a String. For more information on Base64 encoding and chunking seeRFC 4648
.- Parameters:
data
- byte array to be encodedchunked
- whether or not the Base64 encoded data should be MIME chunked- Returns:
- object which will write the Base64 encoding of the byte array
- Since:
- 1.5.7
-
encodeBase64
public static Writable encodeBase64(byte[] data)
Produce a Writable object which writes the Base64 encoding of the byte array. Calling toString() on the result returns the encoding as a String. For more information on Base64 encoding and chunking seeRFC 4648
.- Parameters:
data
- byte array to be encoded- Returns:
- object which will write the Base64 encoding of the byte array
- Since:
- 1.0
-
encodeBase64Url
public static Writable encodeBase64Url(Byte[] data)
Produce a Writable object which writes the Base64 URL and Filename Safe encoding of the byte array. Calling toString() on the result returns the encoding as a String. For more information on Base64 URL and Filename Safe encoding seeRFC 4648 - Section 5 Base 64 Encoding with URL and Filename Safe Alphabet
.The method omits padding and is equivalent to calling
encodeBase64Url(Byte[], boolean)
with a value offalse
.- Parameters:
data
- Byte array to be encoded- Returns:
- object which will write the Base64 URL and Filename Safe encoding of the byte array
- Since:
- 2.5.0
- See Also:
encodeBase64Url(Byte[], boolean)
-
encodeBase64Url
public static Writable encodeBase64Url(Byte[] data, boolean pad)
Produce a Writable object which writes the Base64 URL and Filename Safe encoding of the byte array. Calling toString() on the result returns the encoding as a String. For more information on Base64 URL and Filename Safe encoding seeRFC 4648 - Section 5 Base 64 Encoding with URL and Filename Safe Alphabet
.- Parameters:
data
- Byte array to be encodedpad
- whether or not the encoded data should be padded- Returns:
- object which will write the Base64 URL and Filename Safe encoding of the byte array
- Since:
- 2.5.0
-
encodeBase64Url
public static Writable encodeBase64Url(byte[] data)
Produce a Writable object which writes the Base64 URL and Filename Safe encoding of the byte array. Calling toString() on the result returns the encoding as a String. For more information on Base64 URL and Filename Safe encoding seeRFC 4648 - Section 5 Base 64 Encoding with URL and Filename Safe Alphabet
.The method omits padding and is equivalent to calling
encodeBase64Url(byte[], boolean)
with a value offalse
.- Parameters:
data
- Byte array to be encoded- Returns:
- object which will write the Base64 URL and Filename Safe encoding of the byte array
- Since:
- 2.5.0
- See Also:
encodeBase64Url(byte[], boolean)
-
encodeBase64Url
public static Writable encodeBase64Url(byte[] data, boolean pad)
Produce a Writable object which writes the Base64 URL and Filename Safe encoding of the byte array. Calling toString() on the result returns the encoding as a String. For more information on Base64 URL and Filename Safe encoding seeRFC 4648 - Section 5 Base 64 Encoding with URL and Filename Safe Alphabet
.- Parameters:
data
- Byte array to be encodedpad
- whether or not the encoded data should be padded- Returns:
- object which will write the Base64 URL and Filename Safe encoding of the byte array
- Since:
- 2.5.0
-
decodeBase64
public static byte[] decodeBase64(String value)
Decode the String from Base64 into a byte array.- Parameters:
value
- the string to be decoded- Returns:
- the decoded bytes as an array
- Since:
- 1.0
-
decodeBase64Url
public static byte[] decodeBase64Url(String value)
Decodes a Base64 URL and Filename Safe encoded String into a byte array.- Parameters:
value
- the string to be decoded- Returns:
- the decoded bytes as an array
- Since:
- 2.5.0
-
encodeHex
public static Writable encodeHex(Byte[] data)
Produces a Writable that writes the hex encoding of the Byte[]. Calling toString() on this Writable returns the hex encoding as a String. The hex encoding includes two characters for each byte and all letters are lower case.- Parameters:
data
- byte array to be encoded- Returns:
- object which will write the hex encoding of the byte array
- See Also:
Integer.toHexString(int)
-
encodeHex
public static Writable encodeHex(byte[] data)
Produces a Writable that writes the hex encoding of the byte[]. Calling toString() on this Writable returns the hex encoding as a String. The hex encoding includes two characters for each byte and all letters are lower case.- Parameters:
data
- byte array to be encoded- Returns:
- object which will write the hex encoding of the byte array
- See Also:
Integer.toHexString(int)
-
decodeHex
public static byte[] decodeHex(String value)
Decodes a hex string to a byte array. The hex string can contain either upper case or lower case letters.- Parameters:
value
- string to be decoded- Returns:
- decoded byte array
- Throws:
NumberFormatException
- If the string contains an odd number of characters or if the characters are not valid hexadecimal values.
-
md5
public static String md5(CharSequence self) throws NoSuchAlgorithmException
Calculate md5 of the CharSequence instance- Returns:
- md5 value
- Throws:
NoSuchAlgorithmException
- if MD5 algorithm not found- Since:
- 2.5.0
-
md5
public static String md5(byte[] self) throws NoSuchAlgorithmException
Calculate md5 of the byte array- Returns:
- md5 value
- Throws:
NoSuchAlgorithmException
- if MD5 algorithm not found- Since:
- 2.5.0
-
sha256
public static String sha256(CharSequence self) throws NoSuchAlgorithmException
Calculate SHA-256 of the CharSequence instance- Returns:
- SHA-256 value
- Throws:
NoSuchAlgorithmException
- if SHA-256 algorithm not found- Since:
- 2.5.3
-
sha256
public static String sha256(byte[] self) throws NoSuchAlgorithmException
Calculate SHA-256 of the byte array- Returns:
- SHA-256 value
- Throws:
NoSuchAlgorithmException
- if SHA-256 algorithm not found- Since:
- 2.5.3
-
digest
public static String digest(CharSequence self, String algorithm) throws NoSuchAlgorithmException
digest the CharSequence instance- Parameters:
algorithm
- the name of the algorithm requested, e.g. MD5, SHA-1, SHA-256, etc.- Returns:
- digested value
- Throws:
NoSuchAlgorithmException
- if the algorithm not found- Since:
- 2.5.0
- See Also:
MessageDigest.getInstance(java.lang.String)
-
digest
public static String digest(byte[] self, String algorithm) throws NoSuchAlgorithmException
digest the byte array- Parameters:
algorithm
- the name of the algorithm requested, e.g. MD5, SHA-1, SHA-256, etc.- Returns:
- digested value
- Throws:
NoSuchAlgorithmException
- if the algorithm not found- Since:
- 2.5.0
- See Also:
MessageDigest.getInstance(java.lang.String)
-
-