kz.gamma.core
Class UtilCM

java.lang.Object
  extended by kz.gamma.core.UtilCM

public class UtilCM
extends java.lang.Object

Класс методов конвертирования, копирования данных и формирования URL


Field Summary
static java.lang.String hexChars
          Символы, которые присутствуют в HEX-кодировке
private static int MAX_BASE32_SIZE
           
 
Constructor Summary
UtilCM()
           
 
Method Summary
static byte[] addressToByte(java.lang.Number address, int type)
          Конвертирование адреса в его байтовое представление
static java.lang.String array2hex(byte[] value)
          Конвертирование массива байт в HEX-строку
static java.lang.String array2hex(byte[] value, int size)
          Конвертирование массива байт в HEX-строку
static java.lang.String array2hex(byte[] value, int offset, int size)
          Конвертирование массива байт в HEX-строку
static java.lang.String bin2base32(byte[] bin, int offset, int size)
          Формирование base32
static int byteToInt(byte[] x, int offset)
          Deprecated. replaced by byteToInt(byte[] x, int offset, int type)
static int byteToInt(byte[] x, int offset, int type)
          Конвертирование массива из 4-x байт в целое число.
static long byteToLong(byte[] x, int offset, int type)
          Конвертирование массива из 8-x байт в целое число.
static short byteToShort(byte[] x, int offset, int type)
          Конвертирование массива из 2-x байт в целое число.
static int calcCRC(byte[] data)
          Вычисление CRC32
static byte[] concat(byte[] A, byte[] B)
          Конкатенация массивов
static byte[] copyByte(byte[] x, int offset, int size)
          Извлечение массива байт из массива байт
static byte[] copyByte(byte[] x, int offset, int size, int type)
          Извлечение массива байт из массива байт.
static java.lang.String getFullProfileName(java.lang.String urlOrProfile, java.lang.String param, int paramType)
          Deprecated. replaced by getUrl(String urlOrProfile, String param, int paramType)
 java.lang.String getHexString(byte[] b)
          Конвертирование массива байт в HEX-строку
static java.lang.String getUrl(java.lang.String urlOrProfile, java.lang.String param, int paramType)
          Формирование URL для доступа к ключевому контейнеру
static java.lang.String hash2Ref(byte[] hash)
          Формирование референса
static byte[] hex2array(java.lang.String hex)
          Конвертирование HEX строки в массив байт
static byte[] intToByte(int x)
          Deprecated. replaced by intToByte(int x, int type)
static byte[] intToByte(int x, int type)
          Конвертирование целого числа в массив из 4-x байт
static byte[] inverseByte(byte[] x)
          Извлечение массива байт из массива байт.
static byte[] inverseCopyByte(byte[] x, int offset, int size)
          Извлечение массива байт из массива байт.
static byte[] longToByte(long x, int type)
          Конвертирование целого числа в массив из 8-и байт
static byte[] reverseParts(byte[] data, int offset)
          Переворачивание двух частей массива байт, начиная со смещения
static byte[] shortToByte(short x, int type)
          Конвертирование целого числа в массив из 2-x байт
static byte[] swapParts(byte[] data, int offset)
          Обмен двух частей массива, начиная со смещения
static java.lang.String toHexByte(int val)
          Конвертирование целого числа в HEX-строку
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAX_BASE32_SIZE

private static final int MAX_BASE32_SIZE
See Also:
Constant Field Values

hexChars

public static final java.lang.String hexChars
Символы, которые присутствуют в HEX-кодировке

See Also:
Constant Field Values
Constructor Detail

UtilCM

public UtilCM()
Method Detail

toHexByte

public static java.lang.String toHexByte(int val)
Конвертирование целого числа в HEX-строку

Parameters:
val - целое число
Returns:
HEX-строка

getHexString

public java.lang.String getHexString(byte[] b)
Конвертирование массива байт в HEX-строку

Parameters:
b - Массив байт
Returns:
HEX-строка

hex2array

public static byte[] hex2array(java.lang.String hex)
Конвертирование HEX строки в массив байт

Parameters:
hex - HEX строка
Returns:
массив байт

array2hex

public static java.lang.String array2hex(byte[] value)
Конвертирование массива байт в HEX-строку

Parameters:
value - Массив байт
Returns:
HEX строка

array2hex

public static java.lang.String array2hex(byte[] value,
                                         int size)
Конвертирование массива байт в HEX-строку

Parameters:
value - Массив байт
size - Размер массива
Returns:
HEX строка

