• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java IndexManager类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.neo4j.graphdb.index.IndexManager的典型用法代码示例。如果您正苦于以下问题:Java IndexManager类的具体用法?Java IndexManager怎么用?Java IndexManager使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



IndexManager类属于org.neo4j.graphdb.index包,在下文中一共展示了IndexManager类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: getTypedNodeTokenCount

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
public Long getTypedNodeTokenCount(String type, String pattern, Boolean sensitive) {
	Long frequency = (long) 0;

	try ( Transaction ignored = database.beginTx(); ) {
		IndexManager index = database.index();
		Index<Node> nodeIndex = index.forNodes(type);
		for (Node match : nodeIndex.get("label", pattern)) {
			if (!sensitive || ((String) match.getProperty("label")).equals(pattern)) {
				Object count = match.getProperty("token_count");
				if (count instanceof Integer)
					frequency = frequency + new Long((Integer) count);
				else if (count instanceof Long)
					frequency = frequency + (Long) count;
			}
		}
	}
	
	return frequency;
}
 
开发者ID:Taalmonsters,项目名称:WhiteLab2.0-Neo4J-Plugin,代码行数:20,代码来源:CypherExecutor.java


示例2: getMetadataLabel

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
protected Response getMetadataLabel(final String label) {
	StreamingOutput stream = new StreamingOutput()
	{
		@Override
		public void write( OutputStream os ) throws IOException, WebApplicationException
		{
			try ( Transaction tx = database.beginTx() ) {
				JsonGenerator jg = objectMapper.getFactory().createGenerator(os, JsonEncoding.UTF8);
				IndexManager index = database.index();
				Index<Node> metadata = index.forNodes("Metadatum");
				jg.writeStartArray();
				for ( Node metadatum : metadata.query( "label:"+label ) ) {
					executor.writeField(metadatum, jg);
				}
				jg.writeEndArray();
				jg.flush();
				tx.success();
			}
		}
	};

	return Response.ok().entity( stream ).type( MediaType.APPLICATION_JSON ).build();
}
 
开发者ID:Taalmonsters,项目名称:WhiteLab2.0-Neo4J-Plugin,代码行数:24,代码来源:MetadatumSearcher.java


示例3: updateMetadataLabel

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
protected Response updateMetadataLabel(final String label, final String property, final String value) {
	StreamingOutput stream = new StreamingOutput()
	{
		@Override
		public void write( OutputStream os ) throws IOException, WebApplicationException
		{
			try ( Transaction tx = database.beginTx() ) {
				JsonGenerator jg = objectMapper.getFactory().createGenerator(os, JsonEncoding.UTF8);
				IndexManager index = database.index();
				Index<Node> metadata = index.forNodes("Metadatum");
				for ( Node metadatum : metadata.query( "label:"+label ) ) {
					if (property.equals("explorable") || property.equals("searchable"))
						metadatum.setProperty(property, Boolean.valueOf(value));
					else
						metadatum.setProperty(property, value);
				}
				jg.writeString("Updated "+label);
				jg.flush();
				tx.success();
			}
		}
	};

	return Response.ok().entity( stream ).type( MediaType.APPLICATION_JSON ).build();
}
 
开发者ID:Taalmonsters,项目名称:WhiteLab2.0-Neo4J-Plugin,代码行数:26,代码来源:MetadatumSearcher.java


示例4: getMetadataGroupKey

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
protected Response getMetadataGroupKey(final String group, final String key) {
	StreamingOutput stream = new StreamingOutput()
	{
		@Override
		public void write( OutputStream os ) throws IOException, WebApplicationException
		{
			try ( Transaction tx = database.beginTx() ) {
				JsonGenerator jg = objectMapper.getFactory().createGenerator(os, JsonEncoding.UTF8);
				IndexManager index = database.index();
				Index<Node> metadata = index.forNodes("Metadatum");
				jg.writeStartArray();
				for ( Node metadatum : metadata.query( "group:"+group+" AND key:"+key ) ) {
					executor.writeField(metadatum, jg);
				}
				jg.writeEndArray();
				jg.flush();
				tx.success();
			}
		}
	};

	return Response.ok().entity( stream ).type( MediaType.APPLICATION_JSON ).build();
}
 
开发者ID:Taalmonsters,项目名称:WhiteLab2.0-Neo4J-Plugin,代码行数:24,代码来源:MetadatumSearcher.java


示例5: deleteIndex

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
@Test
public void deleteIndex()
{
    GraphDatabaseService graphDb = new TestGraphDatabaseFactory().newImpermanentDatabase();
    try ( Transaction tx = graphDb.beginTx() )
    {
        // START SNIPPET: delete
        IndexManager index = graphDb.index();
        Index<Node> actors = index.forNodes( "actors" );
        actors.delete();
        // END SNIPPET: delete
        tx.success();
    }
    assertFalse( indexExists( graphDb ) );
    graphDb.shutdown();
}
 
