質問

私たちは以下のpointcutその利用のためのマススペクトロメトリー追跡法入ります。な破損もないもの:に1を見たいのでちょっとドジで泣きやきを優雅;2わからない場合は防弾.

// tracing the execution of all methods except:
// - toString and descendants
// - methods identified with @NotTraced and descendants
pointcut theMethod() :
        within(*.*) &&
        !within(tracing.*)
        && execution(* *(..))
        && !adviceexecution()
        && !cflow(adviceexecution())
        && !execution( String *.toString() )
        && !cflow(execution( String *.toString() ))
        && !execution( @NotTraced * *(..) )
        && !cflow(execution( @NotTraced * *(..) ));

意思い?

役に立ちましたか?

解決

の方がはるかに複雑できます。

いしてもらえるのでしょうかは次の二つのパーツ:

  1. すべてのメソッド呼び出しの例外 toString()
  2. すべてのメソッド呼び出しの例外 @NotTracedとその子孫.

を利用できます、 && の両pointcuts同じ。

このようにできてより柔軟に、場合に必要なものをご利用になれます。

私は始めは非常に簡単で、使用AJDT Eclipse、モニターかjoinpointsにも影響を及ぼしている、最小なものになるかにあります。

今、そうい冗長性ここでは、例えば !adviceexecution()!cflow(adviceexecution), としていcflowおよび実行を繰り返し三異なるところがございます。

AJDTする友達のことは難しいだまさにそのものが除したいです。

で非常に簡単なけると、不要になった。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top