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.