Package ru.bitel.bgbilling.apps.cashcheck.frk.utils

# Class FrkUtils

java.lang.Object
ru.bitel.bgbilling.apps.cashcheck.frk.utils.FrkUtils

public class FrkUtils extends Object

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `FrkUtils()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static Set<Class<?>>`
  `driversTouch()`
  Ооочень хитрый поиск по каталогам с драйверами...
  `static String`
  `formatMDE(long total)`
  Конвертация суммы в МДЕ (целое число) в сумму руб-коп (строкой)
  `static String`
  `getExceptionMessage(Throwable t, Class<?>[] noIncludeClassnameExceptions)`
  Превращатель вложенных экзепшенов в более или менее приличное сообщение.
  `static String`
  `getUpTime(long _startTime)`
  время старта и аптайм, одной строкой
  `static BigDecimal`
  `parseBigDecimal(String val)`
  Разбор BigDecimal.
  `static int`
  `parseInt(String val)`
  Разбор целого числа (делано для паролей).
  `static long`
  `parseLong(String val)`
  `static Check`
  `processCommandCheckParameters(String[] parameters, org.slf4j.Logger logger)`
  замена старого метода, сейчас парсит чек и если что кидает DriverException в обёртке

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

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

- ## Constructor Details

  - ### FrkUtils

    public FrkUtils()

- ## Method Details

  - ### parseInt

    public static int parseInt(String val) throws ru.bitel.bgbilling.apps.cashcheck.frk.server.DriverException
    Разбор целого числа (делано для паролей). Использовать в драйверах only, ибо генерирует его экзепшен.
    Parameters:
      `val` - значение
    Returns:
      целое число
    Throws:
      `ru.bitel.bgbilling.apps.cashcheck.frk.server.DriverException` - если число нельзя преобразовать

  - ### parseLong

    public static long parseLong(String val) throws ru.bitel.bgbilling.apps.cashcheck.frk.server.DriverException
    Throws:
      `ru.bitel.bgbilling.apps.cashcheck.frk.server.DriverException`

  - ### parseBigDecimal

    public static BigDecimal parseBigDecimal(String val) throws ru.bitel.bgbilling.apps.cashcheck.frk.server.DriverException
    Разбор BigDecimal. Использовать в драйверах only.
    Parameters:
      `val` - значение
    Returns:
      BigDecimal-число
    Throws:
      `ru.bitel.bgbilling.apps.cashcheck.frk.server.DriverException` - если число нельзя преобразовать

  - ### formatMDE

    public static String formatMDE(long total)
    Конвертация суммы в МДЕ (целое число) в сумму руб-коп (строкой)
    Parameters:
      `total` - сумма в МДЕ
    Returns:
      строка-сумма

  - ### driversTouch

    public static Set<Class<?>> driversTouch()
    Ооочень хитрый поиск по каталогам с драйверами... Ищем в пакете, по всем контекстам, все классы, имплементящие нужны нам интерфаце.

  - ### getUpTime

    public static String getUpTime(long _startTime)
    время старта и аптайм, одной строкой

  - ### getExceptionMessage

    public static String getExceptionMessage(Throwable t, Class<?>[] noIncludeClassnameExceptions)
    Превращатель вложенных экзепшенов в более или менее приличное сообщение. Например, тройная вложенность превратится в:

         Ошибка трансформации или печати <= ExceptionInInitializerError <= fop config not available

    Можно включать имена классов (делается через toString), можно для некоторых не включать (для красоты сообщения) — берётся getMessage, а если его нет, то краткое имя класса экзепшена.
    Parameters:
      `t` - исходный тровейбл
      `noIncludeClassnameExceptions` - массив .class экхепшенов для которых не включать имена классов в цепочку сообщений
    Returns:
      строка-описание.

  - ### processCommandCheckParameters

    public static Check processCommandCheckParameters(String[] parameters, org.slf4j.Logger logger) throws ru.bitel.bgbilling.apps.cashcheck.frk.server.DriverException
    замена старого метода, сейчас парсит чек и если что кидает DriverException в обёртке
    Throws:
      `ru.bitel.bgbilling.apps.cashcheck.frk.server.DriverException`