public class MapELResolver extends ELResolver
MapSE のインスタンスのプロパティ解決動作を定義します。 このリゾルバーは、型 java.util.Map のベースオブジェクトを処理します。任意のオブジェクトをプロパティとして受け入れ、そのオブジェクトをマップのキーとして使用します。結果の値は、そのキーに関連付けられているマップ内の値です。
 このリゾルバーは読み取り専用モードで構築できます。つまり、isReadOnly は常に true を返し、setValue(jakarta.el.ELContext, java.lang.Object, java.lang.Object, java.lang.Object) は常に PropertyNotWritableException をスローします。
ELResolver は CompositeELResolver を使用して組み合わされ、式を評価するための豊富なセマンティクスを定義します。詳細については、ELResolver の javadoc を参照してください。
CompositeELResolver, ELResolver, MapSERESOLVABLE_AT_DESIGN_TIME, TYPE| コンストラクターと説明 | 
|---|
| MapELResolver() 新しい読み取り / 書き込み  MapELResolverを作成します。 | 
| MapELResolver(boolean isReadOnly) 指定されたパラメーターによって読み取り専用ステータスが決定される新しい  MapELResolverを作成します。 | 
| 修飾子と型 | メソッドと説明 | 
|---|---|
| ClassSE<?> | getCommonPropertyType(ELContext context, ObjectSE base) ベースオブジェクトがマップの場合、このリゾルバーが  property引数に対して受け入れる最も一般的な型を返します。 | 
| IteratorSE<FeatureDescriptorSE> | getFeatureDescriptors(ELContext context, ObjectSE base) ベースオブジェクトがマップの場合、 Mapで使用可能なキーのセットを含むIteratorを返します。 | 
| ClassSE<?> | getType(ELContext context, ObjectSE base, ObjectSE property) ベースオブジェクトがマップの場合、このマップの値に対して最も一般的に受け入れられる型を返します。 | 
| ObjectSE | getValue(ELContext context, ObjectSE base, ObjectSE property) ベースオブジェクトがマップの場合、 property引数で指定されているように、指定されたキーに関連付けられた値を返します。 | 
| boolean | isReadOnly(ELContext context, ObjectSE base, ObjectSE property) ベースオブジェクトがマップの場合、 setValue(jakarta.el.ELContext, java.lang.Object, java.lang.Object, java.lang.Object)の呼び出しが常に失敗するかどうかを返します。 | 
| void | setValue(ELContext context, ObjectSE base, ObjectSE property, ObjectSE val) ベースオブジェクトがマップの場合、 property引数で指定されているように、指定されたキーに関連付けられた値を設定しようとします。 | 
convertToType, invokecloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic MapELResolver()
MapELResolver を作成します。public MapELResolver(boolean isReadOnly)
MapELResolver を作成します。isReadOnly - このリゾルバーがマップを変更できない場合は true。それ以外の場合は false。public ClassSE<?> getType(ELContext context, ObjectSE base, ObjectSE property)
 ベースが Map の場合、戻る前に、このリゾルバーによって ELContext オブジェクトの propertyResolved プロパティを true に設定する必要があります。このメソッドが呼び出された後、このプロパティが true でない場合、呼び出し元は戻り値を無視する必要があります。
 ベースが Map であるとすると、このメソッドは常に Object.class を返します。これは、Map が任意のオブジェクトを特定のキーの値として受け入れるためです。
ELResolver の getType context - この評価のコンテキスト。base - 分析するマップ。型 Map のベースのみがこのリゾルバーによって処理されます。property - 受け入れ可能な型を返すためのキー。このリゾルバーでは無視されます。ELContext の propertyResolved プロパティが true に設定されている場合、最も一般的な受け入れ可能な型。それ以外は未定義。NullPointerExceptionSE - コンテキストが null の場合 ELException - プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。public ObjectSE getValue(ELContext context, ObjectSE base, ObjectSE property)
property 引数で指定されているように、指定されたキーに関連付けられた値を返します。キーが見つからなかった場合は、null が返されます。 ベースが Map の場合、戻る前に、このリゾルバーによって ELContext オブジェクトの propertyResolved プロパティを true に設定する必要があります。このメソッドが呼び出された後、このプロパティが true でない場合、呼び出し元は戻り値を無視する必要があります。
Map.get(java.lang.Object)SE の場合と同様に、null が返されるからといって、キーのマッピングがないことを意味するわけではありません。Map がキーを null に明示的にマップすることも可能です。
ELResolver の getValue context - この評価のコンテキスト。base - 分析するマップ。型 Map のベースのみがこのリゾルバーによって処理されます。property - 関連する値が返されるキー。ELContext の propertyResolved プロパティが true に設定されている場合、指定されたキーに関連付けられている値、キーが見つからなかった場合は null。それ以外の場合は未定義です。ClassCastExceptionSE - キーがこのマップに不適切な型である場合(オプションで、基になる Map によってスローされます)。NullPointerExceptionSE - コンテキストが null の場合、またはキーが null であり、このマップが null キーを許可しない場合(後者はオプションで基になる Map によってスローされます)。ELException - プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。public void setValue(ELContext context, ObjectSE base, ObjectSE property, ObjectSE val)
property 引数で指定されているように、指定されたキーに関連付けられた値を設定しようとします。 ベースが Map の場合、戻る前に、このリゾルバーによって ELContext オブジェクトの propertyResolved プロパティを true に設定する必要があります。このメソッドが呼び出された後、このプロパティが true でない場合、呼び出し元は値が設定されていないと安全に想定できます。
 このリゾルバーが読み取り専用モードで作成された場合、このメソッドは常に PropertyNotWritableException をスローします。
