当前位置: 首页>>代码示例>>Java>>正文


Java DetachedEdge类代码示例

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


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

示例1: deserialize

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Override
public TinkerGraph deserialize(final JsonParser jsonParser, final DeserializationContext deserializationContext) throws IOException, JsonProcessingException {
    final Configuration conf = new BaseConfiguration();
    conf.setProperty("gremlin.tinkergraph.defaultVertexPropertyCardinality", "list");
    final TinkerGraph graph = TinkerGraph.open(conf);

    while (jsonParser.nextToken() != JsonToken.END_OBJECT) {
        if (jsonParser.getCurrentName().equals("vertices")) {
            while (jsonParser.nextToken() != JsonToken.END_ARRAY) {
                if (jsonParser.currentToken() == JsonToken.START_OBJECT) {
                    final DetachedVertex v = (DetachedVertex) deserializationContext.readValue(jsonParser, Vertex.class);
                    v.attach(Attachable.Method.getOrCreate(graph));
                }
            }
        } else if (jsonParser.getCurrentName().equals("edges")) {
            while (jsonParser.nextToken() != JsonToken.END_ARRAY) {
                if (jsonParser.currentToken() == JsonToken.START_OBJECT) {
                    final DetachedEdge e = (DetachedEdge) deserializationContext.readValue(jsonParser, Edge.class);
                    e.attach(Attachable.Method.getOrCreate(graph));
                }
            }
        }
    }

    return graph;
}
 
开发者ID:ShiftLeftSecurity,项目名称:tinkergraph-gremlin,代码行数:27,代码来源:TinkerIoRegistryV3d0.java

