Search in sources :

Example 1 with ShortestPath

use of com.baidu.hugegraph.entity.algorithm.ShortestPath in project incubator-hugegraph-toolchain by apache.

the class OltpAlgoService method shortestPath.

public GremlinResult shortestPath(int connId, ShortestPath body) {
    HugeClient client = this.getClient(connId);
    TraverserManager traverser = client.traverser();
    Path result = traverser.shortestPath(body.getSource(), body.getTarget(), body.getDirection(), body.getLabel(), body.getMaxDepth(), body.getMaxDegree(), body.getSkipDegree(), body.getCapacity());
    JsonView jsonView = new JsonView();
    jsonView.setData(result.objects());
    Date createTime = HubbleUtil.nowDate();
    TableView tableView = this.buildPathTableView(result);
    GraphView graphView = this.buildPathGraphView(result);
    // Insert execute history
    ExecuteStatus status = ExecuteStatus.SUCCESS;
    ExecuteHistory history;
    history = new ExecuteHistory(null, connId, 0L, ExecuteType.ALGORITHM, body.toString(), status, AsyncTaskStatus.UNKNOWN, -1L, createTime);
    this.historyService.save(history);
    return GremlinResult.builder().type(GremlinResult.Type.PATH).jsonView(jsonView).tableView(tableView).graphView(graphView).build();
}
Also used : ShortestPath(com.baidu.hugegraph.entity.algorithm.ShortestPath) Path(com.baidu.hugegraph.structure.graph.Path) HugeClient(com.baidu.hugegraph.driver.HugeClient) ExecuteHistory(com.baidu.hugegraph.entity.query.ExecuteHistory) JsonView(com.baidu.hugegraph.entity.query.JsonView) ExecuteStatus(com.baidu.hugegraph.entity.enums.ExecuteStatus) GraphView(com.baidu.hugegraph.entity.query.GraphView) TraverserManager(com.baidu.hugegraph.driver.TraverserManager) Date(java.util.Date) TableView(com.baidu.hugegraph.entity.query.TableView)

Aggregations

HugeClient (com.baidu.hugegraph.driver.HugeClient)1 TraverserManager (com.baidu.hugegraph.driver.TraverserManager)1 ShortestPath (com.baidu.hugegraph.entity.algorithm.ShortestPath)1 ExecuteStatus (com.baidu.hugegraph.entity.enums.ExecuteStatus)1 ExecuteHistory (com.baidu.hugegraph.entity.query.ExecuteHistory)1 GraphView (com.baidu.hugegraph.entity.query.GraphView)1 JsonView (com.baidu.hugegraph.entity.query.JsonView)1 TableView (com.baidu.hugegraph.entity.query.TableView)1 Path (com.baidu.hugegraph.structure.graph.Path)1 Date (java.util.Date)1