com.fasterxml.jackson.databind.ObjectMapper#getNodeFactory ( )源码实例Demo

下面列出了com.fasterxml.jackson.databind.ObjectMapper#getNodeFactory ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: sqlg   文件: TestJson.java
@Test
public void testJsonArraysForArrayNode() {
    Assume.assumeTrue(this.sqlgGraph.getSqlDialect().supportsJsonArrayValues());
    ObjectMapper objectMapper =  new ObjectMapper();
    ArrayNode jsonArray1 = new ArrayNode(objectMapper.getNodeFactory());
    ObjectNode john = new ObjectNode(objectMapper.getNodeFactory());
    john.put("username", "john");
    ObjectNode pete = new ObjectNode(objectMapper.getNodeFactory());
    pete.put("username", "pete");
    jsonArray1.add(john);
    jsonArray1.add(pete);

    ArrayNode jsonArray2 = new ArrayNode(objectMapper.getNodeFactory());
    ObjectNode john2 = new ObjectNode(objectMapper.getNodeFactory());
    john2.put("username", "john2");
    ObjectNode pete2 = new ObjectNode(objectMapper.getNodeFactory());
    pete2.put("username", "pete2");
    jsonArray2.add(john2);
    jsonArray2.add(pete2);

    ArrayNode[] arrayNodes = new ArrayNode[]{jsonArray1, jsonArray2};
    Vertex v1 = this.sqlgGraph.addVertex(T.label, "Person", "docs", arrayNodes);
    this.sqlgGraph.tx().commit();
    JsonNode[] value = this.sqlgGraph.traversal().V(v1.id()).next().value("docs");
    Assert.assertArrayEquals(arrayNodes, value);
}
 
源代码2 项目: sqlg   文件: TestBatchJson.java
@Test
public void batchJson() throws InterruptedException {
    ObjectMapper objectMapper =  new ObjectMapper();
    ObjectNode json = new ObjectNode(objectMapper.getNodeFactory());
    json.put("username", "john");
    this.sqlgGraph.tx().normalBatchModeOn();
    for (int i = 0; i < 10; i++) {
        this.sqlgGraph.addVertex(T.label, "Person", "doc", json);
    }
    this.sqlgGraph.tx().commit();
    batchJson_assert(this.sqlgGraph, json);
    if (this.sqlgGraph1 != null) {
        Thread.sleep(SLEEP_TIME);
        batchJson_assert(this.sqlgGraph, json);
    }
}
 
源代码3 项目: sqlg   文件: TestBatchJson.java
@Test
public void batchUpdateJsonWithNulls() throws InterruptedException {
    ObjectMapper objectMapper =  new ObjectMapper();
    ObjectNode json = new ObjectNode(objectMapper.getNodeFactory());
    json.put("username", "john");
    this.sqlgGraph.tx().normalBatchModeOn();
    Vertex a1 = this.sqlgGraph.addVertex(T.label, "Person", "doc1", json);
    Vertex a2 = this.sqlgGraph.addVertex(T.label, "Person", "doc2", json);
    Vertex a3 = this.sqlgGraph.addVertex(T.label, "Person", "doc3", json);
    this.sqlgGraph.tx().commit();

    ObjectNode jsonAgain = new ObjectNode(objectMapper.getNodeFactory());
    jsonAgain.put("surname", "zzz");
    this.sqlgGraph.tx().normalBatchModeOn();
    a1.property("doc1", jsonAgain);
    a2.property("doc2", jsonAgain);
    a3.property("doc3", jsonAgain);
    this.sqlgGraph.tx().commit();

    batchUpdateJsonWithNulls_assert(this.sqlgGraph, a1, a2, a3, jsonAgain);
    if (this.sqlgGraph1 != null) {
        Thread.sleep(SLEEP_TIME);
        batchUpdateJsonWithNulls_assert(this.sqlgGraph1, a1, a2, a3, jsonAgain);
    }
}
 
源代码4 项目: sqlg   文件: TestBatchStreamVertex.java
@Test
public void testStreamJson() throws InterruptedException {
    ObjectMapper objectMapper =  new ObjectMapper();
    ObjectNode json = new ObjectNode(objectMapper.getNodeFactory());
    json.put("username", "john");
    this.sqlgGraph.tx().streamingBatchModeOn();
    for (int i = 0; i < 10; i++) {
        this.sqlgGraph.streamVertex(T.label, "Person", "doc", json);
    }
    this.sqlgGraph.tx().commit();
    testStreamJson_assert(this.sqlgGraph, json);
    if (this.sqlgGraph1 != null) {
        Thread.sleep(SLEEP_TIME);
        testStreamJson_assert(this.sqlgGraph1, json);
    }
}
 