示例2: shouldReturnDetachedElements

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Test
public void shouldReturnDetachedElements() {
    final Graph graph = TinkerFactory.createModern();
    final GraphTraversalSource g = graph.traversal().withComputer().withStrategies(HaltedTraverserStrategy.create(new MapConfiguration(new HashMap<String, Object>() {{
        put(HaltedTraverserStrategy.HALTED_TRAVERSER_FACTORY, DetachedFactory.class.getCanonicalName());
    }})));
    g.V().out().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
    g.V().out().properties("name").forEachRemaining(vertexProperty -> assertEquals(DetachedVertexProperty.class, vertexProperty.getClass()));
    g.V().out().values("name").forEachRemaining(value -> assertEquals(String.class, value.getClass()));
    g.V().out().outE().forEachRemaining(edge -> assertEquals(DetachedEdge.class, edge.getClass()));
    g.V().out().outE().properties("weight").forEachRemaining(property -> assertEquals(DetachedProperty.class, property.getClass()));
    g.V().out().outE().values("weight").forEachRemaining(value -> assertEquals(Double.class, value.getClass()));
    g.V().out().out().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
    g.V().out().out().path().forEachRemaining(path -> assertEquals(DetachedPath.class, path.getClass()));
    g.V().out().pageRank().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
    g.V().out().pageRank().out().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
    // should handle nested collections
    g.V().out().fold().next().forEach(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
}
 
开发者ID:ShiftLeftSecurity,项目名称:tinkergraph-gremlin,代码行数:20,代码来源:HaltedTraverserStrategyTest.java

示例3: getRegistration

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Override
public Registration getRegistration(final Class clazz) {
    // force all instances of Vertex, Edge, VertexProperty, etc. to their respective interface
    final Class type;
    if (!ReferenceVertex.class.isAssignableFrom(clazz) && !DetachedVertex.class.isAssignableFrom(clazz) && Vertex.class.isAssignableFrom(clazz))
        type = Vertex.class;
    else if (!ReferenceEdge.class.isAssignableFrom(clazz) && !DetachedEdge.class.isAssignableFrom(clazz) && Edge.class.isAssignableFrom(clazz))
        type = Edge.class;
    else if (!ReferenceVertexProperty.class.isAssignableFrom(clazz) && !DetachedVertexProperty.class.isAssignableFrom(clazz) && VertexProperty.class.isAssignableFrom(clazz))
        type = VertexProperty.class;
    else if (!ReferenceProperty.class.isAssignableFrom(clazz) && !DetachedProperty.class.isAssignableFrom(clazz) && !DetachedVertexProperty.class.isAssignableFrom(clazz) && Property.class.isAssignableFrom(clazz))
        type = Property.class;
    else if (!ReferencePath.class.isAssignableFrom(clazz) && !DetachedPath.class.isAssignableFrom(clazz) && Path.class.isAssignableFrom(clazz))
        type = Path.class;
    else
        type = clazz;

    if (type == memoizedClass) return memoizedClassValue;
    final Registration registration = classToRegistration.get(type);
    if (registration != null) {
        memoizedClass = type;
        memoizedClassValue = registration;
    }

    return registration;
}
 
开发者ID:PKUSilvester,项目名称:LiteGraph,代码行数:27,代码来源:GryoClassResolver.java

示例4: shouldSerializeEdgeAsDetached

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Test
@LoadGraphWith(LoadGraphWith.GraphData.MODERN)
public void shouldSerializeEdgeAsDetached() throws Exception {
    final GryoIo gryoIo = graph.io(GryoIo.build());
    final GryoWriter gryoWriter = gryoIo.writer().create();
    final GryoReader gryoReader = gryoIo.reader().create();

    final Edge e = g.E(convertToEdgeId("marko", "knows", "vadas")).next();
    final ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    gryoWriter.writeObject(outputStream, e);

    final ByteArrayInputStream inputStream = new ByteArrayInputStream(outputStream.toByteArray());
    final Edge detached = gryoReader.readObject(inputStream, DetachedEdge.class);
    assertNotNull(detached);
    assertEquals(e.label(), detached.label());
    assertEquals(e.id(), detached.id());
    assertEquals((Double) e.value("weight"), detached.value("weight"));
}
 
开发者ID:PKUSilvester,项目名称:LiteGraph,代码行数:19,代码来源:SerializationTest.java

示例5: read

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Override
public <I extends InputShim> Edge read(final KryoShim<I, ?> kryo, final I input, final Class<Edge> edgeClass) {
    final DetachedEdge.Builder builder = DetachedEdge.build();
    builder.setId(kryo.readClassAndObject(input));
    builder.setLabel(input.readString());

    final DetachedVertex.Builder inV = DetachedVertex.build();
    inV.setId(kryo.readClassAndObject(input));
    inV.setLabel(input.readString());
    builder.setInV(inV.create());

    final DetachedVertex.Builder outV = DetachedVertex.build();
    outV.setId(kryo.readClassAndObject(input));
    outV.setLabel(input.readString());
    builder.setOutV(outV.create());

    while(input.readBoolean()) {
        builder.addProperty(new DetachedProperty<>(input.readString(), kryo.readClassAndObject(input)));
    }

    return builder.create();
}
 
开发者ID:apache,项目名称:tinkerpop,代码行数:23,代码来源:GryoSerializersV3d0.java

示例6: readEdge

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
/**
 * Read an {@link Edge} from output generated by {@link GraphSONWriter#writeEdge(OutputStream, Edge)} or via
 * an {@link Edge} passed to {@link GraphSONWriter#writeObject(OutputStream, Object)}.
 *
 * @param inputStream a stream containing at least one {@link Edge} as defined by the accompanying
 *                    {@link GraphWriter#writeEdge(OutputStream, Edge)} method.
 * @param edgeAttachMethod a function that creates re-attaches a {@link Edge} to a {@link Host} object.
 */
@Override
public Edge readEdge(final InputStream inputStream, final Function<Attachable<Edge>, Edge> edgeAttachMethod) throws IOException {
    if (version == GraphSONVersion.V1_0) {
        final Map<String, Object> edgeData = mapper.readValue(inputStream, mapTypeReference);

        final Map<String, Object> edgeProperties = edgeData.containsKey(GraphSONTokens.PROPERTIES) ?
                (Map<String, Object>) edgeData.get(GraphSONTokens.PROPERTIES) : Collections.EMPTY_MAP;
        final DetachedEdge edge = new DetachedEdge(edgeData.get(GraphSONTokens.ID),
                edgeData.get(GraphSONTokens.LABEL).toString(),
                edgeProperties,
                edgeData.get(GraphSONTokens.OUT), edgeData.get(GraphSONTokens.OUT_LABEL).toString(),
                edgeData.get(GraphSONTokens.IN), edgeData.get(GraphSONTokens.IN_LABEL).toString());

        return edgeAttachMethod.apply(edge);
    } else {
        return edgeAttachMethod.apply((DetachedEdge) mapper.readValue(inputStream, Edge.class));
    }
}
 
开发者ID:apache,项目名称:tinkerpop,代码行数:27,代码来源:GraphSONReader.java

示例7: shouldSerializeEdgeAsDetached

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Test
@LoadGraphWith(LoadGraphWith.GraphData.MODERN)
public void shouldSerializeEdgeAsDetached() throws Exception {
    final GryoIo gryoIo = graph.io(GryoIo.build(GryoVersion.V1_0));
    final GryoWriter gryoWriter = gryoIo.writer().create();
    final GryoReader gryoReader = gryoIo.reader().create();

    final Edge e = g.E(convertToEdgeId("marko", "knows", "vadas")).next();
    final ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    gryoWriter.writeObject(outputStream, e);

    final ByteArrayInputStream inputStream = new ByteArrayInputStream(outputStream.toByteArray());
    final Edge detached = gryoReader.readObject(inputStream, DetachedEdge.class);
    assertNotNull(detached);
    assertEquals(e.label(), detached.label());
    assertEquals(e.id(), detached.id());
    assertEquals((Double) e.value("weight"), detached.value("weight"));
}
 
开发者ID:apache,项目名称:tinkerpop,代码行数:19,代码来源:SerializationTest.java

示例8: testIterateEdgesWithUuidIdSupportUsingDetachedEdge

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Test
public void testIterateEdgesWithUuidIdSupportUsingDetachedEdge() {
  Edge edge1 = createEdge();
  Edge edge2 = getActGraph().edges(DetachedFactory.detach(edge1, true)).next();
  assertEquals(edge1.id(), edge2.id());
  assertFalse(edge2 instanceof DetachedEdge);
}
 
开发者ID:mnemonic-no,项目名称:act-platform,代码行数:8,代码来源:ActGraphTest.java

示例9: setUp

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Before
public void setUp() {
  super.setUp();
  marko = mock(Vertex.class);
  vadas = mock(Vertex.class);
  when(marko.id()).thenReturn(1);
  when(vadas.id()).thenReturn(2);
  query = mock(Query.class);
  edgeGraph = new EdgeGraph(graph, query, g);
  when(traversal.next()).thenReturn(
      new DetachedEdge(null, Label.of(Develops.class), null,
          null, null, null, null));
}
 
开发者ID:karthicks,项目名称:gremlin-ogm,代码行数:14,代码来源:EdgeGraphTest.java

示例10: testAsEdge

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Test
public void testAsEdge() {
  assertEquals(develops, as(new DetachedEdge(
      null, Label.of(Develops.class), new HashMap<String, Object>() {
        {
          put("since", develops.since());
        }
      }, null, null, null, null), Develops.class));
}
 
开发者ID:karthicks,项目名称:gremlin-ogm,代码行数:10,代码来源:ParserTest.java

示例11: shouldSerializeEdge

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Test
public void shouldSerializeEdge() throws Exception {
    final Graph g = TinkerGraph.open();
    final Vertex v1 = g.addVertex();
    final Vertex v2 = g.addVertex();
    final Edge e = v1.addEdge("test", v2);
    e.property("abc", 123);

    final Iterable<Edge> iterable = IteratorUtils.list(g.edges());

    final ResponseMessage response = convertBinary(iterable);
    assertCommon(response);

    final List<DetachedEdge> edgeList = (List<DetachedEdge>) response.getResult().getData();
    assertEquals(1, edgeList.size());

    final DetachedEdge deserializedEdge = edgeList.get(0);
    assertEquals(e.id(), deserializedEdge.id());
    assertEquals("test", deserializedEdge.label());

    assertEquals(123, deserializedEdge.values("abc").next());
    assertEquals(1, IteratorUtils.count(deserializedEdge.properties()));
    assertEquals(v1.id(), deserializedEdge.outVertex().id());
    assertEquals(Vertex.DEFAULT_LABEL, deserializedEdge.outVertex().label());
    assertEquals(v2.id(), deserializedEdge.inVertex().id());
    assertEquals(Vertex.DEFAULT_LABEL, deserializedEdge.inVertex().label());
}
 
开发者ID:PKUSilvester,项目名称:LiteGraph,代码行数:28,代码来源:GryoMessageSerializerV1d0Test.java

示例12: readEdge

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
/**
 * Read an {@link Edge} from output generated by {@link GraphSONWriter#writeEdge(OutputStream, Edge)} or via
 * an {@link Edge} passed to {@link GraphSONWriter#writeObject(OutputStream, Object)}.
 *
 * @param inputStream a stream containing at least one {@link Edge} as defined by the accompanying
 *                    {@link GraphWriter#writeEdge(OutputStream, Edge)} method.
 * @param edgeAttachMethod a function that creates re-attaches a {@link Edge} to a {@link Host} object.
 */
@Override
public Edge readEdge(final InputStream inputStream, final Function<Attachable<Edge>, Edge> edgeAttachMethod) throws IOException {
    final Map<String, Object> edgeData = mapper.readValue(inputStream, mapTypeReference);

    final Map<String,Object> edgeProperties = edgeData.containsKey(GraphSONTokens.PROPERTIES) ?
            (Map<String, Object>) edgeData.get(GraphSONTokens.PROPERTIES) : Collections.EMPTY_MAP;
    final DetachedEdge edge = new DetachedEdge(edgeData.get(GraphSONTokens.ID),
            edgeData.get(GraphSONTokens.LABEL).toString(),
            edgeProperties,
            Pair.with(edgeData.get(GraphSONTokens.OUT), edgeData.get(GraphSONTokens.OUT_LABEL).toString()),
            Pair.with(edgeData.get(GraphSONTokens.IN), edgeData.get(GraphSONTokens.IN_LABEL).toString()));

    return edgeAttachMethod.apply(edge);
}
 
开发者ID:PKUSilvester,项目名称:LiteGraph,代码行数:23,代码来源:GraphSONReader.java

示例13: shouldReturnDetachedElements

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Test
public void shouldReturnDetachedElements() {
    final Graph graph = TinkerFactory.createModern();
    final GraphTraversalSource g = graph.traversal().withComputer().withStrategies(HaltedTraverserStrategy.detached());
    g.V().out().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
    g.V().out().properties("name").forEachRemaining(vertexProperty -> assertEquals(DetachedVertexProperty.class, vertexProperty.getClass()));
    g.V().out().values("name").forEachRemaining(value -> assertEquals(String.class, value.getClass()));
    g.V().out().outE().forEachRemaining(edge -> assertEquals(DetachedEdge.class, edge.getClass()));
    g.V().out().outE().properties("weight").forEachRemaining(property -> assertEquals(DetachedProperty.class, property.getClass()));
    g.V().out().outE().values("weight").forEachRemaining(value -> assertEquals(Double.class, value.getClass()));
    g.V().out().out().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
    g.V().out().out().path().forEachRemaining(path -> assertEquals(DetachedPath.class, path.getClass()));
    g.V().out().pageRank().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
    g.V().out().pageRank().out().forEachRemaining(vertex -> assertEquals(DetachedVertex.class, vertex.getClass()));
}
 
开发者ID:PKUSilvester,项目名称:LiteGraph,代码行数:16,代码来源:HaltedTraverserStrategyTest.java

示例14: createObject

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@SuppressWarnings({ "unchecked", "rawtypes" })
@Override
public Edge createObject(final Map<String, Object> edgeData) {
    return new DetachedEdge(
            newORecordId(edgeData.get(GraphSONTokens.ID)),
            edgeData.get(GraphSONTokens.LABEL).toString(),
            (Map) edgeData.get(GraphSONTokens.PROPERTIES),
            Pair.with(newORecordId(edgeData.get(GraphSONTokens.OUT)), edgeData.get(GraphSONTokens.OUT_LABEL).toString()),
            Pair.with(newORecordId(edgeData.get(GraphSONTokens.IN)), edgeData.get(GraphSONTokens.IN_LABEL).toString()));
}
 
开发者ID:orientechnologies,项目名称:orientdb-gremlin,代码行数:11,代码来源:OrientIoRegistry.java

示例15: coerceType

import org.apache.tinkerpop.gremlin.structure.util.detached.DetachedEdge; //导入依赖的package包/类
@Override
public Class coerceType(final Class clazz) {
    // force all instances of Vertex, Edge, VertexProperty, etc. to their respective interface
    final Class type;
    if (!ReferenceVertex.class.isAssignableFrom(clazz) && !DetachedVertex.class.isAssignableFrom(clazz) && Vertex.class.isAssignableFrom(clazz))
        type = Vertex.class;
    else if (!ReferenceEdge.class.isAssignableFrom(clazz) && !DetachedEdge.class.isAssignableFrom(clazz) && Edge.class.isAssignableFrom(clazz))
        type = Edge.class;
    else if (!ReferenceVertexProperty.class.isAssignableFrom(clazz) && !DetachedVertexProperty.class.isAssignableFrom(clazz) && VertexProperty.class.isAssignableFrom(clazz))
        type = VertexProperty.class;
    else if (!ReferenceProperty.class.isAssignableFrom(clazz) && !DetachedProperty.class.isAssignableFrom(clazz) && !DetachedVertexProperty.class.isAssignableFrom(clazz) && !ReferenceVertexProperty.class.isAssignableFrom(clazz) && Property.class.isAssignableFrom(clazz))
        type = Property.class;
    else if (!ReferencePath.class.isAssignableFrom(clazz) && !DetachedPath.class.isAssignableFrom(clazz) && Path.class.isAssignableFrom(clazz))
        type = Path.class;
    else if (Lambda.class.isAssignableFrom(clazz))
        type = Lambda.class;
    else if (ByteBuffer.class.isAssignableFrom(clazz))
        type = ByteBuffer.class;
    else if (Class.class.isAssignableFrom(clazz))
        type = Class.class;
    else if (InetAddress.class.isAssignableFrom(clazz))
        type = InetAddress.class;
    else if (ConnectiveP.class.isAssignableFrom(clazz))
        type = P.class;
    else
        type = clazz;

    return type;
}
 
开发者ID:apache,项目名称:tinkerpop,代码行数:30,代码来源:GryoClassResolverV1d0.java


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