V
- 値の型public class MultipleKeyCaseMap<V> extends MapWrapper<java.lang.String,V>
Constructor and Description |
---|
MultipleKeyCaseMap()
MultipleKeyCaseMap のインスタンスを生成する。 |
MultipleKeyCaseMap(java.util.Map<java.lang.String,V> map)
map を元に、MultipleKeyCaseMap のインスタンスを生成する。
呼び出し側でキー変換情報をキャッシュ可能な場合は、
性能劣化を防ぐためにMultipleKeyCaseMap(Map, Map) を使用すること。 |
MultipleKeyCaseMap(java.util.Map<java.lang.String,V> map,
java.util.Map<java.lang.String,java.lang.String> keyNames)
map とキー変換情報を元にMultipleKeyCaseMap のインスタンスを生成する。
|
MultipleKeyCaseMap(MultipleKeyCaseMap<V> orig)
コピーコンストラクタ。
|
Modifier and Type | Method and Description |
---|---|
protected void |
addKeyConversion(java.lang.String key)
指定されたキー名に対するキー変換情報をキー変換情報マップに追加する。
|
boolean |
containsKey(java.lang.Object key)
キー名の存在チェック。
指定されるキー名は、大文字小文字は区別しない。
また、アンダースコア(_)を含むキー名の場合には、アンダースコアを除去したキー名を指定してもよい。
|
protected static <KEY,VAL> java.util.Map<KEY,VAL> |
copyValueOf(java.util.Map<KEY,VAL> original)
引数で与えられたMapをコピーする。
|
V |
get(java.lang.Object key)
指定されたキー名に対応する値を返却する。
指定されるキー名は、大文字小文字は区別しない。
また、アンダースコア(_)を含むキー名の場合には、アンダースコアを除去したキー名を指定してもよい。
|
protected java.lang.String |
getActualDataKey(java.lang.String key)
指定されたキー名に対応する実データマップのキー名を取得する。
|
java.util.Map<java.lang.String,V> |
getDelegateMap()
このラッパーが処理を委譲する
Map オブジェクトを返す。 |
V |
put(java.lang.String key,
V value)
MapWrapper.getDelegateMap() が返すMap オブジェクトに処理を委譲する。 |
void |
putAll(java.util.Map<? extends java.lang.String,? extends V> m)
MapWrapper.getDelegateMap() が返すMap オブジェクトに処理を委譲する。 |
clear, containsValue, entrySet, equals, getDelegateMapOfType, hashCode, isEmpty, keySet, remove, size, toString, values
@Published(tag="architect") public MultipleKeyCaseMap()
MultipleKeyCaseMap
のインスタンスを生成する。@Published(tag="architect") public MultipleKeyCaseMap(java.util.Map<java.lang.String,V> map)
map
を元に、MultipleKeyCaseMap
のインスタンスを生成する。
呼び出し側でキー変換情報をキャッシュ可能な場合は、
性能劣化を防ぐためにMultipleKeyCaseMap(Map, Map)
を使用すること。map
- マップpublic MultipleKeyCaseMap(java.util.Map<java.lang.String,V> map, java.util.Map<java.lang.String,java.lang.String> keyNames)
map
とキー変換情報を元にMultipleKeyCaseMap
のインスタンスを生成する。
呼び出し側でキー変換情報をキャッシュしている場合にこのコンストラクタを使用する。
キー変換情報マップのkeyとvalueは下記のとおり。
key: 実データマップキーの大文字を小文字にし、アンダースコアを削除した値
value: 実データマップキー
キー変換情報マップを作成する際は、
StringUtil.lowerAndTrimUnderScore(String)
メソッドを使用してkeyの値を取得すること。
本コンストラクタを呼び出す場合は、引数のマップとキー変換情報の整合性が取れている必要がある。
map
- マップkeyNames
- キー変換情報public MultipleKeyCaseMap(MultipleKeyCaseMap<V> orig)
orig
- コピー元となるMapprotected static <KEY,VAL> java.util.Map<KEY,VAL> copyValueOf(java.util.Map<KEY,VAL> original)
KEY
- キーの型VAL
- 値の型original
- コピー元のMappublic java.util.Map<java.lang.String,V> getDelegateMap()
Map
オブジェクトを返す。getDelegateMap
in class MapWrapper<java.lang.String,V>
@Published public V put(java.lang.String key, V value)
MapWrapper.getDelegateMap()
が返すMap
オブジェクトに処理を委譲する。put
in interface java.util.Map<java.lang.String,V>
put
in class MapWrapper<java.lang.String,V>
@Published public void putAll(java.util.Map<? extends java.lang.String,? extends V> m)
MapWrapper.getDelegateMap()
が返すMap
オブジェクトに処理を委譲する。putAll
in interface java.util.Map<java.lang.String,V>
putAll
in class MapWrapper<java.lang.String,V>
@Published public boolean containsKey(java.lang.Object key)
containsKey
in interface java.util.Map<java.lang.String,V>
containsKey
in class MapWrapper<java.lang.String,V>
key
- キー名@Published public V get(java.lang.Object key)
get
in interface java.util.Map<java.lang.String,V>
get
in class MapWrapper<java.lang.String,V>
key
- キー名null
を返却する。)protected void addKeyConversion(java.lang.String key)
キー変換情報マップに追加される内容は下記のとおり。
key: 指定されたキー名を指定してStringUtil.lowerAndTrimUnderScore(String)
メソッドを呼び出した結果
value: 指定されたキー名
key
- キー名protected java.lang.String getActualDataKey(java.lang.String key)
性能劣化を防止するために、一度指定されたキー名はキャッシュする(=キー変換情報マップに追加する)。
これにより、次回同一キーが指定された場合にキャッシュから実データマップのキー名が取得できる。
このキャッシュにより、本オブジェクトが保持するキー変換情報マップは、
StringUtil.lowerAndTrimUnderScore(String)
が返す値だけでなく、
このメソッドで指定されたキー名と実データマップのキー名のペアも含まれる。
key
- キー名