Package ru.bitel.bgbilling.plugins.documents.server.bean.pattern

# Class DocumentPatternUtils

java.lang.Object
ru.bitel.bgbilling.plugins.documents.server.bean.pattern.DocumentPatternUtils

public final class DocumentPatternUtils extends Object
Утильный класс, предоставляющий некоторые общие методы для работы с шаблонами документов.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DocumentPatternUtils()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static List<String>`
  `getKeysFromString(String text)`
  Получение списка переменных, которые содержатся в куске текста (вид: {var}, {var(def)})
  `static String`
  `insertPatternPart(String srcString, String key, String value)`
  Обработка значений вида ${key} в самом значении переменных: замена в исходной строке ключа key на значение value.
  `static String`
  `replaceText(String source, String varName, String val)`
  Осуществляет поиск в строке source подстрок, соответствующих шаблону {value} или {value(значение_по_умолчанию)}, где value - имя переменной, а значение_по_умолчанию - то значение, которое подставится в текст документа в случае, если значение переменой будет отсутствовать.

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

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

- ## Constructor Details

  - ### DocumentPatternUtils

    public DocumentPatternUtils()

- ## Method Details

  - ### insertPatternPart

    public static String insertPatternPart(String srcString, String key, String value)
    Обработка значений вида ${key} в самом значении переменных: замена в исходной строке ключа key на значение value.
    Parameters:
      `srcString` - строка, в которой происходит замена подстроки
      `key` - ключ, который преобразуется к виду ${key}. в таком виде он ищется в строке srcString
      `value` - значение, на которое нужно заменить макрос
    Returns:
      строка с подстановкой, либо исходная строка,если key не был найден в строке.

  - ### getKeysFromString

    public static List<String> getKeysFromString(String text)
    Получение списка переменных, которые содержатся в куске текста (вид: {var}, {var(def)})
    Parameters:
      `text` - рассматриваемый кусок текста
    Returns:
      список имен переменных, содержащихся в тексте

  - ### replaceText

    public static String replaceText(String source, String varName, String val)
    Осуществляет поиск в строке source подстрок, соответствующих шаблону {value} или {value(значение_по_умолчанию)}, где value - имя переменной, а значение_по_умолчанию - то значение, которое подставится в текст документа в случае, если значение переменой будет отсутствовать. В случае успешного поиска производит замену каждой подстроки на соответствующее ей значение.
    Parameters:
      `source` - исходная строка с текстом, в которой нужно осуществить подстановки
      `varName` - имя переменной
      `val` - значение для замены (в т.ч. если пустое)
    Returns:
      преобразованная строка со всеми возможными подстановками