开发者ID:neo4j-contrib,项目名称:neo4j-lucene5-index,代码行数:17,代码来源:ImdbDocTest.java


示例6: fulltext

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
@Test
public void fulltext()
{
    // START SNIPPET: fulltext
    IndexManager index = graphDb.index();
    Index<Node> fulltextMovies = index.forNodes( "movies-fulltext",
            MapUtil.stringMap( IndexManager.PROVIDER, "lucene", "type", "fulltext" ) );
    // END SNIPPET: fulltext

    Index<Node> movies = index.forNodes( "movies" );
    Node theMatrix = movies.get( "title", "The Matrix" ).getSingle();
    Node theMatrixReloaded = movies.get( "title", "The Matrix Reloaded" ).getSingle();

    // START SNIPPET: fulltext
    fulltextMovies.add( theMatrix, "title", "The Matrix" );
    fulltextMovies.add( theMatrixReloaded, "title", "The Matrix Reloaded" );
    // search in the fulltext index
    Node found = fulltextMovies.query( "title", "reloAdEd" ).getSingle();
    // END SNIPPET: fulltext
    assertEquals( theMatrixReloaded, found );
}
 
开发者ID:neo4j-contrib,项目名称:neo4j-lucene5-index,代码行数:22,代码来源:ImdbDocTest.java


示例7: testCanIndexRelationships

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
@Test
public void testCanIndexRelationships()
{
    BatchInserterIndexProvider indexProvider = new LuceneBatchInserterIndexProviderNewImpl( inserter );
    BatchInserterIndex edgesIndex = indexProvider.relationshipIndex(
            "edgeIndex", stringMap( IndexManager.PROVIDER, "lucene", "type", "exact" ) );

    long nodeId1 = inserter.createNode( map( "ID", "1" ) );
    long nodeId2 = inserter.createNode( map( "ID", "2" ) );
    long relationshipId = inserter.createRelationship( nodeId1, nodeId2,
            EdgeType.KNOWS, null );

    edgesIndex.add( relationshipId, map( "EDGE_TYPE", EdgeType.KNOWS.name() ) );
    edgesIndex.flush();

    assertEquals(
            String.format( "Should return relationship id" ),
            new Long( relationshipId ),
            edgesIndex.query( "EDGE_TYPE", EdgeType.KNOWS.name() ).getSingle() );

    indexProvider.shutdown();
}
 
开发者ID:neo4j-contrib,项目名称:neo4j-lucene5-index,代码行数:23,代码来源:TestLuceneBatchInsert.java


示例8: Neo4JEdgeIndex

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
public Neo4JEdgeIndex(String name, Neo4JDatabase neo4jDatabase) {

		graph = neo4jDatabase;
		this.name = name;

		if (neo4jDatabase.getGraph() != null)
			index = neo4jDatabase.getIndexer().forRelationships(
					name,
					MapUtil.stringMap(IndexManager.PROVIDER, "lucene", "type",
							"exact"));
		else
			batchIndex = neo4jDatabase.getBatchIndexer().relationshipIndex(
					name,
					MapUtil.stringMap(IndexManager.PROVIDER, "lucene", "type",
							"exact"));

	}
 
开发者ID:mondo-project,项目名称:mondo-hawk,代码行数:18,代码来源:Neo4JEdgeIndex.java


示例9: WikiNerGraphConnector

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
private WikiNerGraphConnector(String dbDir) {
	graphDb = new GraphDatabaseFactory().newEmbeddedDatabase(dbDir);
	IndexDefinition indexDefinition;
	Schema schema;
	Transaction tx = graphDb.beginTx();	
	
	schema = graphDb.schema();
	IndexManager index = graphDb.index();
	entities = index.forNodes(entityLabel.name());
	cities = index.forNodes(cityLabel.name());
	try{
		 indexDefinition = schema.indexFor( entityLabel ).on( "nameType" ).create();
	}catch(Exception e){
		
	}
	
	tx.success();
	tx.close();
}
 
开发者ID:drossner,项目名称:WikiN-G-ER,代码行数:20,代码来源:WikiNerGraphConnector.java


示例10: getOrCreateUserNode

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
public static Node getOrCreateUserNode(final GraphDatabaseService graphDb,
                                       final String userID) {

    IndexManager index = graphDb.index();
    Index<Node> usersIndex = index.forNodes("users");

    Node node = usersIndex.get("node_id", userID).getSingle();

    if (node == null) {
        node = graphDb.createNode(DynamicLabel.label("User"));
        node.setProperty("node_id", userID);
        usersIndex.add(node, "node_id", userID);
    }

    return node;

}
 
