public class StaticFieldELResolver extends ELResolver
ELResolver。また、コンストラクター呼び出しを特別なケースとして処理します。 リゾルバーは、通常 Jakarta Expression Language 実装によって生成される型 ELClass の基本オブジェクトを処理します。
ELClassRESOLVABLE_AT_DESIGN_TIME, TYPE| コンストラクターと説明 |
|---|
StaticFieldELResolver() |
| 修飾子と型 | メソッドと説明 |
|---|---|
ClassSE<?> | getCommonPropertyType(ELContext context, ObjectSE base) プロパティの型を返します。 |
IteratorSE<FeatureDescriptorSE> | getFeatureDescriptors(ELContext context, ObjectSE base) 解決できるプロパティを返します。 |
ClassSE<?> | getType(ELContext context, ObjectSE base, ObjectSE property) 静的フィールドの型を返します。 |
ObjectSE | getValue(ELContext context, ObjectSE base, ObjectSE property) 静的フィールドの値を返します。 |
ObjectSE | invoke(ELContext context, ObjectSE base, ObjectSE methodName, ClassSE<?>[] paramTypes, ObjectSE[] params)public static メソッドまたはクラスのコンストラクターを呼び出します。 |
boolean | isReadOnly(ELContext context, ObjectSE base, ObjectSE property) 静的フィールドが書き込み可能かどうかを問い合わせます。 |
void | setValue(ELContext context, ObjectSE base, ObjectSE property, ObjectSE value) 静的フィールドへの書き込みを試みます。 |
convertToTypecloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic ObjectSE getValue(ELContext context, ObjectSE base, ObjectSE property)
静的フィールドの値を返します。
ベースオブジェクトが ELClass のインスタンスであり、プロパティが String の場合、戻る前に、このリゾルバーによって ELContext オブジェクトの propertyResolved プロパティを true に設定する必要があります。このメソッドが呼び出された後、このプロパティが true でない場合、呼び出し元は戻り値を無視する必要があります。
ELClass で指定されたクラスのパブリック静的フィールドである場合、静的フィールドの値を返します。Enum 定数は、Enum オブジェクトの静的なパブリックフィールドであり、この特殊なケースです。ELResolver の getValue context - この評価のコンテキスト。base - ELClass。property - 静的フィールド名。ELContext の propertyResolved プロパティが true に設定されている場合、静的フィールドの値。NullPointerExceptionSE - コンテキストが null の場合。PropertyNotFoundException - 指定されたクラスが存在しない場合、フィールドがクラスのパブリック静的フィールドでない場合、またはフィールドにアクセスできない場合。public void setValue(ELContext context, ObjectSE base, ObjectSE property, ObjectSE value)
静的フィールドへの書き込みを試みます。
ベースオブジェクトが ELClass のインスタンスであり、プロパティが String の場合、静的フィールドへの書き込みが許可されていないため、PropertyNotWritableException が常にスローされます。
ELResolver の setValue context - この評価のコンテキスト。base - ELClassproperty - フィールドの名前 value - クラスのフィールドに設定する値。NullPointerExceptionSE - コンテキストが null の場合 PropertyNotWritableException - ELClass のベースオブジェクトインスタンスと String の property インスタンスの場合 public ObjectSE invoke(ELContext context, ObjectSE base, ObjectSE methodName, ClassSE<?>[] paramTypes, ObjectSE[] params)
ベースオブジェクトが ELClass のインスタンスであり、メソッドが String である場合、戻る前に、リゾルバーによって ELContext オブジェクトの propertyResolved プロパティを true に設定する必要があります。このメソッドが呼び出された後、このプロパティが true でない場合、呼び出し元は戻り値を無視する必要があります。
method で指定された静的な public メソッドを呼び出します。
メソッドの選択に関係するプロセスは、BeanELResolver で使用されるプロセスと同じです。
特殊なケースとして、メソッドの名前が "<init>" の場合、クラスのコンストラクターが呼び出されます。
ELResolver の invoke base - ELClassmethodName - String に強制変換される場合、メソッドの単純な名前。paramTypes - メソッドの仮パラメーター型を宣言された順序で識別する Class オブジェクトの配列。メソッドにパラメーターがない場合は、空の配列を使用します。null にすることができます。その場合、メソッドの仮パラメーターの型は不明であると見なされます。params - メソッドに渡すパラメーター。パラメーターがない場合は null。context - この評価のコンテキスト。void 戻り値の型がある場合は null)。MethodNotFoundException - 適切な方法が見つからない場合。ELException - (ベース、メソッド)解決の実行中に例外がスローされた場合スローされた例外は、可能であれば、この例外の原因プロパティとして含める必要があります。スローされた例外が InvocationTargetException の場合、その cause を抽出し、それを ELException コンストラクターに渡します。public ClassSE<?> getType(ELContext context, ObjectSE base, ObjectSE property)
ベースオブジェクトが ELClass のインスタンスであり、プロパティが文字列である場合、ELContext オブジェクトの propertyResolved プロパティは、戻る前にリゾルバーによって true に設定される必要があります。このメソッドが呼び出された後、このプロパティが true でない場合、呼び出し元は値が設定されていないと安全に想定できます。
プロパティ文字列が ELClass で指定されたクラスのパブリック静的フィールドである場合は、静的フィールドの型を返します。
ELResolver の getType context - この評価のコンテキスト。base - ELClass。property - フィールドの名前 ELContext の propertyResolved プロパティが true に設定されている場合、フィールドの型の型。NullPointerExceptionSE - コンテキストが null の場合。PropertyNotFoundException - フィールドがクラスのパブリック静的フィールドでない場合、またはフィールドにアクセスできない場合。public boolean isReadOnly(ELContext context, ObjectSE base, ObjectSE property)
静的フィールドが書き込み可能かどうかを問い合わせます。
ベースオブジェクトが ELClass のインスタンスであり、プロパティが文字列である場合、ELContext オブジェクトの propertyResolved プロパティは、戻る前にリゾルバーによって true に設定される必要があります。このメソッドが呼び出された後、このプロパティが true でない場合、呼び出し元は値が設定されていないと安全に想定できます。
静的フィールドへの書き込みは許可されていないため、常に true を返します。
ELResolver の isReadOnly context - この評価のコンテキスト。base - ELClass。property - Bean の名前。trueNullPointerExceptionSE - コンテキストが null の場合。public IteratorSE<FeatureDescriptorSE> getFeatureDescriptors(ELContext context, ObjectSE base)
null を返します。ELResolver の getFeatureDescriptors context - この評価のコンテキスト。base - ELClass。null.FeatureDescriptorSEpublic ClassSE<?> getCommonPropertyType(ELContext context, ObjectSE base)
String.class を返します。ELResolver の getCommonPropertyType context - この評価のコンテキスト。base - ELClass。String.class.Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.