Package ru.bitel.bgbilling.modules.softkey.server.bean

# Class SoftkeyUtils

java.lang.Object
ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
ru.bitel.bgbilling.modules.softkey.server.bean.SoftkeyUtils

public class SoftkeyUtils extends ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
Утильный класс для сервиса Softkey. содержит методы по шифрации/дешифрации сообщений, формировании xml сообщений к сервису

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SoftkeyUtils()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static Document`
  `createXml(Map<String,String> params)`
  Создание xml из параметров
  `Document`
  `decrypt(byte[] in, SoftkeyParams params)`
  Дешифрация закодированной xml
  `byte[]`
  `encrypt(Document doc, SoftkeyParams params)`
  Сериализация и шифрование xml по алгоритму RSA
  `boolean`
  `hasError(Document doc)`
  Проверяет наличие ошибки в ответе от сервиса
  `Document`
  `send(Map<String,String> dataParams, SoftkeyParams params, boolean isCrypt)`
  Отправка зашифрованного запроса к сервису
  `void`
  `setError(Document doc)`
  Посылает пользователю сообщение об ошибке
  `static byte[]`
  `sign(SoftkeyParams params, byte[] data)`
  Подпись сообщения по алгоритму SHA1withRSA

  ### Methods inherited from class ru.bitel.bgbilling.kernel.base.server.logger.BGLogger

  `error, error, error, getLogger, logError, logError`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### SoftkeyUtils

    public SoftkeyUtils()

- ## Method Details

  - ### encrypt

    public byte[] encrypt(Document doc, SoftkeyParams params) throws ru.bitel.bgbilling.common.BGException
    Сериализация и шифрование xml по алгоритму RSA
    Parameters:
      `doc` - xml с параметрами запроса к Софткей
      `mid` - код модуля, чтобы можно было получить конфигурацию
    Returns:
      строка зашифрованного текста
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### decrypt

    public Document decrypt(byte[] in, SoftkeyParams params) throws ru.bitel.bgbilling.common.BGException
    Дешифрация закодированной xml
    Parameters:
      `str` - зашифрованная строка
      `mid` - код модуля, чтобы можно было получить конфигурацию
    Returns:
      xml c ответом сервиса
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### sign

    public static byte[] sign(SoftkeyParams params, byte[] data) throws ru.bitel.bgbilling.common.BGException
    Подпись сообщения по алгоритму SHA1withRSA
    Parameters:
      `params` - параметры модуля
      `data` - данные для подписи
    Returns:
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### createXml

    public static Document createXml(Map<String,String> params) throws Exception
    Создание xml из параметров
    Parameters:
      `params` - параметры запроса
    Returns:
      xml c запросом
    Throws:
      `Exception`

  - ### setError

    public void setError(Document doc) throws Exception
    Посылает пользователю сообщение об ошибке
    Parameters:
      `doc` - xml, в которой есть сообщение об ошибке
    Throws:
      `Exception`

  - ### hasError

    public boolean hasError(Document doc) throws Exception
    Проверяет наличие ошибки в ответе от сервиса
    Parameters:
      `doc` -
    Returns:
    Throws:
      `Exception`

  - ### send

    public Document send(Map<String,String> dataParams, SoftkeyParams params, boolean isCrypt) throws ru.bitel.bgbilling.common.BGException
    Отправка зашифрованного запроса к сервису
    Parameters:
      `dataParams` - мап с параметрами запроса. Для каждой операции свой набор параметров
      `params` - настройки модуля
      `isCrypt` - режим отправки сообщения: true - с шифрованием, false - с подписью
    Returns:
      xml с ответом сервиса
    Throws:
      `ru.bitel.bgbilling.common.BGException`