ru.bitel.bgbilling.modules.license.common

## Class LicenseUtils

- java.lang.Object
- - ru.bitel.bgbilling.modules.license.common.LicenseUtils

-     public class LicenseUtils
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `LicenseUtils()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static java.lang.String` | `buildLicenseCostUrlRequest(ConfirmedOrder item, java.lang.String version, Preferences moduleSetup)` Формирует url-запрос на получение стоимости одного компонентоа.
    `static java.lang.String` | `buildLicenseCostUrlRequest(java.util.List<ConfirmedOrder> packageItems, java.lang.String version, Preferences moduleSetup)` Формирует url-запрос на получение стоимостей компонентов.
    `static java.lang.String` | `buildLicenseCostUrlRequest(java.lang.String itemName, java.lang.Integer itemCount, java.lang.String version, Preferences moduleSetup)`
    `static java.lang.String` | `encryptLicenseText(java.lang.String originalText, Preferences moduleSetup)`
    `static java.lang.String` | `encryptLicenseText(java.lang.String originalText, java.lang.String path, java.lang.String launchString)` Зашифровывает текст лицензии
    `static java.lang.String` | `formatCost(float cost)` Преобразует стоимость в строку формата "0,00"
    `static float` | `getCost(java.lang.String costRequestUrl, javax.xml.ws.Holder<java.lang.Integer> holderUnlimitCount)` Получает стоимость для одного компонента.
    `static OrderBillData` | `getCostDelta(java.lang.String itemName, java.lang.Integer confirmedItemsCount, java.lang.Integer itemCountDelta, java.lang.String version, Preferences moduleSetup)` Получает стоимость для добавляемого компонента как разницу стоимости предыдущей лицензии и лицензии после добавления к ней новых договоров
    `static java.util.Map<java.lang.String,java.math.BigDecimal>` | `getCosts(java.lang.String costRequestUrl)` Получает стоимости компонентов.
    `static java.lang.String` | `getLicenseText(java.util.List<ConfirmedOrder> copyItems, LicenseManager licenseManager, int contractId, Preferences moduleSetup, Copy copy)` Получает текст лицензии.
    `static java.lang.String` | `getShortVersion(java.lang.String version)`
    `static void` | `sendLiceneseText(Setup setup, java.lang.String mails, java.lang.String licenseText, java.lang.String subject)` Отправляет текст лицензии по заданным адресам.

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

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

- - ### Constructor Detail

    - #### LicenseUtils

          public LicenseUtils()

  - ### Method Detail

    - #### getLicenseText

          public static java.lang.String getLicenseText(java.util.List<ConfirmedOrder> copyItems,
                                                        LicenseManager licenseManager,
                                                        int contractId,
                                                        Preferences moduleSetup,
                                                        Copy copy)

      Получает текст лицензии.
      Parameters:
        `copyItems` - - список компонентов
        `licenseManager` - - менеджер лицензий
        `contractManager` - - менеджер договоров
        `contractId` - - id договора
        `moduleSetup` - - конфигурация модуля
      Returns:
        текст лицензии

    - #### encryptLicenseText

          public static java.lang.String encryptLicenseText(java.lang.String originalText,
                                                            Preferences moduleSetup)
                                                     throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### encryptLicenseText

          public static java.lang.String encryptLicenseText(java.lang.String originalText,
                                                            java.lang.String path,
                                                            java.lang.String launchString)
                                                     throws java.io.IOException

      Зашифровывает текст лицензии
      Parameters:
        `originalText` - - исходный текст лицензи
        `path` - - путь к скрипту шифрования
        `launchString` - - строка запуска скрипта
      Returns:
        зашифрованный текст лицензии
      Throws:
        `java.io.IOException`

    - #### getCosts

          public static java.util.Map<java.lang.String,java.math.BigDecimal> getCosts(java.lang.String costRequestUrl)

      Получает стоимости компонентов.
      Parameters:
        `costRequestUrl` - - url-запрос скрипта вычисления стоимостей
      Returns:
        пары вида "название компонента - стоимость"

    - #### getCost

          public static float getCost(java.lang.String costRequestUrl,
                                      javax.xml.ws.Holder<java.lang.Integer> holderUnlimitCount)

      Получает стоимость для одного компонента.
      Parameters:
        `costRequestUrl` - - url-запрос скрипта вычисления стоимостей
        `holderUnlimitCount` - - если не null, то вставит в него число после которого начинается безлимит.
      Returns:
        стоимость компонента

    - #### getCostDelta

          public static OrderBillData getCostDelta(java.lang.String itemName,
                                                   java.lang.Integer confirmedItemsCount,
                                                   java.lang.Integer itemCountDelta,
                                                   java.lang.String version,
                                                   Preferences moduleSetup)

      Получает стоимость для добавляемого компонента как разницу стоимости предыдущей лицензии и лицензии после добавления к ней новых договоров
      Parameters:
        `costRequestUrl` - - url-запрос скрипта вычисления стоимостей
      Returns:
        стоимость компонента

    - #### buildLicenseCostUrlRequest

          public static java.lang.String buildLicenseCostUrlRequest(java.util.List<ConfirmedOrder> packageItems,
                                                                    java.lang.String version,
                                                                    Preferences moduleSetup)

      Формирует url-запрос на получение стоимостей компонентов.
      Parameters:
        `packageItems` - - список компонентов
        `version` - - версия продукта
        `moduleSetup` - - конфигурация модуля лицензий
      Returns:
        url-запрос в виде строки

    - #### getShortVersion

          public static java.lang.String getShortVersion(java.lang.String version)

    - #### buildLicenseCostUrlRequest

          public static java.lang.String buildLicenseCostUrlRequest(ConfirmedOrder item,
                                                                    java.lang.String version,
                                                                    Preferences moduleSetup)

      Формирует url-запрос на получение стоимости одного компонентоа.
      Parameters:
        `item` - - компонент
        `version` - - версия продукта
        `moduleSetup` - - конфигурация модуля лицензий
      Returns:
        url-запрос в виде строки

    - #### buildLicenseCostUrlRequest

          public static java.lang.String buildLicenseCostUrlRequest(java.lang.String itemName,
                                                                    java.lang.Integer itemCount,
                                                                    java.lang.String version,
                                                                    Preferences moduleSetup)

    - #### formatCost

          public static java.lang.String formatCost(float cost)

      Преобразует стоимость в строку формата "0,00"
      Parameters:
        `cost` - - стоимость (напр., 3.5f)
      Returns:
        строка (напр., "3,50")

    - #### sendLiceneseText

          public static void sendLiceneseText(Setup setup,
                                              java.lang.String mails,
                                              java.lang.String licenseText,
                                              java.lang.String subject)
                                       throws ru.bitel.bgbilling.common.BGException

      Отправляет текст лицензии по заданным адресам.
      Parameters:
        `setup` -
        `mails` -
        `licenseText` -
        `subject` -
      Throws:
        `javax.mail.MessagingException`
        `ru.bitel.bgbilling.common.BGException`