是否可以确定 aNode
是否在交易中?可以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
在事务之外使用我的类时给我的用户一个自定义错误。
另一种解决方案是,如果有可能以某种方式告诉编译器您需要一个事务来使用该方法/类,否则会给出编译错误。