クラス Attributes
- java.lang.Object
-
- org.opengion.fukurou.util.Attributes
-
public final class Attributes extends Object
Attributes.java は、String 型キーにString型値を Map するクラスです。 HTMLのPOST/GET等の受け渡しや、String型の引数が多い場合に効果があります。 特に、getAttributes( String[] param ) による属性リスト作成は、 HTMLタグの属性定義を行う上で,非常に便利に利用できます。 ※ 6.1.1.0 (2015/01/17) StringBuilder と同様、set メソッド , add メソッドの戻り値に、自分自身を戻します。 これにより、連結処理できるようにします。 この実装は同期化されません。- バージョン
- 4.0
- 作成者
- Kazuhiko Hasegawa
- 導入されたバージョン:
- JDK5.0,
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 Attributes()
デフォルトコンストラクターAttributes(Attributes att)
Attributesオブジェクト を与えて新しく作成するコンストラクター
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 Attributes
add(String key, String value)
指定された値と指定されたキーをこのマップに追加します マップ自身のキーは、ユニークである為、既存の値に対して、 新しく値を追加します。Attributes
add(String key, String value, String sepa)
指定された値と指定されたキーをこのマップに追加します class属性や、style属性など、同一キーに対して、複数の値をつなげる場合に 使用します。void
clear()
マップからマッピングをすべて削除します 。String
get(String key)
マップが指定のキーをマップする値を返します。String
getAttribute()
マップに含まれているキーと属性のペアを タグの属性リストの形式ですべて返します。String
getAttribute(String... keys)
マップに含まれているキーと属性のペアを タグの属性リストの形式で返します。String
getCssFormat()
マップに含まれているキーと属性のペアを タグの属性リストの形式ですべて返します。ConcurrentMap<String,String>
getParamMap(String params)
指定の文字列を分解して、Mapを作成します。String
remove(String key)
このキーにマッピングがある場合に、そのマッピングをマップから削除します。Attributes
set(String key, String value)
指定された値と指定されたキーをこのマップに関連付けます 指定されたキーに、null を関連付けることはできません。Attributes
set(String key, String value, String def)
指定された値と指定されたキーをこのマップに関連付けます set( String key,String value ) との違いは、value が null の場合に、def を代わりにセットすることです。Attributes
set(Attributes att)
Attributes 属性を、既存の属性に上書き追加します。int
size()
マップ内のキーと値のマッピングの数を返します。String
toString()
このオブジェクトの文字列表現を返します。
-
-
-
コンストラクタの詳細
-
Attributes
public Attributes()
デフォルトコンストラクター- 変更履歴:
- 6.4.3.1 (2016/02/12) PMD refactoring. HashMap → ConcurrentHashMap に置き換え。
-
Attributes
public Attributes(Attributes att)
Attributesオブジェクト を与えて新しく作成するコンストラクター- パラメータ:
att
- Attributesオブジェクト- 変更履歴:
- 6.4.3.1 (2016/02/12) PMD refactoring. HashMap → ConcurrentHashMap に置き換え。
-
-
メソッドの詳細
-
clear
public void clear()
マップからマッピングをすべて削除します 。
-
get
public String get(String key)
マップが指定のキーをマップする値を返します。 マップがこのキーのマッピングを保持していない場合は null を返します。戻り値の null は、マップがキーのマッピングを 保持していないことを示すとはかぎりません。つまり、マップが 明示的にキーを null にマップすることもあります。- パラメータ:
key
- 関連付けられた値が返されるキー(大文字小文字は同値)- 戻り値:
- マップが、指定されたキーにマッピングしている値。 このキーに対するマッピングがマップにない場合は null
-
set
public Attributes set(String key, String value)
指定された値と指定されたキーをこのマップに関連付けます 指定されたキーに、null を関連付けることはできません。 (もちろん、"":ゼロストリング は登録できます。) なぜなら、getAttribute( String[] keys ) 等で値が null の キーは、取得できない為です。 また、すでに何らかの値がセットされている所に、null をセットした 場合は、前の値をなにも変更しません。 通常、値をクリアしたい場合は、 remove( String key ) を利用してください。- パラメータ:
key
- 指定される値が関連付けられるキー(大文字小文字は同値)value
- 指定されるキーに関連付けられる値- 戻り値:
- 自分自身
- 変更履歴:
- 6.1.1.0 (2015/01/17) 戻り値に、自分自身を返すようにします。
- このメソッドは、nullを返しません
-
set
public Attributes set(String key, String value, String def)
指定された値と指定されたキーをこのマップに関連付けます set( String key,String value ) との違いは、value が null の場合に、def を代わりにセットすることです。 ただし、value が null で、def も null の場合は、 なにもセットされません。- パラメータ:
key
- 指定される値が関連付けられるキー(大文字小文字は同値)value
- 指定されるキーに関連付けられる値def
- value が null の場合にキーに関連付けられる値- 戻り値:
- 自分自身
- 変更履歴:
- 6.1.1.0 (2015/01/17) 戻り値に、自分自身を返すようにします。
- このメソッドは、nullを返しません
-
set
public Attributes set(Attributes att)
Attributes 属性を、既存の属性に上書き追加します。 引数 att が null の場合は,何もしません。 内部の Map に直接書き込みますので、すでに同一キーの属性が存在している場合は, 上書きで置き換えます。 つまり、初期値を設定する場合は、最初に呼び出します。引数で設定された最新の値を 使用する場合は、最後に設定します。 ただし、#add(String,String) は、既存のキーに値を追記していきますので、これらより 後に設定しないと、上書きされてしまいますので、ご注意ください。 従来の、#addAttributes( Attributes ) の代替えメソッドです。- パラメータ:
att
- Attributes属性- 戻り値:
- 自分自身
- 変更履歴:
- 6.1.1.0 (2015/01/17) 戻り値に、自分自身を返すようにします。
- このメソッドは、nullを返しません
-
add
public Attributes add(String key, String value)
指定された値と指定されたキーをこのマップに追加します マップ自身のキーは、ユニークである為、既存の値に対して、 新しく値を追加します。 追加する方法は、値の文字列の結合です。このメソッドでは、 デフォルトのスペースで結合します。 値が null または、すでにそのキーに同一の値が関連付けられている場合は、 何もしません。- パラメータ:
key
- 指定される値が関連付けられるキー(大文字小文字は同値)value
- 指定されるキーの値に、追加される値- 戻り値:
- 自分自身
- 変更履歴:
- 6.1.1.0 (2015/01/17) 戻り値に、自分自身を返すようにします。
- このメソッドは、nullを返しません
-
add
public Attributes add(String key, String value, String sepa)
指定された値と指定されたキーをこのマップに追加します class属性や、style属性など、同一キーに対して、複数の値をつなげる場合に 使用します。 マップ自身のキーは、ユニークである為、既存の値に対して、 新しく値を追加します。 追加する方法は、値の文字列の結合です。このメソッドでは、 引数 sepa で文字列を結合します。 値が null または、sepa が null または、すでにそのキーに 同一の値が関連付けられている場合は、何もしません。- パラメータ:
key
- 指定される値が関連付けられるキー(大文字小文字は同値)value
- 指定されるキーの値に、追加される値sepa
- 値を連結するときの文字列- 戻り値:
- 自分自身
- 変更履歴:
- 6.1.1.0 (2015/01/17) 戻り値に、自分自身を返すようにします。
- このメソッドは、nullを返しません
-
remove
public String remove(String key)
このキーにマッピングがある場合に、そのマッピングをマップから削除します。- パラメータ:
key
- マッピングがマップから削除されるキー(大文字小文字は同値)- 戻り値:
- このキーにマッピングがある場合に、そのマッピングをマップから削除します 指定されたキーに関連した以前の値。key にマッピングがなかった場合は null。
-
size
public int size()
マップ内のキーと値のマッピングの数を返します。- 戻り値:
- インタフェース Map 内の size
-
getAttribute
public String getAttribute(String... keys)
マップに含まれているキーと属性のペアを タグの属性リストの形式で返します。 key1="value1" key2="value2" key3="value3" .... の形式で、value が null の 場合は,key そのもののペアを出力しません。 value が空文字列 "" の場合は,key="" で出力します。 引数には,key として出力したい値を配列文字列で渡します。 これは、拡張性に乏しい(すべて出せば,属性項目の追加に対応できる。) 方法ですが、タグ毎に異なる属性のみを管理するには,厳格に出力 タグ属性を定義したいという思いから,導入しました。- パラメータ:
keys
- 指定 key の文字列配列(可変長引数)(大文字小文字は同値)- 戻り値:
- キーと属性のペアをタグの属性リストの形式で返します
- 変更履歴:
- 6.0.4.0 (2014/11/28) 内部処理見直し。値の取得は、Mapから直接取得する。, 6.4.3.3 (2016/03/04) ConcurrentHashMap の not null制限のチェック追加
- このメソッドは、nullを返しません
-
getAttribute
public String getAttribute()
マップに含まれているキーと属性のペアを タグの属性リストの形式ですべて返します。 なお、value が null の場合は,key そのもののペアを出力しません。 value が空文字列 "" の場合は,key="" で出力します。- 戻り値:
- キーと属性のペアをタグの属性リストの形式で返します
- 変更履歴:
- 6.0.4.0 (2014/11/28) 内部処理見直し。値の取得は、Mapから直接取得する。, 6.4.3.4 (2016/03/11) forループを、forEach メソッドに置き換えます。
- このメソッドは、nullを返しません
-
getCssFormat
public String getCssFormat()
マップに含まれているキーと属性のペアを タグの属性リストの形式ですべて返します。 なお、value が nullや、空文字列("") の場合は,key そのもののペアを出力しません。 この文字列は、key:value; 形式で、文字列を作成します。value に、ダブルコーテーション は付けません。- 戻り値:
- キーと属性のペアをCSS形式で返します
- 変更履歴:
- 7.0.1.0 (2018/10/15) 新規作成
- このメソッドは、nullを返しません
-
getParamMap
public ConcurrentMap<String,String> getParamMap(String params)
指定の文字列を分解して、Mapを作成します。 『;』 で分解して、ここのキーと値を、『=』で分解します。 引数の値は、そのまま適用されますので、クオーテーション等は、付けないと想定しています。- パラメータ:
params
- キー=値; キー=値 形式の文字列- 戻り値:
- キーと属性に分解したMap
- 変更履歴:
- 7.4.2.1 (2021/05/08)
- このメソッドは、nullを返しません
-
-