array2hex

public static java.lang.String array2hex(byte[] value,
                                         int offset,
                                         int size)
Конвертирование массива байт в HEX-строку

Parameters:
value - Массив байт
offset - Смещение массива
size - Размер массива
Returns:
HEX строка

byteToInt

@Deprecated
public static int byteToInt(byte[] x,
                                       int offset)
Deprecated. replaced by byteToInt(byte[] x, int offset, int type)

Конвертирование массива из 4-x байт в целое число. Используется BIG ENDIAN.

Parameters:
x - Массив байт
offset - Смещение. Если x.length == 4, то offset = 0. Если x.length > 4, то (x.length - 4) >= offset >= 0.
Returns:
Целое число

byteToShort

public static short byteToShort(byte[] x,
                                int offset,
                                int type)
Конвертирование массива из 2-x байт в целое число.

Parameters:
x - Массив байт
offset - Смещение. Если x.length == 2, то offset = 0. Если x.length > 2, то (x.length - 2) >= offset >= 0.
type - Тип представления данных. Возможные варианты:
  • LibraryWrapper.SUN_CPU_ENDIAN_LITTLE - используется LITTLE ENDIAN;
  • LibraryWrapper.SUN_CPU_ENDIAN_BIG - используется BIG ENDIAN.
Returns:
Целое число

byteToInt

public static int byteToInt(byte[] x,
                            int offset,
                            int type)
Конвертирование массива из 4-x байт в целое число.

Parameters:
x - Массив байт
offset - Смещение. Если x.length == 4, то offset = 0. Если x.length > 4, то (x.length - 4) >= offset >= 0.
type - Тип представления данных. Возможные варианты:
  • LibraryWrapper.SUN_CPU_ENDIAN_LITTLE - используется LITTLE ENDIAN;
  • LibraryWrapper.SUN_CPU_ENDIAN_BIG - используется BIG ENDIAN.
Returns:
Целое число

byteToLong

public static long byteToLong(byte[] x,
                              int offset,
                              int type)
Конвертирование массива из 8-x байт в целое число.

Parameters:
x - Массив байт
offset - Смещение. Если x.length == 8, то offset = 0. Если x.length > 8, то (x.length - 8) >= offset >= 0.
type - Тип представления данных. Возможные варианты:
  • LibraryWrapper.SUN_CPU_ENDIAN_LITTLE - используется LITTLE ENDIAN;
  • LibraryWrapper.SUN_CPU_ENDIAN_BIG - используется BIG ENDIAN.
Returns:
Целое число

intToByte

@Deprecated
public static byte[] intToByte(int x)
Deprecated. replaced by intToByte(int x, int type)

Конвертирование целого числа в массив из 4-x байт. Используется BIG ENDIAN.

Parameters:
x - Целое число
Returns:
Массив из 4-х байт

shortToByte

public static byte[] shortToByte(short x,
                                 int type)
Конвертирование целого числа в массив из 2-x байт

Parameters:
x - Целое число
type - Тип представления данных. Возможные варианты:
  • LibraryWrapper.SUN_CPU_ENDIAN_LITTLE - используется LITTLE ENDIAN;
  • LibraryWrapper.SUN_CPU_ENDIAN_BIG - используется BIG ENDIAN.
Returns:
Массив из 2-х байт

intToByte

public static byte[] intToByte(int x,
                               int type)
Конвертирование целого числа в массив из 4-x байт

Parameters:
x - Целое число
type - Тип представления данных. Возможные варианты:
  • LibraryWrapper.SUN_CPU_ENDIAN_LITTLE - используется LITTLE ENDIAN;
  • LibraryWrapper.SUN_CPU_ENDIAN_BIG - используется BIG ENDIAN.
Returns:
Массив из 4-х байт

longToByte

public static byte[] longToByte(long x,
                                int type)
Конвертирование целого числа в массив из 8-и байт

Parameters:
x - Целое число
type - Тип представления данных. Возможные варианты:
  • LibraryWrapper.SUN_CPU_ENDIAN_LITTLE - используется LITTLE ENDIAN;
  • LibraryWrapper.SUN_CPU_ENDIAN_BIG - используется BIG ENDIAN.
Returns:
Массив из 8-и байт

addressToByte

public static byte[] addressToByte(java.lang.Number address,
                                   int type)
Конвертирование адреса в его байтовое представление

