クラス ControlFlowPointcut

java.lang.ObjectSE
org.springframework.aop.support.ControlFlowPointcut
実装されたすべてのインターフェース:
SerializableSEClassFilterMethodMatcherPointcut

public class ControlFlowPointcut extends ObjectSE implements Pointcut, ClassFilter, MethodMatcher, SerializableSE
単純な cflow -style ポイントカットで使用するポイントカットおよびメソッドマッチャー。このようなポイントカットの評価は、通常のポイントカットの評価より 10-15 倍遅くなりますが、場合によっては便利です。
作成者:
Rod Johnson, Rob Harrop, Juergen Hoeller, Sam Brannen
関連事項:
  • フィールドサマリー

    インターフェース org.springframework.aop.ClassFilter から継承されたフィールド

    TRUE

    インターフェース org.springframework.aop.MethodMatcher から継承されたフィールド

    TRUE

    インターフェース org.springframework.aop.Pointcut から継承されたフィールド

    TRUE
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
    そのクラスのすべての制御フローに一致する新しいポイントカットを作成します。
    ControlFlowPointcut(ClassSE<?> clazz, StringSE methodName)
    指定されたクラスの指定されたメソッドのすべての呼び出しに一致する新しいポイントカットを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    boolean
    このポイントカットの ClassFilter を返します。
    int
    最適化のために、何回起動したかを知ることは有用です。
    このポイントカットの MethodMatcher を返します。
    int
    boolean
    これは MethodMatcher 動的ですか ? つまり、MethodMatcher.matches(Method, Class) が true を返した場合でも、実行時に MethodMatcher.matches(Method, Class, Object[]) メソッドを介して最終チェックを行う必要がありますか ?
    boolean
    matches(ClassSE<?> clazz)
    サブクラスはこれをオーバーライドして、フィルタリング(およびパフォーマンス)を向上させることができます。
    boolean
    matches(MethodSE method, ClassSE<?> targetClass)
    一部の候補クラスを除外することが可能な場合、サブクラスはこれをオーバーライドできます。
    boolean
    matches(MethodSE method, ClassSE<?> targetClass, ObjectSE... args)
    このメソッドに実行時 (動的) 一致があるかどうかを確認します (静的に一致している必要があります)。

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, finalize, getClass, notify, notifyAll, wait, waitSE, waitSE
  • コンストラクターの詳細

    • ControlFlowPointcut

      public ControlFlowPointcut(ClassSE<?> clazz)
      そのクラスのすべての制御フローに一致する新しいポイントカットを作成します。
      パラメーター:
      clazz - クラブ
    • ControlFlowPointcut

      public ControlFlowPointcut(ClassSE<?> clazz, @Nullable StringSE methodName)
      指定されたクラスの指定されたメソッドのすべての呼び出しに一致する新しいポイントカットを作成します。メソッド名が指定されていない場合、指定されたクラスのすべての制御フローに一致します。
      パラメーター:
      clazz - クラブ
      methodName - メソッドの名前 (null の場合があります)
  • メソッドの詳細

    • matches

      public boolean matches(ClassSE<?> clazz)
      サブクラスはこれをオーバーライドして、フィルタリング(およびパフォーマンス)を向上させることができます。
      次で指定:
      インターフェース ClassFiltermatches 
      パラメーター:
      clazz - 候補ターゲットクラス
      戻り値:
      アドバイスが与えられたターゲットクラスに適用されるべきかどうか
    • matches

      public boolean matches(MethodSE method, ClassSE<?> targetClass)
      一部の候補クラスを除外することが可能な場合、サブクラスはこれをオーバーライドできます。
      次で指定:
      インターフェース MethodMatchermatches 
      パラメーター:
      method - 候補メソッド
      targetClass - ターゲットクラス
      戻り値:
      このメソッドが静的に一致するかどうか
    • isRuntime

      public boolean isRuntime()
      インターフェースからコピーされた説明: MethodMatcher
      これは MethodMatcher 動的ですか ? つまり、MethodMatcher.matches(Method, Class) が true を返した場合でも、実行時に MethodMatcher.matches(Method, Class, Object[]) メソッドを介して最終チェックを行う必要がありますか ?

      AOP プロキシの作成時に呼び出すことができ、各メソッドを呼び出す前に再度呼び出す必要はありません。

      次で指定:
      インターフェース MethodMatcherisRuntime 
      戻り値:
      静的マッチングが成功した場合に、MethodMatcher.matches(Method, Class, Object[]) によるランタイムマッチングが必要かどうか
    • matches

      public boolean matches(MethodSE method, ClassSE<?> targetClass, ObjectSE... args)
      インターフェースからコピーされた説明: MethodMatcher
      このメソッドに実行時 (動的) 一致があるかどうかを確認します (静的に一致している必要があります)。

      このメソッドは、指定されたメソッドとターゲットクラスに対して MethodMatcher.matches(Method, Class) が true を返す場合、および MethodMatcher.isRuntime() が true を返す場合にのみ呼び出されます。

      アドバイスが実行される可能性がある直前に呼び出されます。after any アドバイス は、アドバイスの中で先に チェーン が実行されています。

      次で指定:
      インターフェース MethodMatchermatches 
      パラメーター:
      method - 候補メソッド
      targetClass - ターゲットクラス
      args - メソッドの引数
      戻り値:
      ランタイム一致があるかどうか
      関連事項:
    • getEvaluations

      public int getEvaluations()
      最適化のために、何回起動したかを知ることは有用です。
    • getClassFilter

      public ClassFilter getClassFilter()
      インターフェースからコピーされた説明: Pointcut
      このポイントカットの ClassFilter を返します。
      次で指定:
      インターフェース PointcutgetClassFilter 
      戻り値:
      ClassFilter (非 null)
    • getMethodMatcher

      public MethodMatcher getMethodMatcher()
      インターフェースからコピーされた説明: Pointcut
      このポイントカットの MethodMatcher を返します。
      次で指定:
      インターフェース PointcutgetMethodMatcher 
      戻り値:
      MethodMatcher (非 null)
    • equals

      public boolean equals(@Nullable ObjectSE other)
      オーバーライド:
      クラス ObjectSEequalsSE 
    • hashCode

      public int hashCode()
      オーバーライド:
      クラス ObjectSEhashCode 
    • toString

      public StringSE toString()
      オーバーライド:
      クラス ObjectSEtoString