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 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>>
TgetEnum(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
Возвращает новый подмап объектов, с ключами, начинающимися с префикса. Ключи теряют этот префикс, остаётся часть после префикса. Хак: для клонирования параметрМапа можно передать пустую строку.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:
toString
in 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.
-