源代码5 项目: sqlg   文件: TestBatchStreamVertex.java
@Test(expected = SqlgExceptions.InvalidPropertyTypeException.class)
public void testStreamJsonAsArray() {
    ObjectMapper objectMapper =  new ObjectMapper();
    ObjectNode json1 = new ObjectNode(objectMapper.getNodeFactory());
    json1.put("username", "john1");
    ObjectNode json2 = new ObjectNode(objectMapper.getNodeFactory());
    json2.put("username", "john2");

    JsonNode[] jsonNodes = new JsonNode[]{json1};
    this.sqlgGraph.tx().streamingBatchModeOn();
    for (int i = 0; i < 10; i++) {
        this.sqlgGraph.streamVertex(T.label, "Person", "docs", jsonNodes);
    }
    this.sqlgGraph.tx().commit();
    List<Vertex> vertices = this.sqlgGraph.traversal().V().hasLabel("Person").toList();
    Assert.assertEquals(10, vertices.size());
    JsonNode[] value = vertices.get(0).value("docs");
    Assert.assertArrayEquals(jsonNodes, value);
}
 
源代码6 项目: sqlg   文件: TestLoadSchema.java
@Test
public void testLoadingJson() {
    ObjectMapper objectMapper =  new ObjectMapper();
    ObjectNode json = new ObjectNode(objectMapper.getNodeFactory());
    json.put("username", "john");
    Vertex v1 = this.sqlgGraph.addVertex(T.label, "Person", "doc", json);
    this.sqlgGraph.tx().commit();
    this.sqlgGraph.close();
    try (SqlgGraph sqlgGraph1 = SqlgGraph.open(configuration)) {
        Vertex vv = sqlgGraph1.traversal().V(v1.id()).next();
        Assert.assertTrue(vv.property("doc").isPresent());
        Map<String, PropertyType> propertyTypeMap = sqlgGraph1.getTopology().getAllTables().get(SchemaTable.of(
                sqlgGraph1.getSqlDialect().getPublicSchema(), "V_Person").toString());
        Assert.assertTrue(propertyTypeMap.containsKey("doc"));
        sqlgGraph1.tx().rollback();
    }
}
 
源代码7 项目: sqlg   文件: TestJson.java
@Test
public void testJson() {
    ObjectMapper objectMapper =  new ObjectMapper();
    ObjectNode json = new ObjectNode(objectMapper.getNodeFactory());
    json.put("username", "john");
    Vertex v1 = this.sqlgGraph.addVertex(T.label, "Person", "doc", json);
    this.sqlgGraph.tx().commit();
    JsonNode value = this.sqlgGraph.traversal().V(v1.id()).next().value("doc");
    Assert.assertEquals(json, value);
}
 
源代码8 项目: sqlg   文件: TestJson.java
@Test
public void testJsonArray() {
    ObjectMapper objectMapper =  new ObjectMapper();
    ArrayNode jsonArray = new ArrayNode(objectMapper.getNodeFactory());
    ObjectNode john = new ObjectNode(objectMapper.getNodeFactory());
    john.put("username", "john");
    ObjectNode pete = new ObjectNode(objectMapper.getNodeFactory());
    pete.put("username", "pete");
    jsonArray.add(john);
    jsonArray.add(pete);
    Vertex v1 = this.sqlgGraph.addVertex(T.label, "Person", "users", jsonArray);
    this.sqlgGraph.tx().commit();
    JsonNode value = this.sqlgGraph.traversal().V(v1.id()).next().value("users");
    Assert.assertEquals(jsonArray, value);
}
 
源代码9 项目: sqlg   文件: TestJson.java
@Test
public void testJsonArraysForObjectNodes() {
    Assume.assumeTrue(this.sqlgGraph.getSqlDialect().supportsJsonArrayValues());
    ObjectMapper objectMapper =  new ObjectMapper();
    ObjectNode json1 = new ObjectNode(objectMapper.getNodeFactory());
    json1.put("username", "john1");
    ObjectNode json2 = new ObjectNode(objectMapper.getNodeFactory());
    json2.put("username", "john2");
    ObjectNode[] objectNodes = new ObjectNode[]{json1, json2};

    Vertex v1 = this.sqlgGraph.addVertex(T.label, "Person", "docs", objectNodes);
    this.sqlgGraph.tx().commit();
    JsonNode[] value = this.sqlgGraph.traversal().V(v1.id()).next().value("docs");
    Assert.assertArrayEquals(objectNodes, value);
}
 
