Node
がトランザクション内にあるかどうかを判断することは可能ですか? GraphDatabaseService
の方法で取得できNode.getGraphDatabase
ます。
私はこのようなことをしたいと思います:
public class Neo4JHelper {
public void setProperty(Node node, String key, Object value) {
if(isInTransaction(node) {
node.setProperty(key, value);
} else {
throw new MyOwnException("You are trying to set a node outside a transaction... you suck");
}
}
private boolean isInTransaction(Node node) {
//Something
}
}
Neo4JHelper
これを行う理由は、トランザクションの外部でクラスを使用しようとしたときに、ユーザーにカスタム エラーを与えたいからです。
別の解決策は、メソッド/クラスを使用するためにトランザクションが必要であることを何らかの形でコンパイラに伝え、そうでなければコンパイルエラーを発生させることができる場合です。