public interface InvocationContext
@AroundInvoke
public Object logInvocation(InvocationContext ctx) throws Exception {
String class = ctx.getMethod().getDeclaringClass().getName();
String method = ctx.getMethod().getName();
Logger.global.entering(class, method, ctx.getParameters());
try {
Object result = ctx.proceed();
Logger.global.exiting(class, method, result);
return result;
}
catch (Exception e) {
Logger.global.throwing(class, method, e);
throw e;
}
}
| 修飾子と型 | メソッドと説明 |
|---|---|
ConstructorSE<?> | getConstructor()AroundConstruct インターセプターメソッドが呼び出されたターゲットクラスのコンストラクターを返します。 |
MapSE<StringSE, ObjectSE> | getContextData() インターセプターが、呼び出しチェーン内の別のインターセプター、ビジネスメソッド、/ または Web サービスエンドポイントによる呼び出しに関連付けられたデータを取得または更新できるようにします。 |
MethodSE | getMethod() インターセプターが呼び出されたターゲットクラスのメソッドを返します。 |
ObjectSE[] | getParameters() ターゲットクラスのメソッドまたはコンストラクターに渡されるパラメーター値を返します。 |
ObjectSE | getTarget() ターゲットインスタンスを返します。 |
ObjectSE | getTimer() ターゲットクラスでのタイムアウトメソッド呼び出しに関連付けられたタイマーオブジェクトを返します。 AroundTimeout 以外のインターセプターメソッド型の場合は null 値を返します。 |
ObjectSE | proceed() インターセプターチェーンの次のインターセプターに進みます。 |
void | setParameters(ObjectSE[] params) ターゲットクラスのメソッドまたはコンストラクターに渡されるパラメーター値を設定します。 |
ObjectSE getTarget()
AroundConstruct ライフサイクルコールバックインターセプターメソッドの場合、getTarget メソッドは、proceed() メソッドの前に呼び出された場合に null を返します。ObjectSE getTimer()
AroundTimeout 以外のインターセプターメソッド型の場合は null 値を返します。例: Jakarta Enterprise Beans コンポーネントのタイムアウトに関連付けられている場合、このメソッドは Timer を返します。MethodSE getMethod()
AroundConstruct ライフサイクルコールバックインターセプターメソッドで null を返します。ConstructorSE<?> getConstructor()
AroundConstruct インターセプターメソッドが呼び出されたターゲットクラスのコンストラクターを返します。AroundConstruct インターセプターメソッド以外のインターセプターメソッド型の場合は null を返します。ObjectSE[] getParameters()
setParameters(java.lang.Object[]) が呼び出された場合、getParameters はパラメーターが設定された値を返します。IllegalStateExceptionSE - AroundConstruct コールバックではないライフサイクルコールバックメソッド内で呼び出された場合。void setParameters(ObjectSE[] params)
params - 配列としてのパラメーター値 IllegalStateExceptionSE - AroundConstruct コールバックではないライフサイクルコールバックメソッド内で呼び出された場合。IllegalArgumentExceptionSE - 指定されたパラメーター値の型がメソッドまたはコンストラクターパラメーターの型と一致しない場合、または提供されたパラメーターの数がメソッドまたはコンストラクターパラメーターの数と等しくない場合(最後のパラメーターが型 T の vararg パラメーターである場合)型 T[] のパラメーターと同等であると見なされます)。MapSE<StringSE,ObjectSE> getContextData()
javax.xml.rpc.handler.MessageContext のインスタンスになります。Map<String,Object> オブジェクトが返されます。ObjectSE proceed() throws ExceptionSE
proceed を呼び出すと、ターゲットクラスメソッドが呼び出されます。AroundConstruct ライフサイクルコールバックインターセプターメソッドの場合、チェーンの最後のインターセプターメソッドで proceed を呼び出すと、ターゲットインスタンスが作成されます。他のすべてのライフサイクルコールバックインターセプターメソッドの場合、ターゲットクラスにコールバックメソッドが定義されていない場合、チェーンの最後のインターセプターメソッドでの proceed の呼び出しは何もしません。次に呼び出されたメソッドの結果を返します。メソッドの戻り値の型が void の場合は null 値を返します。
ExceptionSE - コールスタックのターゲットメソッドまたはインターセプターメソッドによってスローされた場合 Copyright © 2019 Eclipse Foundation.
Use is subject to license terms.