gnu.javax.net.ssl.provider

Class Util


public final class Util
extends Object

A collection of useful class methods.

Method Summary

static byte[]
concat(byte[] b1, byte[] b2)
Concatenate two byte arrays into one.
static String
formatInt(int i, int radix, int len)
Format an integer into the specified radix, zero-filled.
static String
hexDump(byte[] buf)
See hexDump(byte[],int,int,String).
static String
hexDump(byte[] buf, int off, int len)
See hexDump(byte[],int,int,String).
static String
hexDump(byte[] buf, int off, int len, String prefix)
Create a representation of the given byte array similar to the output of `hexdump -C', which is

OFFSET  SIXTEEN-BYTES-IN-HEX  PRINTABLE-BYTES

The printable bytes show up as-is if they are printable and not a newline character, otherwise showing as '.'.

static String
hexDump(byte[] buf, String prefix)
See hexDump(byte[],int,int,String).
static String
hexDump(ByteBuffer buf)
static String
hexDump(ByteBuffer buf, String prefix)
static byte[]
toByteArray(String hex)
Convert a hexadecimal string into its byte representation.
static String
toHexString(byte[] buf)
See toHexString(byte[],int,int).
static String
toHexString(byte[] buf, char sep)
See toHexString(byte[],int,int,char).
static String
toHexString(byte[] buf, int off, int len)
Convert a byte array to a hexadecimal string, as though it were a big-endian arbitrarily-sized integer.
static String
toHexString(byte[] buf, int off, int len, char sep)
Convert a byte array to a hexadecimal string, separating octets with the given character.
static byte[]
trim(byte[] buffer, int len)
See trim(byte[],int,int).
static byte[]
trim(byte[] buffer, int off, int len)
Returns a portion of a byte array, possibly zero-filled.
static byte[]
trim(BigInteger bi)
Returns the byte array representation of the given big integer with the leading zero byte (if any) trimmed off.
static int
unixTime()
Returns the integer value of System.currentTimeMillis() / 1000.
static Object
wrapBuffer(ByteBuffer buffer)
static Object
wrapBuffer(ByteBuffer buffer, String prefix)

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Method Details

concat

public static byte[] concat(byte[] b1,
                            byte[] b2)
Concatenate two byte arrays into one.
Parameters:
b1 - The first byte array.
b2 - The second byte array.
Returns:
The concatenation of b1 and b2.

formatInt

public static String formatInt(int i,
                               int radix,
                               int len)
Format an integer into the specified radix, zero-filled.
Parameters:
i - The integer to format.
radix - The radix to encode to.
len - The target length of the string. The string is zero-padded to this length, but may be longer.
Returns:
The formatted integer.

hexDump

public static String hexDump(byte[] buf)

hexDump

public static String hexDump(byte[] buf,
                             int off,
                             int len)

hexDump

public static String hexDump(byte[] buf,
                             int off,
                             int len,
                             String prefix)
Create a representation of the given byte array similar to the output of `hexdump -C', which is

OFFSET  SIXTEEN-BYTES-IN-HEX  PRINTABLE-BYTES

The printable bytes show up as-is if they are printable and not a newline character, otherwise showing as '.'.

Parameters:
buf - The bytes to format.
off - The offset to start at.
len - The number of bytes to encode.
prefix - A string to prepend to every line.
Returns:
The formatted string.

hexDump

public static String hexDump(byte[] buf,
                             String prefix)

hexDump

public static String hexDump(ByteBuffer buf)

hexDump

public static String hexDump(ByteBuffer buf,
                             String prefix)

toByteArray

public static byte[] toByteArray(String hex)
Convert a hexadecimal string into its byte representation.
Parameters:
hex - The hexadecimal string.
Returns:
The converted bytes.

toHexString

public static String toHexString(byte[] buf)

toHexString

public static String toHexString(byte[] buf,
                                 char sep)

toHexString

public static String toHexString(byte[] buf,
                                 int off,
                                 int len)
Convert a byte array to a hexadecimal string, as though it were a big-endian arbitrarily-sized integer.
Parameters:
buf - The bytes to format.
off - The offset to start at.
len - The number of bytes to format.
Returns:
A hexadecimal representation of the specified bytes.

toHexString

public static String toHexString(byte[] buf,
                                 int off,
                                 int len,
                                 char sep)
Convert a byte array to a hexadecimal string, separating octets with the given character.
Parameters:
buf - The bytes to format.
off - The offset to start at.
len - The number of bytes to format.
sep - The character to insert between octets.
Returns:
A hexadecimal representation of the specified bytes.

trim

public static byte[] trim(byte[] buffer,
                          int len)

trim

public static byte[] trim(byte[] buffer,
                          int off,
                          int len)
Returns a portion of a byte array, possibly zero-filled.
Parameters:
buffer - The byte array to trim.
off - The offset to begin reading at.
len - The number of bytes to return. This value can be larger than buffer.length - off, in which case the rest of the returned byte array will be filled with zeros.
Returns:
The trimmed byte array.
Throws:
IndexOutOfBoundsException - If off or len is negative, or if off is larger than the byte array's length.

trim

public static byte[] trim(BigInteger bi)
Returns the byte array representation of the given big integer with the leading zero byte (if any) trimmed off.
Parameters:
bi - The integer to trim.
Returns:
The byte representation of the big integer, with any leading zero removed.

unixTime

public static int unixTime()
Returns the integer value of System.currentTimeMillis() / 1000.
Returns:
The current time, in seconds.

wrapBuffer

public static Object wrapBuffer(ByteBuffer buffer)

wrapBuffer

public static Object wrapBuffer(ByteBuffer buffer,
                                String prefix)

Util.java -- Miscellaneous utility methods. Copyright (C) 2006 Free Software Foundation, Inc. This file is a part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.