JDT を使用してメソッドの呼び出しをチェックし、その引数をチェックしています。MethodInvocation ノードにアクセスしてこの操作を実行する AST Visitor クラスを使用しています。Visitor クラスで以下のメソッドを使用します。
public boolean visit(MethodInvocation node) {
if (node.getName().toString().equals("createQuery")) {
String argument= node.arguments().get(0).toString();
// process the argument here
}
return true;
}
しかし、変数宣言の一部である呼び出しは参照されていません。
例: メソッド 'createQuery' の呼び出しを探している場合、以下の呼び出しが表示されます。
session.createQuery("some query here");
しかし、これは訪問されていません。
Query query = session.createQuery("another query here");
そのようなステートメントにアクセスして、適切な方法で引数を取得するにはどうすればよいですか?
助けてください。