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


Java JSONMetadataParser.parseEntityMetadata方法代码示例

本文整理汇总了Java中com.redhat.lightblue.metadata.parser.JSONMetadataParser.parseEntityMetadata方法的典型用法代码示例。如果您正苦于以下问题:Java JSONMetadataParser.parseEntityMetadata方法的具体用法?Java JSONMetadataParser.parseEntityMetadata怎么用?Java JSONMetadataParser.parseEntityMetadata使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.redhat.lightblue.metadata.parser.JSONMetadataParser的用法示例。


在下文中一共展示了JSONMetadataParser.parseEntityMetadata方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getMd

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
public EntityMetadata getMd(String fname)  {
    //runValidJsonTest("json-schema/metadata/metadata.json", fname);
    try {
        JsonNode node = loadJsonNode(fname);
        Extensions<JsonNode> extensions = new Extensions<>();
        extensions.addDefaultExtensions();
        extensions.registerDataStoreParser("mongo", new MongoDataStoreParser<JsonNode>());
        TypeResolver resolver = new DefaultTypes();
        JSONMetadataParser parser = new JSONMetadataParser(extensions, resolver, nodeFactory);
        EntityMetadata md = parser.parseEntityMetadata(node);
        PredefinedFields.ensurePredefinedFields(md);
        return md;
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:17,代码来源:AbstractMongoCrudTest.java

示例2: createMetadataWithPartialFilterExpression_CanPersistFieldNamesWithDots

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
@Test
public void createMetadataWithPartialFilterExpression_CanPersistFieldNamesWithDots() throws Exception {
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("mongo", new MongoDataStoreParser<JsonNode>());
    JSONMetadataParser parser = new JSONMetadataParser(extensions, new DefaultTypes(), new JsonNodeFactory(true));

    EntityMetadata m = parser.parseEntityMetadata(AbstractJsonNodeTest.loadJsonNode("./testMetadata_partialIndex.json"));

    Index partialIndex = m.getEntityInfo().getIndexes().getIndexes().get(0);
    Assert.assertEquals("{$and=[{field6.nf7.nnf2={$gt=5}}, {field6.nf7.nnf2={$lt=100}}]}", partialIndex.getProperties().get("partialFilterExpression").toString());

    // persist
    md.createNewMetadata(m);
    // read
    m = md.getEntityMetadata("test", "1.0.0");

    Assert.assertNotNull(m);
    partialIndex = m.getEntityInfo().getIndexes().getIndexes().get(0);
    Assert.assertEquals("{ \"$and\" : [ { \"field6.nf7.nnf2\" : { \"$gt\" : 5}} , { \"field6.nf7.nnf2\" : { \"$lt\" : 100}}]}", partialIndex.getProperties().get("partialFilterExpression").toString());
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:22,代码来源:MongoMetadataTest.java

示例3: createMdWithAndRefTest

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
@Test
public void createMdWithAndRefTest() throws Exception {
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("mongo", new MongoDataStoreParser<JsonNode>());
    JSONMetadataParser parser = new JSONMetadataParser(extensions, new DefaultTypes(), new JsonNodeFactory(true));

    // get JsonNode representing metadata
    JsonNode jsonMetadata = AbstractJsonNodeTest.loadJsonNode(getClass().getSimpleName() + "-qps-andquery.json");

    // parser into EntityMetadata
    EntityMetadata e = parser.parseEntityMetadata(jsonMetadata);

    // persist
    md.createNewMetadata(e);
    EntityMetadata g = md.getEntityMetadata("test", "1.0.0");
    // No exception=OK
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:19,代码来源:MongoMetadataTest.java

示例4: createEntityMetadata

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
/**
 * Creates an instance of {@link EntityMetadata} for testing purposes.
 *
 * @param backend - Name of backend to use.
 * @param node - Json node to parse metadata from.
 * @param entityConstraints - <i>(optional)</i> {@link EntityConstraint}s to
 * set on the {@link EntityMetadata}. If <code>null</code> then nothing will
 * be set.
 * @param fieldConstraintParsers - <i>(optional)</i>
 * {@link FieldConstraintParser}s to register on the {@link Extensions} used
 * to parse the {@link EntityMetadata}. If <code>null</code> then nothing
 * will be set.
 * @return An instance of {@link EntityMetadata} for testing purposes.
 */
public static EntityMetadata createEntityMetadata(
        String backend,
        JsonNode node,
        List<? extends EntityConstraint> entityConstraints,
        Map<String, ? extends FieldConstraintParser<JsonNode>> fieldConstraintParsers) {

    JSONMetadataParser jsonParser = createJSONMetadataParser(backend, fieldConstraintParsers);

    EntityMetadata entityMetadata = jsonParser.parseEntityMetadata(node);
    if ((entityConstraints != null) && !entityConstraints.isEmpty()) {
        entityMetadata.setConstraints(new ArrayList<>(entityConstraints));
    }

    return entityMetadata;
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:30,代码来源:MetadataUtil.java

示例5: getMd

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
public EntityMetadata getMd(String fname) throws Exception {
    JsonNode node = loadJsonNode(fname);
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("mongo", new FakeMongoDataStoreParser<JsonNode>());
    TypeResolver resolver = new DefaultTypes();
    JSONMetadataParser parser = new JSONMetadataParser(extensions, resolver, JsonNodeFactory.instance);
    EntityMetadata md = parser.parseEntityMetadata(node);
    PredefinedFields.ensurePredefinedFields(md);
    return md;
}
 
开发者ID:esbtools,项目名称:lightblue-notification-hook,代码行数:12,代码来源:NotificationHookTest.java

示例6: getMd

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
public EntityMetadata getMd(String fname) throws Exception {
    JsonNode node = loadJsonNode(fname);
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("mongo", new MongoDataStoreParser<JsonNode>());
    TypeResolver resolver = new DefaultTypes();
    JSONMetadataParser parser = new JSONMetadataParser(extensions, resolver, nodeFactory);
    EntityMetadata emd = parser.parseEntityMetadata(node);
    PredefinedFields.ensurePredefinedFields(emd);
    return emd;
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:12,代码来源:BsonMergeTest.java

示例7: getAccessEntityVersion

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
@Test
public void getAccessEntityVersion() throws IOException, JSONException {
    // setup parser
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("mongo", new MongoDataStoreParser<JsonNode>());
    JSONMetadataParser parser = new JSONMetadataParser(extensions, new DefaultTypes(), new JsonNodeFactory(true));

    // get JsonNode representing metadata
    JsonNode jsonMetadata = AbstractJsonNodeTest.loadJsonNode(getClass().getSimpleName() + "-access-entity-version.json");

    // parser into EntityMetadata
    EntityMetadata e = parser.parseEntityMetadata(jsonMetadata);

    // persist
    md.createNewMetadata(e);

    // ready to test!
    Response response = md.getAccess(e.getName(), e.getVersion().getValue());

    Assert.assertNotNull(response);

    // verify response content
    Assert.assertEquals(OperationStatus.COMPLETE, response.getStatus());
    Assert.assertTrue(response.getDataErrors().isEmpty());

    // verify data
    Assert.assertNotNull(response.getEntityData());
    String jsonEntityData = response.getEntityData().toString();
    String jsonExpected = "[{\"role\":\"field.find\",\"find\":[\"test.name\"]},{\"role\":\"field.insert\",\"insert\":[\"test.name\"]},{\"role\":\"noone\",\"update\":[\"test.objectType\"]},{\"role\":\"field.update\",\"update\":[\"test.name\"]},{\"role\":\"anyone\",\"find\":[\"test.objectType\"]},{\"role\":\"entity.insert\",\"insert\":[\"test\"]},{\"role\":\"entity.update\",\"update\":[\"test\"]},{\"role\":\"entity.find\",\"find\":[\"test\"]},{\"role\":\"entity.delete\",\"delete\":[\"test\"]}]";
    JSONAssert.assertEquals(jsonExpected, jsonEntityData, false);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:33,代码来源:MongoMetadataTest.java

示例8: getAccessEntityMissingDefaultVersion

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
@Test
public void getAccessEntityMissingDefaultVersion() throws IOException, JSONException {
    // setup parser
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("mongo", new MongoDataStoreParser<JsonNode>());
    JSONMetadataParser parser = new JSONMetadataParser(extensions, new DefaultTypes(), new JsonNodeFactory(true));

    // get JsonNode representing metadata
    JsonNode jsonMetadata = AbstractJsonNodeTest.loadJsonNode(getClass().getSimpleName() + "-access-entity-missing-default-version.json");

    // parser into EntityMetadata
    EntityMetadata e = parser.parseEntityMetadata(jsonMetadata);

    // persist
    md.createNewMetadata(e);

    // ready to test!
    Response response = md.getAccess(e.getName(), null);

    Assert.assertNotNull(response);

    // verify response content
    Assert.assertEquals(OperationStatus.ERROR, response.getStatus());
    Assert.assertFalse(response.getDataErrors().isEmpty());

    // verify data
    Assert.assertNull(response.getEntityData());
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:30,代码来源:MongoMetadataTest.java

示例9: getAccessEntityDefaultVersion

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
/**
 * TODO enable once mongo metadata allows falling back on default version in
 * getEntityMetadata()
 *
 * @throws IOException
 * @throws JSONException
 */
@Test
public void getAccessEntityDefaultVersion() throws IOException, JSONException {
    // setup parser
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("mongo", new MongoDataStoreParser<JsonNode>());
    JSONMetadataParser parser = new JSONMetadataParser(extensions, new DefaultTypes(), new JsonNodeFactory(true));

    // get JsonNode representing metadata
    JsonNode jsonMetadata = AbstractJsonNodeTest.loadJsonNode(getClass().getSimpleName() + "-access-entity-default-version.json");

    // parser into EntityMetadata
    EntityMetadata e = parser.parseEntityMetadata(jsonMetadata);

    // persist
    md.createNewMetadata(e);

    // ready to test!
    Response response = md.getAccess(e.getName(), null);

    Assert.assertNotNull(response);

    // verify response content
    Assert.assertEquals(OperationStatus.COMPLETE, response.getStatus());
    Assert.assertTrue(response.getDataErrors().isEmpty());

    // verify data
    Assert.assertNotNull(response.getEntityData());
    String jsonEntityData = response.getEntityData().toString();
    String jsonExpected = "[{\"role\":\"field.find\",\"find\":[\"test.name\"]},{\"role\":\"field.insert\",\"insert\":[\"test.name\"]},{\"role\":\"field.update\",\"update\":[\"test.name\"]},{\"role\":\"noone\",\"update\":[\"test.objectType\"]},{\"role\":\"anyone\",\"find\":[\"test.objectType\"]},{\"role\":\"entity.insert\",\"insert\":[\"test\"]},{\"role\":\"entity.update\",\"update\":[\"test\"]},{\"role\":\"entity.find\",\"find\":[\"test\"]},{\"role\":\"entity.delete\",\"delete\":[\"test\"]}]";
    JSONAssert.assertEquals(jsonExpected, jsonEntityData, false);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:40,代码来源:MongoMetadataTest.java

示例10: getAccessSingleEntityDefaultVersion

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
/**
 * TODO enable once mongo metadata allows falling back on default version in
 * getEntityMetadata()
 *
 * @throws IOException
 * @throws JSONException
 */
@Test
public void getAccessSingleEntityDefaultVersion() throws IOException, JSONException {
    // setup parser
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("mongo", new MongoDataStoreParser<JsonNode>());
    JSONMetadataParser parser = new JSONMetadataParser(extensions, new DefaultTypes(), new JsonNodeFactory(true));

    // get JsonNode representing metadata
    JsonNode jsonMetadata = AbstractJsonNodeTest.loadJsonNode(getClass().getSimpleName() + "-access-single-entity-default-version.json");

    // parser into EntityMetadata
    EntityMetadata e = parser.parseEntityMetadata(jsonMetadata);
    // persist
    md.createNewMetadata(e);

    // ready to test!
    Response response = md.getAccess(null, null);

    Assert.assertNotNull(response);

    // verify response content
    Assert.assertEquals(OperationStatus.COMPLETE, response.getStatus());
    Assert.assertTrue(response.getDataErrors().isEmpty());

    // verify data
    Assert.assertNotNull(response.getEntityData());
    String jsonEntityData = response.getEntityData().toString();
    String jsonExpected = "[{\"role\":\"field.find\",\"find\":[\"test.name\"]},{\"role\":\"field.insert\",\"insert\":[\"test.name\"]},{\"role\":\"field.update\",\"update\":[\"test.name\"]},{\"role\":\"noone\",\"update\":[\"test.objectType\"]},{\"role\":\"anyone\",\"find\":[\"test.objectType\"]},{\"role\":\"entity.insert\",\"insert\":[\"test\"]},{\"role\":\"entity.update\",\"update\":[\"test\"]},{\"role\":\"entity.find\",\"find\":[\"test\"]},{\"role\":\"entity.delete\",\"delete\":[\"test\"]}]";
    JSONAssert.assertEquals(jsonExpected, jsonEntityData, false);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:39,代码来源:MongoMetadataTest.java

示例11: getAccessMultipleEntitiesDefaultVersion

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
/**
 * TODO enable once mongo metadata allows falling back on default version in
 * getEntityMetadata()
 *
 * @throws IOException
 * @throws JSONException
 */
@Test
public void getAccessMultipleEntitiesDefaultVersion() throws IOException, JSONException {
    // setup parser
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("mongo", new MongoDataStoreParser<JsonNode>());
    JSONMetadataParser parser = new JSONMetadataParser(extensions, new DefaultTypes(), new JsonNodeFactory(true));

    // get JsonNode representing metadata
    JsonNode jsonMetadata = AbstractJsonNodeTest.loadJsonNode(getClass().getSimpleName() + "-access-multiple-entities-default-version.json");

    ArrayNode an = (ArrayNode) jsonMetadata;
    Iterator<JsonNode> itr = an.iterator();
    while (itr.hasNext()) {
        // parser into EntityMetadata
        EntityMetadata e = parser.parseEntityMetadata(itr.next());

        // persist
        md.createNewMetadata(e);
    }

    // ready to test!
    Response response = md.getAccess(null, null);

    Assert.assertNotNull(response);

    // verify response content
    Assert.assertEquals(OperationStatus.PARTIAL, response.getStatus());
    Assert.assertFalse(response.getDataErrors().isEmpty());
    Assert.assertEquals(1, response.getDataErrors().size());
    String jsonErrorExpected = "[{\"data\":{\"name\":\"test2\"},\"errors\":[{\"objectType\":\"error\",\"errorCode\":\"ERR_NO_METADATA\",\"msg\":\"Could not get metadata for given input. Error message: version\"}]}]";
    JSONAssert.assertEquals(jsonErrorExpected, response.getDataErrors().toString(), false);

    // verify data
    Assert.assertNotNull(response.getEntityData());
    String jsonEntityData = response.getEntityData().toString();
    String jsonExpected = "[{\"role\":\"field.find\",\"find\":[\"test1.name\",\"test3.name\"]},{\"role\":\"field.insert\",\"insert\":[\"test1.name\",\"test3.name\"]},{\"role\":\"noone\",\"update\":[\"test1.objectType\",\"test3.objectType\"]},{\"role\":\"field.update\",\"update\":[\"test1.name\",\"test3.name\"]},{\"role\":\"anyone\",\"find\":[\"test1.objectType\",\"test3.objectType\"]},{\"role\":\"entity.insert\",\"insert\":[\"test1\",\"test3\"]},{\"role\":\"entity.update\",\"update\":[\"test1\",\"test3\"]},{\"role\":\"entity.find\",\"find\":[\"test1\",\"test3\"]},{\"role\":\"entity.delete\",\"delete\":[\"test1\",\"test3\"]}]";
    JSONAssert.assertEquals(jsonExpected, jsonEntityData, false);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:47,代码来源:MongoMetadataTest.java

示例12: getMd

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
private EntityMetadata getMd(String fname) throws Exception {
    JsonNode node = loadJsonNode(fname);
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("empty", new TestDataStoreParser<JsonNode>());
    TypeResolver resolver = new DefaultTypes();
    JSONMetadataParser parser = new JSONMetadataParser(extensions, resolver, factory);
    return parser.parseEntityMetadata(node);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:10,代码来源:ValueGeneratorTest.java

示例13: getMd

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
private EntityMetadata getMd(String fname) {
    try {
        JsonNode node = loadJsonNode("composite/" + fname + ".json");
        Extensions<JsonNode> extensions = new Extensions<>();
        extensions.addDefaultExtensions();
        extensions.registerDataStoreParser("mongo", new TestDataStoreParser<JsonNode>());
        TypeResolver resolver = new DefaultTypes();
        JSONMetadataParser parser = new JSONMetadataParser(extensions, resolver, JsonNodeFactory.instance);
        EntityMetadata md = parser.parseEntityMetadata(node);
        PredefinedFields.ensurePredefinedFields(md);
        return md;
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:16,代码来源:SearchesTest.java

示例14: getMd

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
private EntityMetadata getMd(String fname) throws Exception {
    JsonNode node = loadJsonNode(fname);
    Extensions<JsonNode> extensions = new Extensions<>();
    extensions.addDefaultExtensions();
    extensions.registerDataStoreParser("mongo", new TestDataStoreParser<JsonNode>());
    TypeResolver resolver = new DefaultTypes();
    JSONMetadataParser parser = new JSONMetadataParser(extensions, resolver, factory);
    return parser.parseEntityMetadata(node);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:10,代码来源:QueryPlanChooserTest.java

示例15: getMd

import com.redhat.lightblue.metadata.parser.JSONMetadataParser; //导入方法依赖的package包/类
private EntityMetadata getMd(String fname) {
    try {
        JsonNode node = loadJsonNode(fname);
        Extensions<JsonNode> extensions = new Extensions<>();
        extensions.addDefaultExtensions();
        extensions.registerDataStoreParser("mongo", new TestDataStoreParser<JsonNode>());
        TypeResolver resolver = new DefaultTypes();
        JSONMetadataParser parser = new JSONMetadataParser(extensions, resolver, JsonNodeFactory.instance);
        EntityMetadata md = parser.parseEntityMetadata(node);
        PredefinedFields.ensurePredefinedFields(md);
        return md;
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:16,代码来源:AnalyzeQueryTest.java


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