本文整理汇总了Java中org.neo4j.graphdb.index.UniqueFactory类的典型用法代码示例。如果您正苦于以下问题:Java UniqueFactory类的具体用法?Java UniqueFactory怎么用?Java UniqueFactory使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
UniqueFactory类属于org.neo4j.graphdb.index包,在下文中一共展示了UniqueFactory类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getOrCreate
import org.neo4j.graphdb.index.UniqueFactory; //导入依赖的package包/类
public Future<Node> getOrCreate( final String key, final Object value, final Object initialValue ) throws Exception
{
return executeDontWait( new WorkerCommand<CommandState, Node>()
{
@Override
public Node doWork( CommandState state )
{
UniqueFactory.UniqueNodeFactory factory = new UniqueFactory.UniqueNodeFactory( state.index )
{
@Override
protected void initialize( Node node, Map<String, Object> properties )
{
node.setProperty( key, initialValue );
}
};
return factory.getOrCreate( key, value );
}
} );
}
开发者ID:neo4j-contrib,项目名称:neo4j-lucene5-index,代码行数:20,代码来源:WorkThread.java
示例2: getOrCreateWithUniqueFactory
import org.neo4j.graphdb.index.UniqueFactory; //导入依赖的package包/类
private Node getOrCreateWithUniqueFactory(String nodeName) {
UniqueFactory<Node> factory = new UniqueFactory.UniqueNodeFactory(graphDb, "index") {
@Override
protected void initialize(Node created, Map<String, Object> properties) {
created.setProperty("className", properties.get("name"));
}
};
return factory.getOrCreate("name", nodeName);
}
开发者ID:ISA-tools,项目名称:FAIRsharing-Owl2Neo,代码行数:12,代码来源:Owl2Neo4jLoader.java
示例3: getOrCreateNodeWithUniqueFactory
import org.neo4j.graphdb.index.UniqueFactory; //导入依赖的package包/类
@Test
public void getOrCreateNodeWithUniqueFactory() throws Exception
{
final String key = "name";
final String value = "Mattias";
final String property = "counter";
final Index<Node> index = nodeIndex( LuceneIndexImplementation.EXACT_CONFIG );
final AtomicInteger counter = new AtomicInteger();
UniqueFactory<Node> factory = new UniqueFactory.UniqueNodeFactory( index )
{
@Override
protected void initialize( Node node, Map<String, Object> properties )
{
assertEquals( value, properties.get( key ) );
assertEquals( 1, properties.size() );
node.setProperty( property, counter.getAndIncrement() );
}
};
Node unique = factory.getOrCreate( key, value );
assertNotNull( unique );
assertEquals( "not initialized", 0, unique.getProperty( property, null ) );
assertEquals( unique, index.get( key, value ).getSingle() );
assertEquals( unique, factory.getOrCreate( key, value ) );
assertEquals( "initialized more than once", 0, unique.getProperty( property ) );
assertEquals( unique, index.get( key, value ).getSingle() );
finishTx( false );
}
开发者ID:neo4j-contrib,项目名称:neo4j-lucene5-index,代码行数:31,代码来源:TestLuceneIndex.java
示例4: getOrCreateRelationshipWithUniqueFactory
import org.neo4j.graphdb.index.UniqueFactory; //导入依赖的package包/类
@Test
public void getOrCreateRelationshipWithUniqueFactory() throws Exception
{
final String key = "name";
final String value = "Mattias";
final Node root = graphDb.createNode();
final Index<Relationship> index = relationshipIndex( LuceneIndexImplementation.EXACT_CONFIG );
final DynamicRelationshipType type = DynamicRelationshipType.withName( "SINGLE" );
UniqueFactory<Relationship> factory = new UniqueFactory.UniqueRelationshipFactory( index )
{
@Override
protected Relationship create( Map<String, Object> properties )
{
assertEquals( value, properties.get( key ) );
assertEquals( 1, properties.size() );
return root.createRelationshipTo( graphDatabase().createNode(), type );
}
};
Relationship unique = factory.getOrCreate( key, value );
assertEquals( unique, root.getSingleRelationship( type, Direction.BOTH ) );
assertNotNull( unique );
assertEquals( unique, index.get( key, value ).getSingle() );
assertEquals( unique, factory.getOrCreate( key, value ) );
assertEquals( unique, root.getSingleRelationship( type, Direction.BOTH ) );
assertEquals( unique, index.get( key, value ).getSingle() );
finishTx( false );
}
开发者ID:neo4j-contrib,项目名称:neo4j-lucene5-index,代码行数:33,代码来源:TestLuceneIndex.java
示例5: createNodeFactory
import org.neo4j.graphdb.index.UniqueFactory; //导入依赖的package包/类
/**
* The node factory is used for caching.
* @param db The Neo4j GraphDatabaseService that contains the pattern recognition hierarchy.
*/
private void createNodeFactory(GraphDatabaseService db) {
if (patternFactory == null) {
patternFactory = new UniqueFactory.UniqueNodeFactory(db, label) {
@Override
protected void initialize(Node created, Map<String, Object> properties) {
created.setProperty(propertyKey, properties.get(propertyKey));
}
};
}
}
开发者ID:Graphify,项目名称:graphify,代码行数:15,代码来源:GraphManager.java
示例6: createNodeFactory
import org.neo4j.graphdb.index.UniqueFactory; //导入依赖的package包/类
private void createNodeFactory(GraphDatabaseService db) {
if (classFactory == null) {
classFactory = new UniqueFactory.UniqueNodeFactory(db, label) {
@Override
protected void initialize(Node created, Map<String, Object> properties) {
created.setProperty(propertyKey, properties.get(propertyKey));
}
};
}
}
开发者ID:Graphify,项目名称:graphify,代码行数:11,代码来源:ClassNodeManager.java
示例7: createNodeFactory
import org.neo4j.graphdb.index.UniqueFactory; //导入依赖的package包/类
private void createNodeFactory(GraphDatabaseService db) {
if (dataFactory == null) {
dataFactory = new UniqueFactory.UniqueNodeFactory(db, label) {
@Override
protected void initialize(Node created, Map<String, Object> properties) {
created.setProperty(propertyKey, properties.get(propertyKey));
}
};
}
}
开发者ID:Graphify,项目名称:graphify,代码行数:11,代码来源:DataNodeManager.java
注:本文中的org.neo4j.graphdb.index.UniqueFactory类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论