我正在使用以下代码生成唯一关系
public Relationship createRelationshipTypeWithUniqueFactory(Index<Relationship> index,
String indexableKey, final String indexableValue,
final RelationshipType type, final Node start, final Node end) {
UniqueFactory<Relationship> factory = new UniqueFactory.UniqueRelationshipFactory(index) {
@Override
protected Relationship create(Map<String, Object> properties) {
Relationship r = start.createRelationshipTo(end, type);
return r;
}
};
return factory.getOrCreate(indexableKey, indexableValue);
}
工厂要求我传递一个键和值(用于索引),以便它可以强制关系的唯一性。但是,我不确定如何建立键+值。
让我们假设以下内容:
A - [知道] -> B(A 知道 B)其中 A 和 B 由物业电子邮件地址标识
我希望这种关系是唯一的,以便 A 与这种类型的 B 最多有 1 个 KNOWN 关系。此外,这应该防止 B 创建与 A 的附加关系(因为 KNOWS 关系是双向的)。
选择什么最有价值?电子邮件地址之一(例如两个中最重要的词汇排序)?
任何人都可以对此有所了解吗?
干杯,
埃里克