Parameters:
address - адрес
type - Тип представления данных. Возможные варианты:
  • LibraryWrapper.SUN_CPU_ENDIAN_LITTLE - используется LITTLE ENDIAN;
  • LibraryWrapper.SUN_CPU_ENDIAN_BIG - используется BIG ENDIAN.
Returns:
Байтовое представление адреса

copyByte

public static byte[] copyByte(byte[] x,
                              int offset,
                              int size)
Извлечение массива байт из массива байт

Parameters:
x - Массив байт
offset - Смещение, с которого начинать копирование из массива байт
size - Размер результирующего массива байт
Returns:
Результирующий массив байт

inverseCopyByte

public static byte[] inverseCopyByte(byte[] x,
                                     int offset,
                                     int size)
Извлечение массива байт из массива байт. Байты копируются в обратном порядке.

Parameters:
x - Массив байт
offset - Смещение, с которого начинать копирование из массива байт
size - Размер результирующего массива байт
Returns:
Результирующий массив байт

inverseByte

public static byte[] inverseByte(byte[] x)
Извлечение массива байт из массива байт. Байты копируются в обратном порядке.

Parameters:
x - Массив байт
Returns:
Результирующий массив байт

copyByte

public static byte[] copyByte(byte[] x,
                              int offset,
                              int size,
                              int type)
Извлечение массива байт из массива байт. Байты копируются в порядке, который зависит от type.

Parameters:
x - Массив байт
offset - Смещение, с которого начинать копирование из массива байт
size - Размер результирующего массива байт
type - Тип представления данных. Возможные варианты:
  • LibraryWrapper.SUN_CPU_ENDIAN_LITTLE - используется LITTLE ENDIAN;
  • LibraryWrapper.SUN_CPU_ENDIAN_BIG - используется BIG ENDIAN.
Returns:
Результирующий массив байт

getFullProfileName

@Deprecated
public static java.lang.String getFullProfileName(java.lang.String urlOrProfile,
                                                             java.lang.String param,
                                                             int paramType)
Deprecated. replaced by getUrl(String urlOrProfile, String param, int paramType)

Формирование URL для доступа к ключевому контейнеру

Parameters:
urlOrProfile - URL/профайл для доступа к ключевому контейнеру. Если передается профайл, то необходимо добавлять префикс "profile://"
param - Параметр. Данные определяются по paramType.
paramType - Тип параметра. Возможные варианты:
  • LibraryWrapper.URL_PASS - пароль для доступа к ключевому контейнеру;
  • LibraryWrapper.URL_SN - серийный номер сертификата/ключа.
Returns:
URL для доступа к ключевому контейнеру

getUrl

public static java.lang.String getUrl(java.lang.String urlOrProfile,
                                      java.lang.String param,
                                      int paramType)
Формирование URL для доступа к ключевому контейнеру

Parameters:
urlOrProfile - URL/профайл для доступа к ключевому контейнеру. Если передается профайл, то необходимо добавлять префикс "profile://"
param - Параметр. Данные определяются по paramType.
paramType - Тип параметра. Возможные варианты:
  • LibraryWrapper.URL_PASS - пароль для доступа к ключевому контейнеру;
  • LibraryWrapper.URL_SN - серийный номер сертификата/ключа.
Returns:
URL для доступа к ключевому контейнеру

concat

public static byte[] concat(byte[] A,
                            byte[] B)
Конкатенация массивов

Parameters:
A - Массив 1
B - Массив 2
Returns:
Результирующий массив

reverseParts

public static byte[] reverseParts(byte[] data,
                                  int offset)
Переворачивание двух частей массива байт, начиная со смещения

Parameters:
data - Данные
offset - Смещение
Returns:
Результирующий массив

swapParts

public static byte[] swapParts(byte[] data,
                               int offset)
Обмен двух частей массива, начиная со смещения

Parameters:
data - Данные
offset - Смещение
Returns:
Результирующий массив

calcCRC

public static int calcCRC(byte[] data)
Вычисление CRC32

Parameters:
data - - Данные на которые вычисляется CRC
Returns:
crc код.

hash2Ref

public static java.lang.String hash2Ref(byte[] hash)
Формирование референса

Parameters:
hash - хеш на алгоритме SHA-1
Returns:
Референс

bin2base32

public static java.lang.String bin2base32(byte[] bin,
                                          int offset,
                                          int size)
Формирование base32

Parameters:
bin - бинарные даные
Returns:
base32


Copyright © 1998-2014 Gamma Technologies. All Rights Reserved.