public class AspectJExpressionPointcut extends AbstractExpressionPointcut implements ClassFilter, IntroductionAwareMethodMatcher, BeanFactoryAware
Pointcut 実装。ポイントカット式の値は AspectJ 式です。これは、他のポイントカットを参照し、構成およびその他の操作を使用できます。
当然、これは Spring AOP のプロキシベースのモデルで処理されるため、メソッド実行ポイントカットのみがサポートされます。
TRUE| コンストラクターと説明 |
|---|
AspectJExpressionPointcut() 新しいデフォルトの AspectJExpressionPointcut を作成します。 |
AspectJExpressionPointcut(ClassSE<?> declarationScope, StringSE[] paramNames, ClassSE<?>[] paramTypes) 指定された設定で新しい AspectJExpressionPointcut を作成します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
boolean | equals(ObjectSE other) |
ClassFilter | getClassFilter() このポイントカットの ClassFilter を返します。 |
protected StringSE | getCurrentProxiedBeanName() |
MethodMatcher | getMethodMatcher() このポイントカットの MethodMatcher を返します。 |
org.aspectj.weaver.tools.PointcutExpression | getPointcutExpression() 基になる AspectJ ポイントカット式を返します。 |
int | hashCode() |
boolean | isRuntime() この MethodMatcher は動的ですか、つまり、2-arg matches メソッドが true を返す場合でも、実行時に MethodMatcher.matches(java.lang.reflect.Method, Class, Object[]) メソッドで最後の呼び出しを行う必要がありますか? |
boolean | matches(ClassSE<?> targetClass) ポイントカットは、特定のインターフェースまたはターゲットクラスに適用する必要がありますか? |
boolean | matches(MethodSE method, ClassSE<?> targetClass) 指定されたメソッドが一致するかどうか静的チェックを実行します。 |
boolean | matches(MethodSE method, ClassSE<?> targetClass, boolean hasIntroductions) 指定されたメソッドが一致するかどうか静的チェックを実行します。 |
boolean | matches(MethodSE method, ClassSE<?> targetClass, ObjectSE... args) このメソッドに静的に一致している必要があるランタイム(動的)一致があるかどうかを確認します。 |
void | setBeanFactory(BeanFactory beanFactory) 所有ファクトリを Bean インスタンスに提供するコールバック。 |
void | setParameterNames(StringSE... names) ポイントカットのパラメーター名を設定します。 |
void | setParameterTypes(ClassSE<?>... types) ポイントカットのパラメーター型を設定します。 |
void | setPointcutDeclarationScope(ClassSE<?> pointcutDeclarationScope) ポイントカットの宣言スコープを設定します。 |
StringSE | toString() |
getExpression, getLocation, onSetExpression, setExpression, setLocationcloneSE, finalizeSE, getClassSE, notifySE, notifyAllSE, waitSE, waitSE, waitSEpublic AspectJExpressionPointcut()
public void setPointcutDeclarationScope(ClassSE<?> pointcutDeclarationScope)
public void setParameterNames(StringSE... names)
public void setParameterTypes(ClassSE<?>... types)
public void setBeanFactory(BeanFactory beanFactory)
BeanFactoryAware 通常の Bean プロパティの設定後、ただし InitializingBean.afterPropertiesSet() またはカスタム init-method などの初期化コールバックの前に呼び出されます。
BeanFactoryAware の setBeanFactory beanFactory - 所有 BeanFactory(非 null)。Bean は、ファクトリのメソッドをすぐに呼び出すことができます。BeanInitializationExceptionpublic ClassFilter getClassFilter()
PointcutPointcut の getClassFilter null)public MethodMatcher getMethodMatcher()
PointcutPointcut の getMethodMatcher null)public org.aspectj.weaver.tools.PointcutExpression getPointcutExpression()
public boolean matches(ClassSE<?> targetClass)
ClassFilterClassFilter の matches targetClass - 候補ターゲットクラス public boolean matches(MethodSE method, ClassSE<?> targetClass, boolean hasIntroductions)
IntroductionAwareMethodMatcherMethodMatcher.matches(java.lang.reflect.Method, Class) メソッドの代わりにこれを呼び出すことができます。IntroductionAwareMethodMatcher の matches method - 候補メソッド targetClass - ターゲットクラス hasIntroductions - true は、代わりに求めているオブジェクトが 1 つ以上の導入のサブジェクトである場合。それ以外の場合は false public boolean matches(MethodSE method, ClassSE<?> targetClass)
MethodMatcher これが false を返す場合、または MethodMatcher.isRuntime() メソッドが false を返す場合、ランタイムチェックは行われません(つまり、MethodMatcher.matches(java.lang.reflect.Method, Class, Object[]) 呼び出しは行われません)。
MethodMatcher の matches method - 候補メソッド targetClass - ターゲットクラス public boolean isRuntime()
MethodMatchertrue を返す場合でも、実行時に MethodMatcher.matches(java.lang.reflect.Method, Class, Object[]) メソッドで最後の呼び出しを行う必要がありますか? AOP プロキシの作成時に呼び出すことができ、各メソッド呼び出しの前に再度呼び出す必要はありません。
MethodMatcher の isRuntime MethodMatcher.matches(java.lang.reflect.Method, Class, Object[]) メソッドによるランタイムマッチングが必要かどうか public boolean matches(MethodSE method, ClassSE<?> targetClass, ObjectSE... args)
MethodMatcher このメソッドが呼び出されるのは、2-arg matches メソッドが特定のメソッドとターゲットクラスの true を返し、MethodMatcher.isRuntime() メソッドが true を返す場合のみです。アドバイスが実行される可能性のある直前に呼び出され、after any アドバイスはアドバイスチェーンの前に実行されました。
MethodMatcher の matches method - 候補メソッド targetClass - ターゲットクラス args - メソッドの引数 MethodMatcher.matches(Method, Class)public int hashCode()
ObjectSE の hashCodeSE public StringSE toString()
ObjectSE の toStringSE