开发者ID:inveniosoftware-contrib,项目名称:obelix,代码行数:18,代码来源:NeoHelpers.java


示例11: getOrCreateItemNode

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
public static Node getOrCreateItemNode(final GraphDatabaseService graphDb,
                                       final String itemID) {

    IndexManager index = graphDb.index();
    Index<Node> usersIndex = index.forNodes("items");

    Node node = usersIndex.get("node_id", itemID).getSingle();

    if (node == null) {
        node = graphDb.createNode(DynamicLabel.label("Item"));
        node.setProperty("node_id", itemID);
        usersIndex.add(node, "node_id", itemID);
    }

    return node;

}
 
开发者ID:inveniosoftware-contrib,项目名称:obelix,代码行数:18,代码来源:NeoHelpers.java


示例12: addItem

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
@Override
public void addItem(int itemId) {
	Node node = getNodeFromIndex(id);
	int freq = 1;
	//first check if the item has already been added
	String itemAsStr = ITEM_ID_PREFIX + Integer.toString(itemId);		
	if(node.hasProperty(itemAsStr)){
		Integer prevFreq = (Integer) node.getProperty(itemAsStr);
		freq = prevFreq +1;					
	}
	else{ //add to index only once
		//add to lucene index
		IndexManager IM = Utilities.recordDB.index();
		Index<Node> itemIdx = IM.forNodes(ITEM_INDEX_NAME);
		itemIdx.add(node, itemAsStr, "1");
	}
	node.setProperty(itemAsStr, freq);
}
 
开发者ID:sapirgolan,项目名称:MFIBlocking,代码行数:19,代码来源:DBRecord.java


示例13: addItem

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
public void addItem(int itemId) {
	Node node = getNodeFromIndex(id);
	int freq = 1;
	//first check if the item has already been added
	String itemAsStr = ITEM_ID_PREFIX + Integer.toString(itemId);		
	if(node.hasProperty(itemAsStr)){
		Integer prevFreq = (Integer) node.getProperty(itemAsStr);
		freq = prevFreq +1;					
	}
	else{ //add to index only once
		//add to lucene index
		IndexManager IM = Utilities.recordDB.index();
		Index<Node> itemIdx = IM.forNodes(ITEM_INDEX_NAME);
		itemIdx.add(node, itemAsStr, "1");
	}
	node.setProperty(itemAsStr, freq);
}
 
开发者ID:sapirgolan,项目名称:MFIBlocking,代码行数:18,代码来源:DBRecord.java


示例14: createNodeIndex

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
@Override
public void createNodeIndex(String name, ParcelableError err) throws RemoteException {

    try {
        checkCallerHasWritePermission();
        resumeTrx();

        try {
            IndexManager index = mDb.index();
            index.forNodes(name); // this will create the index
        } finally {
            suspendCurrentTrx("createNodeIndex");
        }
    } catch (Exception e) {
        Log.e(TAG, "Failed to create/access node index '" + name + "'", e);
        err.setError(Errors.TRANSACTION, e.getMessage());
    }
}
 
开发者ID:neo4j-contrib,项目名称:neo4j-mobile-android,代码行数:19,代码来源:DbWrapper.java


示例15: nodeIndexExists

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
@Override
public boolean nodeIndexExists(String name, ParcelableError err) throws RemoteException {

    try {
        resumeTrxIfExists();
        try {
            IndexManager index = mDb.index();
            return index.existsForNodes(name);
        } finally {
            suspendCurrentTrx("nodeIndexExists");
        }
    } catch (Exception e) {
        Log.e(TAG, "Failed to determine if node index '" + name + "' exists", e);
        err.setError(Errors.TRANSACTION, e.getMessage());
        return false; // dummy return value
    }
}
 
开发者ID:neo4j-contrib,项目名称:neo4j-mobile-android,代码行数:18,代码来源:DbWrapper.java


示例16: deleteNodeIndex

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
@Override
public void deleteNodeIndex(String name, ParcelableError err) throws RemoteException {

    try {
        checkCallerHasWritePermission();
        resumeTrx();

        try {
            IndexManager index = mDb.index();
            index.forNodes(name); // this will create the index
        } finally {
            suspendCurrentTrx("deleteNodeIndex");
        }
    } catch (Exception e) {
        Log.e(TAG, "Failed to delete node index '" + name + "'", e);
        err.setError(Errors.TRANSACTION, e.getMessage());
    }
}
 