Map が Collections.unmodifiableMap(java.util.Map<? extends K, ? extends V>)SE を使用して作成された場合、このメソッドは PropertyNotWritableException をスローする必要があります。残念ながら、これを検出するコレクション API メソッドはありません。ただし、実装はプロトタイプの変更不可能な Map を作成し、その実行時型をクエリして、回避策としてベースオブジェクトの実行時型と一致するかどうかを確認できます。
ELResolver の setValue context - この評価のコンテキスト。base - 変更するマップ。型 Map のベースのみがこのリゾルバーによって処理されます。property - 指定された値が関連付けられるキー。val - 指定されたキーに関連付けられる値。ClassCastExceptionSE - 指定されたキーまたは値のクラスにより、このマップに保存できない場合。NullPointerExceptionSE - コンテキストが null の場合、またはこのマップが null キーまたは値を許可せず、指定されたキーまたは値が null の場合。IllegalArgumentExceptionSE - このキーまたは値の何らかの側面により、このマップに保存できない場合。ELException - プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。PropertyNotWritableException - このリゾルバーが読み取り専用モードで構築された場合、または put 操作が基になるマップでサポートされていない場合。public boolean isReadOnly(ELContext context, ObjectSE base, ObjectSE property)
setValue(jakarta.el.ELContext, java.lang.Object, java.lang.Object, java.lang.Object) の呼び出しが常に失敗するかどうかを返します。 ベースが Map の場合、戻る前に、このリゾルバーによって ELContext オブジェクトの propertyResolved プロパティを true に設定する必要があります。このメソッドが呼び出された後、このプロパティが true でない場合、呼び出し元は戻り値を無視する必要があります。
 このリゾルバーが読み取り専用モードで作成された場合、このメソッドは常に true を返します。
Map が Collections.unmodifiableMap(java.util.Map<? extends K, ? extends V>)SE を使用して作成された場合、このメソッドは true を返す必要があります。残念ながら、これを検出するコレクション API メソッドはありません。ただし、実装では、プロトタイプの変更不可能な Map を作成し、その実行時型をクエリして、回避策としてベースオブジェクトの実行時型と一致するかどうかを確認できます。
ELResolver の isReadOnly context - この評価のコンテキスト。base - 分析するマップ。型 Map のベースのみがこのリゾルバーによって処理されます。property - 読み取り専用ステータスを返すためのキー。このリゾルバーでは無視されます。ELContext の propertyResolved プロパティが true に設定されている場合、setValue メソッドの呼び出しが常に失敗する場合は true、そのような呼び出しが成功する可能性がある場合は false。それ以外は未定義。NullPointerExceptionSE - コンテキストが null の場合 ELException - プロパティまたは変数の解決の実行中に例外がスローされた場合。スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。public IteratorSE<FeatureDescriptorSE> getFeatureDescriptors(ELContext context, ObjectSE base)
Map で使用可能なキーのセットを含む Iterator を返します。それ以外の場合は、null を返します。 返される Iterator には、FeatureDescriptorSE のインスタンスが 0 個以上含まれている必要があります。各 info オブジェクトには、マップ内のキーに関する情報が含まれており、次のように初期化されます。
toString メソッドを呼び出した場合の戻り値、またはキーが null の場合は "null"。falsefalsetrueFeatureDescriptor には、次の名前付き属性を設定する必要があります。ELResolver.TYPE - このキーで getClass() メソッドを呼び出した場合の戻り値、またはキーが null の場合は null。ELResolver.RESOLVABLE_AT_DESIGN_TIME - trueELResolver の getFeatureDescriptors context - この評価のコンテキスト。base - キーが繰り返されるマップ。型 Map のベースのみがこのリゾルバーによって処理されます。FeatureDescriptor オブジェクトを含む Iterator、またはベースオブジェクトがマップでない場合は null。FeatureDescriptorSEpublic ClassSE<?> getCommonPropertyType(ELContext context, ObjectSE base)
property 引数に対して受け入れる最も一般的な型を返します。それ以外の場合は、null を返します。 ベースが Map であるとすると、このメソッドは常に Object.class を返します。これは、Map が任意のオブジェクトをキーとして受け入れるためです。
ELResolver の getCommonPropertyType context - この評価のコンテキスト。base - 分析するマップ。型 Map のベースのみがこのリゾルバーによって処理されます。Map でない場合は null。それ以外の場合は Object.class。Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.