Class ParameterMap

java.lang.Object
ru.bitel.common.ParameterMap
Direct Known Subclasses:
ParameterMap.DefaultParameterMap, Preferences

public abstract class ParameterMap
extends java.lang.Object
Исходный map параметров.
Его главная ф-ция - get( key, value ). Остальные используют эту функцию для парсинга значений (float, double). Можно врапить различные объекты, например сделать ParameterMap из XML элемента, из Map, из HttpRequest.

TODO: хорошо бы HttpRequest обернуть ParameterMap, тогда в акшенах, которые используются также для рассылки почты request можно было использовать прозрачно HttpRequest или парамерты рассылки почты
  • Nested Class Summary

    Nested Classes
    Modifier and Type Class Description
    static class  ParameterMap.DefaultParameterMap  
  • Field Summary

    Fields
    Modifier and Type Field Description
    protected java.lang.String mapPrint  
  • Constructor Summary

    Constructors
    Constructor Description
    ParameterMap()  
  • Method Summary

    Modifier and Type Method Description
    void addActionListener​(java.awt.event.ActionListener al)  
    abstract java.util.Set<java.util.Map.Entry<java.lang.String,​java.lang.String>> entrySet()  
    protected void extract​(java.util.Map<java.lang.String,​java.lang.String> data)  
    java.lang.String fingerprint()  
    java.lang.String get​(java.lang.String key)
    Получение значения из конфига.
    abstract java.lang.String get​(java.lang.String key, java.lang.String def)  
    java.math.BigDecimal getBigDecimal​(java.lang.String key, java.math.BigDecimal def)  
    boolean getBoolean​(java.lang.String key, boolean def)  
    char getChar​(java.lang.String key, char def)  
    double getDouble​(java.lang.String key, double def)  
    <T extends java.lang.Enum<T>>
    T
    getEnum​(java.lang.Class<T> enumType, java.lang.String key, T def)  
    float getFloat​(java.lang.String key, float def)  
    int getInt​(java.lang.String key, int def)  
    java.util.List<java.lang.Integer> getIntegerList​(java.lang.String key, java.util.List<java.lang.Integer> defList)
    Получение списка целых чисел из числовой строки разделенной запятыми.
    java.time.LocalDate getLocalDate​(java.lang.String key, java.time.LocalDate def)  
    long getLong​(java.lang.String key, long def)  
    java.util.Map<java.lang.String,​java.lang.String> getMap()
    Возвращает в виде жавовского Map все значения.
    ParameterMap inherit​(ParameterMap parameterMap)
    Создает новый ParameterMap, где текущий становится родительским к аргументу parameterMap.
    Т.е. при вызове get(String, String) у результата значение будет взято у аргумента parameterMap, а при отсутсвии - у текущего (ставшего родительским).
    ParameterMap sub​(java.lang.String prefix)
    Возвращает новый подмап объектов, с ключами, начинающимися с префикса.
    java.util.SortedMap<java.lang.Integer,​ParameterMap> subIndexed​(java.lang.String prefix)
    Возвращает новый мап.
    java.util.Map<java.lang.String,​ParameterMap> subKeyed​(java.lang.String prefix)
    Возвращает новый мап.
    ParameterMap subLined​(java.lang.String key, java.lang.String defValue)
    Возвращает новый подмап объектов, с ключами разбитыми из строки вида "custom:Пользовательские;test:Тестовые;0:Активен".
    protected void throwActionEvent​(java.awt.event.ActionEvent e)  
    void toReference​(javax.naming.Reference ref)  
    java.lang.String toString()  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • mapPrint

      protected java.lang.String mapPrint
  • Constructor Details

    • ParameterMap

      public ParameterMap()
  • Method Details

    • addActionListener

      public void addActionListener​(java.awt.event.ActionListener al)
    • throwActionEvent

      protected void throwActionEvent​(java.awt.event.ActionEvent e)
    • get

      public java.lang.String get​(java.lang.String key)
      Получение значения из конфига.
      Parameters:
      key - ключ
      Returns:
      значение или null, если отсутствует.
    • get

      public abstract java.lang.String get​(java.lang.String key, java.lang.String def)
    • getInt

      public int getInt​(java.lang.String key, int def)
    • getFloat

      public float getFloat​(java.lang.String key, float def)
    • getLong

      public long getLong​(java.lang.String key, long def)
    • getDouble

      public double getDouble​(java.lang.String key, double def)
    • getBigDecimal

      public java.math.BigDecimal getBigDecimal​(java.lang.String key, java.math.BigDecimal def)
    • getBoolean

      public boolean getBoolean​(java.lang.String key, boolean def)
    • getChar

      public char getChar​(java.lang.String key, char def)
    • getLocalDate

      public java.time.LocalDate getLocalDate​(java.lang.String key, java.time.LocalDate def)
    • getEnum

      public <T extends java.lang.Enum<T>> T getEnum​(java.lang.Class<T> enumType, java.lang.String key, T def)
    • getIntegerList

      public java.util.List<java.lang.Integer> getIntegerList​(java.lang.String key, java.util.List<java.lang.Integer> defList)
      Получение списка целых чисел из числовой строки разделенной запятыми.
      Parameters:
      key -
      defList -
      Returns:
      если параметр не задан вернет defList, иначе пустой лист или со значениями.
    • entrySet

      public abstract java.util.Set<java.util.Map.Entry<java.lang.String,​java.lang.String>> entrySet()
    • extract

      protected void extract​(java.util.Map<java.lang.String,​java.lang.String> data)
    • getMap

      public java.util.Map<java.lang.String,​java.lang.String> getMap()
      Возвращает в виде жавовского Map все значения.
    • fingerprint

      public java.lang.String fingerprint()
    • sub

      public ParameterMap sub​(java.lang.String prefix)
      Возвращает новый подмап объектов, с ключами, начинающимися с префикса. Ключи теряют этот префикс, остаётся часть после префикса. Хак: для клонирования параметрМапа можно передать пустую строку.
       prefix.1=2
       prefix.3=4
       ->
       1=2
       3=4
      Parameters:
      prefix - префикс.
      Returns:
      подмножество исходного мэпа c отрезанными из ключей префиксами. Никогда не null.
    • subIndexed

      public java.util.SortedMap<java.lang.Integer,​ParameterMap> subIndexed​(java.lang.String prefix)
      Возвращает новый мап. Берёт всё под префиксами и составляет мэп из числовых ид за ними и последующих значений, формируя из них ParameterMap. Аналогична subKeyed, но составляет сортированный мэп с числовыми ключами.
       prefix.1.12=2
       prefix.1.34=4
       prefix.2.56=2
       prefix.2.78=4
       ->
       сортированный мэп
       1={12=2,34=4}
       2={56=2,78=4}
      Parameters:
      prefix - префикс определяющий мэп
      Returns:
      SortedMap. Никогда не null.
      See Also:
      subKeyed(String)
    • subKeyed

      public java.util.Map<java.lang.String,​ParameterMap> subKeyed​(java.lang.String prefix)
      Возвращает новый мап. Берёт всё под префиксами и иставляет мэп из строковых ид за ними и последующих значений, формируя из них ParameterMap. Аналогична subIndexed, но составляет несортированный мэп со строковыми ключами.
       prefix.a.12=2
       prefix.a.34=4
       prefix.b.56=2
       prefix.b.78=4
       ->
       несортированный мэп
       a={12=2,34=4}
       b={56=2,78=4}
      Parameters:
      prefix - префикс определяющий мэп
      Returns:
      Map. Никогда не null.
      See Also:
      subIndexed(String)
    • toReference

      public void toReference​(javax.naming.Reference ref)
    • inherit

      public ParameterMap inherit​(ParameterMap parameterMap)
      Создает новый ParameterMap, где текущий становится родительским к аргументу parameterMap.
      Т.е. при вызове get(String, String) у результата значение будет взято у аргумента parameterMap, а при отсутсвии - у текущего (ставшего родительским).
       ParameterMap parent;
       ParameterMap child;
       ...
       ParameterMap current = parent.inherit( child );
       
      Parameters:
      parameterMap -
      Returns:
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object
    • subLined

      public ParameterMap subLined​(java.lang.String key, java.lang.String defValue)
      Возвращает новый подмап объектов, с ключами разбитыми из строки вида "custom:Пользовательские;test:Тестовые;0:Активен".
       key=1:2;3:4
       ->
       1=2
       3=4
      Parameters:
      key - ключ.
      defValue - по дефолту значение ключа в исходном виде , или null если пусть вернётся пустой мап
      Returns:
      подмножество исходного мэпа c сформированными ключами из значения. Врзвращается упорядоченный LinkedHashMap, т.е. entrySet выдаст в порядке как описано в строке. Никогда не null.