源代码10 项目: sqlg   文件: TestBatchStreamEdge.java
@Test
public void testStreamJson() throws InterruptedException {
    this.sqlgGraph.tx().streamingBatchModeOn();
    LinkedHashMap<String, Object> keyValues = new LinkedHashMap<>();
    keyValues.put("name", "halo");
    keyValues.put("surname", "halo");
    for (int i = 0; i < 10; i++) {
        keyValues.put("age", i);
        this.sqlgGraph.streamVertex("Man", keyValues);
    }
    this.sqlgGraph.tx().flush();
    for (int i = 0; i < 10; i++) {
        keyValues.put("age", i);
        this.sqlgGraph.streamVertex("Female", keyValues);
    }
    this.sqlgGraph.tx().flush();
    int count = 0;
    List<Vertex> men = this.sqlgGraph.traversal().V().hasLabel("Man").toList();
    List<Vertex> females = this.sqlgGraph.traversal().V().hasLabel("Female").toList();
    LinkedHashMap<String, Object> edgeKeyValues = new LinkedHashMap<>();

    ObjectMapper objectMapper =  new ObjectMapper();
    ObjectNode json = new ObjectNode(objectMapper.getNodeFactory());
    json.put("username", "john");

    edgeKeyValues.put("doc", json);
    for (Vertex man : men) {
        SqlgVertex female = (SqlgVertex) females.get(count++);
        ((SqlgVertex)man).streamEdge("married", female, edgeKeyValues);
    }
    this.sqlgGraph.tx().commit();
    testStreamJson_assert(this.sqlgGraph, json);
    if (this.sqlgGraph1 != null) {
        Thread.sleep(SLEEP_TIME);
        testStreamJson_assert(this.sqlgGraph1, json);
    }
}
 
源代码11 项目: sqlg   文件: TestBatchJson.java
@Test
public void testJson() throws InterruptedException {
    ObjectMapper objectMapper =  new ObjectMapper();
    ObjectNode json = new ObjectNode(objectMapper.getNodeFactory());
    json.put("username", "john");
    this.sqlgGraph.tx().batchMode(BatchManager.BatchModeType.NORMAL);
    Vertex a1 = this.sqlgGraph.addVertex(T.label, "A", "doc", json);
    this.sqlgGraph.tx().commit();
    testJson_assert(this.sqlgGraph, json, a1);
    if (this.sqlgGraph1 != null) {
        Thread.sleep(SLEEP_TIME);
        testJson_assert(this.sqlgGraph1, json, a1);
    }
}
 
源代码12 项目: walkmod-core   文件: RemoveModulesYMLAction.java
@Override
public void doAction(JsonNode node) throws Exception {
	if (node.has("modules")) {
		JsonNode aux = node.get("modules");
		ObjectMapper mapper = provider.getObjectMapper();
		if (aux.isArray()) {
			ArrayNode modulesList = (ArrayNode) node.get("modules");
			Iterator<JsonNode> it = modulesList.iterator();
			ArrayNode newModulesList = new ArrayNode(mapper.getNodeFactory());
			while (it.hasNext()) {
				JsonNode next = it.next();
				if (next.isTextual()) {
					String text = next.asText();
					if (!modules.contains(text)) {
						newModulesList.add(text);
					}
				}
			}
			ObjectNode oNode = (ObjectNode) node;
			if (newModulesList.size() > 0) {
				oNode.set("modules", newModulesList);
			} else {
				oNode.remove("modules");
			}
			provider.write(node);
		}
	}
}
 
源代码13 项目: walkmod-core   文件: RemoveModulesYMLAction.java
@Override
public void doAction(JsonNode node) throws Exception {
	if (node.has("modules")) {
		JsonNode aux = node.get("modules");
		ObjectMapper mapper = provider.getObjectMapper();
		if (aux.isArray()) {
			ArrayNode modulesList = (ArrayNode) node.get("modules");
			Iterator<JsonNode> it = modulesList.iterator();
			ArrayNode newModulesList = new ArrayNode(mapper.getNodeFactory());
			while (it.hasNext()) {
				JsonNode next = it.next();
				if (next.isTextual()) {
					String text = next.asText();
					if (!modules.contains(text)) {
						newModulesList.add(text);
					}
				}
			}
			ObjectNode oNode = (ObjectNode) node;
			if (newModulesList.size() > 0) {
				oNode.set("modules", newModulesList);
			} else {
				oNode.remove("modules");
			}
			provider.write(node);
		}
	}
}
 