开发者ID:neo4j-contrib,项目名称:neo4j-mobile-android,代码行数:19,代码来源:DbWrapper.java


示例17: execute

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
@Override
public void execute(TinkerPopGraphManager graphWrapper) throws IOException {

  GraphDatabaseService service = graphWrapper.getGraphDatabase();
  IndexManager indexManager = service.index();

  try (Transaction tx =  graphWrapper.getGraph().tx()) {
    clearIndices(indexManager);
    tx.commit();
  }
  try (Transaction tx =  graphWrapper.getGraph().tx()) {
    if (!tx.isOpen()) {
      tx.open();
    }
    constructIndices(indexManager);
    fillVertexIndices(graphWrapper, indexManager);
    fillEdgeIndex(service, indexManager);
    tx.commit();
  }
}
 
开发者ID:HuygensING,项目名称:timbuctoo,代码行数:21,代码来源:MoveIndicesToIsLatestVertexMigration.java


示例18: fillVertexIndices

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
private void fillVertexIndices(TinkerPopGraphManager graphWrapper, IndexManager indexManager) {
  ObjectMapper mapper = new ObjectMapper();
  GraphTraversalSource traversalSource = graphWrapper.getGraph().traversal();

  Collection wwpersonCollection = vres.getCollection("wwpersons").orElse(null);

  graphWrapper.getGraphDatabase().getAllNodes().stream()
    .filter(node -> node.hasProperty("tim_id"))
    .filter(this::isLatest)
    .forEach(node -> {
      updateIdIndex(indexManager, node);
      if (!isDeleted(node)) {
        updateQuicksearchIndex(vres, indexManager, mapper, node, wwpersonCollection, traversalSource);
      }
    });
}
 
开发者ID:HuygensING,项目名称:timbuctoo,代码行数:17,代码来源:MoveIndicesToIsLatestVertexMigration.java


示例19: updateQuicksearchIndex

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
private void updateQuicksearchIndex(Vres vres, IndexManager indexManager, ObjectMapper mapper, Node node,
                                    Collection wwpersonCollection, GraphTraversalSource traversalSource) {
  for (String type : getEntityTypes(node, mapper)) {
    if (!type.equals("relationtype")) {
      Optional<Collection> collection = vres.getCollectionForType(type);
      long id = node.getId();
      if (collection.isPresent()) {
        String displayName;
        if (type.equals("wwdocument")) {
          displayName = getWwDocumentsQuickSearchValue(collection.get(), wwpersonCollection,
            id, traversalSource
          );
        } else {
          displayName = getGenericQuickSearchValue(collection.get(), id, traversalSource);
        }
        indexManager.forNodes(collection.get().getCollectionName()).add(node, "quickSearch", displayName);
      } else {
        LOG.error("Could not find collection for " + type + " at vertex " + id);
      }
    }
  }
}
 
开发者ID:HuygensING,项目名称:timbuctoo,代码行数:23,代码来源:MoveIndicesToIsLatestVertexMigration.java


示例20: getPosTagByLabel

import org.neo4j.graphdb.index.IndexManager; //导入依赖的package包/类
@GET
@Path("/tags/{label}")
public Response getPosTagByLabel(@PathParam("label") final String label)
{
	StreamingOutput stream = new StreamingOutput()
	{
		@Override
		public void write( OutputStream os ) throws IOException, WebApplicationException
		{
			try ( Transaction ignored = database.beginTx() ) {
				JsonGenerator jg = objectMapper.getFactory().createGenerator(os, JsonEncoding.UTF8);
				IndexManager index = database.index();
				Index<Node> postags = index.forNodes("PosTag");
				IndexHits<Node> hits = postags.get( "label", label );
				Node postag = hits.getSingle();
				jg.writeStartObject();
				for (String field : postag.getPropertyKeys()) {
					Object value = postag.getProperty(field);
					if (field.contains("_count") && value instanceof Integer)
						jg.writeNumberField(field, (Integer) value);
					else if (field.contains("_count") && value instanceof Long)
						jg.writeNumberField(field, (Long) value);
					else
						jg.writeStringField(field, (String) postag.getProperty(field));
				}
				jg.writeEndObject();
				jg.flush();
				jg.close();
			}
		}
	};

	return Response.ok().entity( stream ).type( MediaType.APPLICATION_JSON ).build();
}
 
开发者ID:Taalmonsters,项目名称:WhiteLab2.0-Neo4J-Plugin,代码行数:35,代码来源:PosSearch.java



注:本文中的org.neo4j.graphdb.index.IndexManager类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java AgentClient类代码示例发布时间:2022-05-21
下一篇:
Java MappingEndEvent类代码示例发布时间:2022-05-21
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap