Package ru.bitel.common
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 или парамерты рассылки почты
Его главная ф-ция - 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 classParameterMap.DefaultParameterMap -
Field Summary
Fields Modifier and Type Field Description protected java.lang.StringmapPrint -
Constructor Summary
Constructors Constructor Description ParameterMap() -
Method Summary
Modifier and Type Method Description voidaddActionListener(java.awt.event.ActionListener al)abstract java.util.Set<java.util.Map.Entry<java.lang.String,java.lang.String>>entrySet()protected voidextract(java.util.Map<java.lang.String,java.lang.String> data)java.lang.Stringfingerprint()java.lang.Stringget(java.lang.String key)Получение значения из конфига.abstract java.lang.Stringget(java.lang.String key, java.lang.String def)java.math.BigDecimalgetBigDecimal(java.lang.String key, java.math.BigDecimal def)booleangetBoolean(java.lang.String key, boolean def)chargetChar(java.lang.String key, char def)doublegetDouble(java.lang.String key, double def)<T extends java.lang.Enum<T>>
TgetEnum(java.lang.Class<T> enumType, java.lang.String key, T def)floatgetFloat(java.lang.String key, float def)intgetInt(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.LocalDategetLocalDate(java.lang.String key, java.time.LocalDate def)longgetLong(java.lang.String key, long def)java.util.Map<java.lang.String,java.lang.String>getMap()Возвращает в виде жавовского Map все значения.ParameterMapinherit(ParameterMap parameterMap)Создает новый ParameterMap, где текущий становится родительским к аргументу parameterMap.
Т.е. при вызовеget(String, String)у результата значение будет взято у аргумента parameterMap, а при отсутсвии - у текущего (ставшего родительским).
ParameterMapsub(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)Возвращает новый мап.ParameterMapsubLined(java.lang.String key, java.lang.String defValue)Возвращает новый подмап объектов, с ключами разбитыми из строки вида "custom:Пользовательские;test:Тестовые;0:Активен".protected voidthrowActionEvent(java.awt.event.ActionEvent e)voidtoReference(javax.naming.Reference ref)java.lang.StringtoString()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
Возвращает новый подмап объектов, с ключами, начинающимися с префикса. Ключи теряют этот префикс, остаётся часть после префикса. Хак: для клонирования параметрМапа можно передать пустую строку.prefix.1=2 prefix.3=4 -> 1=2 3=4
- Parameters:
prefix- префикс.- Returns:
- подмножество исходного мэпа c отрезанными из ключей префиксами. Никогда не null.
-
subIndexed
Возвращает новый мап. Берёт всё под префиксами и составляет мэп из числовых ид за ними и последующих значений, формируя из них 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
Возвращает новый мап. Берёт всё под префиксами и иставляет мэп из строковых ид за ними и последующих значений, формируя из них 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
Создает новый 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:
toStringin classjava.lang.Object
-
subLined
Возвращает новый подмап объектов, с ключами разбитыми из строки вида "custom:Пользовательские;test:Тестовые;0:Активен".key=1:2;3:4 -> 1=2 3=4
- Parameters:
key- ключ.defValue- по дефолту значение ключа в исходном виде , или null если пусть вернётся пустой мап- Returns:
- подмножество исходного мэпа c сформированными ключами из значения. Врзвращается упорядоченный LinkedHashMap, т.е. entrySet выдаст в порядке как описано в строке. Никогда не null.
-