源代码14 项目: immutables   文件: AggregateQueryBuilder.java
AggregateQueryBuilder(Query query, ObjectMapper mapper, Mapping mapping, PathNaming pathNaming, Predicate<Path> idPredicate) {
  this.query = Objects.requireNonNull(query, "query");
  Preconditions.checkArgument(query.hasAggregations(), "no aggregations for query %s", query);
  this.mapping = mapping;
  this.pathNaming = pathNaming;
  List<Expression> toName = new ArrayList<>();
  toName.addAll(query.projections());
  toName.addAll(query.collations().stream().map(Collation::expression).collect(Collectors.toList()));
  toName.addAll(query.groupBy());
  naming = UniqueCachedNaming.of(toName);
  this.mapper = mapper;
  this.nodeFactory = mapper.getNodeFactory();
  this.idPredicate = idPredicate;
}
 
@Test
public void testKafkaTopicModifiedChangedReplication() throws Exception {
    // create the topicResource
    String topicName = "test-kafkatopic-modified-with-changed-replication";
    String resourceName = createTopic(topicName, asList(1));

    // now change the topicResource
    KafkaTopic changedTopic = new KafkaTopicBuilder(operation().inNamespace(NAMESPACE).withName(resourceName).get())
            .editOrNewSpec().withReplicas(2).endSpec().build();
    operation().inNamespace(NAMESPACE).withName(resourceName).patch(changedTopic);
    assertStatusNotReady(topicName,
            "Changing 'spec.replicas' is not supported. " +
                    "This KafkaTopic's 'spec.replicas' should be reverted to 1 and then " +
                    "the replication should be changed directly in Kafka.");

    // Now do the revert
    changedTopic = new KafkaTopicBuilder(operation().inNamespace(NAMESPACE).withName(resourceName).get())
            .editOrNewSpec().withReplicas(1).endSpec().build();
    operation().inNamespace(NAMESPACE).withName(resourceName).patch(changedTopic);
    assertStatusReady(topicName);

    File file = File.createTempFile(getClass().getSimpleName(), ".json");
    ObjectMapper mapper = new ObjectMapper();
    ObjectNode root = new ObjectNode(mapper.getNodeFactory());
    root.put("version", 1)
        .putArray("partitions")
            .addObject()
                .put("topic", topicName)
                .put("partition", 0)
                .putArray("replicas")
                    .add(1)
                    .add(2);
    mapper.writeValue(file, root);
    LOGGER.info("Creating 2nd replica: {}", mapper.writeValueAsString(root));

    // Now change it in Kafka
    doReassignmentCommand(
            //"--boostrap-server", kafkaCluster.brokerList(),
            "--zookeeper", "localhost:" + kafkaCluster.zkPort(),
            "--reassignment-json-file", file.getAbsolutePath(),
            "--execute");

    LOGGER.info("Waiting for reassignment completion");
    waitFor(() -> {
        String output = doReassignmentCommand(
                //"--boostrap-server", kafkaCluster.brokerList(),
                "--zookeeper", "localhost:" + kafkaCluster.zkPort(),
                "--reassignment-json-file", file.getAbsolutePath(),
                "--verify");
        LOGGER.info(output);

        if (output.contains("Reassignment of partition test-kafkatopic-modified-with-changed-replication-0 is still in progress")) {
            return false;
        } else {
            assertThat("Reassignment is no longer in progress, but wasn't successful: " + output,
                    output.contains("Reassignment of partition test-kafkatopic-modified-with-changed-replication-0 completed successfully"), is(true));
            return true;
        }
    }, "reassignment completion");

    // wait for reconciliation and that now replicas=2.
    waitFor(() -> {
        KafkaTopic kafkaTopic = Crds.topicOperation(kubeClient).inNamespace(NAMESPACE).withName(resourceName).get();
        LOGGER.info(kafkaTopic == null ? "Null topic" : kafkaTopic.toString());
        return kafkaTopic.getSpec().getReplicas() == 2;
    }, "KafkaTopic.spec.replicas=2");

    // And check that the status is ready
    assertStatusReady(topicName);
}
 
源代码16 项目: strimzi-kafka-operator   文件: CrdGenerator.java
CrdGenerator(ObjectMapper mapper, Map<String, String> labels) {
    this.mapper = mapper;
    this.nf = mapper.getNodeFactory();
    this.labels = labels;
}
 
源代码17 项目: JsonSurfer   文件: JacksonProvider.java
public JacksonProvider(ObjectMapper om) {
    this.om = om;
    this.factory = om.getNodeFactory();
}