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

Java EntityInfo类代码示例

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

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



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

示例1: updateEntityInfo

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Test
public void updateEntityInfo() throws Exception {
    EntityMetadata e = new EntityMetadata("testEntity");
    e.setVersion(new Version("1.0.0", null, "some text blah blah"));
    e.setStatus(MetadataStatus.ACTIVE);
    e.setDataStore(new MongoDataStore(null, null, "testCollection"));
    e.getFields().put(new SimpleField("field1", StringType.TYPE));
    ObjectField o = new ObjectField("field2");
    o.getFields().put(new SimpleField("x", IntegerType.TYPE));
    e.getFields().put(o);

    md.createNewMetadata(e);

    EntityInfo ei = new EntityInfo("testEntity");
    ArrayField af = new ArrayField("arrField", new SimpleArrayElement(StringType.TYPE));
    e.getFields().put(af);
    IndexSortKey isk = new IndexSortKey(new Path("arrField.*"), true, true);
    ei.getIndexes().add(new Index(isk));
    ei.setDataStore(new MongoDataStore(null, null, "somethingelse"));
    md.updateEntityInfo(ei);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:22,代码来源:MongoMetadataTest.java


示例2: updateEntityInfo_noEntity

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Test
public void updateEntityInfo_noEntity() throws Exception {
    EntityMetadata e = new EntityMetadata("testEntity");
    e.setVersion(new Version("1.0.0", null, "some text blah blah"));
    e.setStatus(MetadataStatus.ACTIVE);
    e.setDataStore(new MongoDataStore(null, null, "testCollection"));
    e.getFields().put(new SimpleField("field1", StringType.TYPE));
    ObjectField o = new ObjectField("field2");
    o.getFields().put(new SimpleField("x", IntegerType.TYPE));
    e.getFields().put(o);
    md.createNewMetadata(e);

    EntityInfo ei = new EntityInfo("NottestEntity");
    ei.setDataStore(new MongoDataStore(null, null, "somethingelse"));
    try {
        md.updateEntityInfo(ei);
        Assert.fail();
    } catch (Error ex) {
        Assert.assertEquals(MongoMetadataConstants.ERR_MISSING_ENTITY_INFO, ex.getErrorCode());
    }
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:22,代码来源:MongoMetadataTest.java


示例3: parseEntityInfo

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
/**
 * Entry point for entity info parser. Expects an Object corresponding to
 * the EntityInfo object.
 *
 * @throws ParseException
 */
public EntityInfo parseEntityInfo(T object) {
    Error.push("parseEntityInfo");
    try {
        String name = getRequiredStringProperty(object, STR_NAME);

        EntityInfo info = new EntityInfo(name);

        info.setDefaultVersion(getStringProperty(object, STR_DEFAULT_VERSION));
        info.getIndexes().setIndexes(parseArr(getObjectProperty(object, STR_INDEXES), parseIndex));
        info.getEnums().setEnums(parseArr(getObjectProperty(object, STR_ENUMS), parseEnum));
        info.getHooks().setHooks(parseArr(getObjectProperty(object, STR_HOOKS), parseHook));

        T backend = getRequiredObjectProperty(object, STR_DATASTORE);
        info.setDataStore(parseDataStore(backend));
        parseProperties(info, object, ENTITY_INFO_ELEMENTS);

        return info;
    } finally {
        Error.pop();
    }
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:28,代码来源:MetadataParser.java


示例4: hookTest

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Test
public void hookTest() throws Exception {
    Extensions<JsonNode> ex = new Extensions<>();
    HookTestCfgParser hookParser = new HookTestCfgParser();
    ex.registerHookConfigurationParser("testHook", hookParser);
    ex.registerDataStoreParser("test", new TestDataStoreParser());
    JsonNode mdJson = json("{'name':'test','datastore':{'backend':'test' }, "
            + "'hooks':[ "
            + "{'name':'testHook','actions':['insert'],"
            + "'projection':{'field':'*','recursive':1},"
            + "'configuration':{'testField':'testValue'} } ] }");
    JSONMetadataParser parser = new JSONMetadataParser(ex, new DefaultTypes(), nodeFactory);
    EntityInfo ei = parser.parseEntityInfo(mdJson);
    Assert.assertNotNull(ei);
    Assert.assertFalse(ei.getHooks().isEmpty());
    Assert.assertEquals("testHook", ei.getHooks().getHooks().get(0).getName());
    Assert.assertTrue(ei.getHooks().getHooks().get(0).isInsert());
    Assert.assertFalse(ei.getHooks().getHooks().get(0).isUpdate());
    Assert.assertFalse(ei.getHooks().getHooks().get(0).isDelete());
    Assert.assertEquals("testValue", ((TestHookCfg) ei.getHooks().getHooks().get(0).getConfiguration()).testName);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:22,代码来源:ExtensionsTest.java


示例5: convertHookTest

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Test
public void convertHookTest() throws Exception {
    Extensions<JsonNode> ex = new Extensions<>();
    HookTestCfgParser hookParser = new HookTestCfgParser();
    ex.registerHookConfigurationParser("testHook", hookParser);
    ex.registerDataStoreParser("test", new TestDataStoreParser());

    EntityInfo ei = new EntityInfo("test");
    ArrayList<Hook> hooks = new ArrayList<>();
    Hook hook = new Hook("testHook");
    hook.setInsert(true);
    hook.setProjection(new FieldProjection(new Path("*"), true, true));
    hook.setConfiguration(new TestHookCfg("test"));
    hooks.add(hook);
    ei.getHooks().setHooks(hooks);

    JSONMetadataParser parser = new JSONMetadataParser(ex, new DefaultTypes(), nodeFactory);
    JsonNode node = parser.convert(ei);
    System.out.println(node);
    JSONAssert.assertEquals(node.toString(), json("{'name':'test','datastore':{'backend':'test' }, "
            + "'hooks':[ "
            + "{'name':'testHook','actions':['insert'],"
            + "'projection':{'field':'*','include':true,'recursive':true},"
            + "'configuration':{'testField':'test'} } ] }").toString(), false);

}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:27,代码来源:ExtensionsTest.java


示例6: getOrCreateVersionedData

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
/**
 * Gets or creates the mapped data for the passed in name
 *
 * @param entityName - entity name
 * @param createIfNull - <code>true</code> if a new map should be created
 * and returned, otherwise <code>false</code> and <code>null</code> will be
 * returned.
 * @return the mapped data for the passed in entity name.
 */
private Map<String, Data> getOrCreateVersionedData(String entityName, boolean createIfNull) {
    EntityInfo info = entityInfoMap.get(entityName);
    if (info == null) {
        throw new IllegalStateException("EntityInfo has not yet been set.");
    }

    if (dataMap.get(info) == null) {
        if (createIfNull) {
            dataMap.put(info, new HashMap<String, Data>());
        } else {
            return null;
        }
    }
    return dataMap.get(info);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:25,代码来源:FakeMetadata.java


示例7: testEntityMetadata

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Test
public void testEntityMetadata() {
    String entityName = "fake";
    String version1 = "1.0.0";
    String version2 = "2.0.0";

    FakeMetadata metadata = new FakeMetadata();

    EntityInfo entityInfo = new EntityInfo(entityName);
    metadata.setEntityInfo(entityInfo);

    assertEquals(entityInfo, metadata.getEntityInfo(entityName));

    EntityMetadata entityMetadata = new EntityMetadata("fake EntityMetadata");
    metadata.setEntityMetadata(entityName, version1, entityMetadata);

    assertEquals(entityMetadata, metadata.getEntityMetadata(entityName, version1));
    assertNull(metadata.getEntityMetadata(entityName, version2));
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:20,代码来源:FakeMetadataTest.java


示例8: testDependencies

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Test
public void testDependencies() {
    String entityName = "fake";
    String version1 = "1.0.0";
    String version2 = "2.0.0";

    FakeMetadata metadata = new FakeMetadata();

    EntityInfo entityInfo = new EntityInfo(entityName);
    metadata.setEntityInfo(entityInfo);

    assertEquals(entityInfo, metadata.getEntityInfo(entityName));

    Response dependencies = new Response(JsonNodeFactory.instance, OperationStatus.ERROR);
    metadata.setDependencies(entityName, version1, dependencies);

    assertEquals(dependencies, metadata.getDependencies(entityName, version1));
    assertNull(metadata.getDependencies(entityName, version2));
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:20,代码来源:FakeMetadataTest.java


示例9: testAccess

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Test
public void testAccess() {
    String entityName = "fake";
    String version1 = "1.0.0";
    String version2 = "2.0.0";

    FakeMetadata metadata = new FakeMetadata();

    EntityInfo entityInfo = new EntityInfo(entityName);
    metadata.setEntityInfo(entityInfo);

    assertEquals(entityInfo, metadata.getEntityInfo(entityName));

    Response access = new Response(JsonNodeFactory.instance, OperationStatus.ERROR);
    metadata.setAccess(entityName, version1, access);

    assertEquals(access, metadata.getAccess(entityName, version1));
    assertNull(metadata.getAccess(entityName, version2));
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:20,代码来源:FakeMetadataTest.java


示例10: main

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
public static void main(String[] args) throws IOException, ClassNotFoundException {
  Cli cli = new Cli(args);

  if (cli.helpRequested()) {
    cli.printHelpTo(System.out);
    System.exit(1);
  }

  ClassLoader classLoader = getClassLoaderToSearch(cli.jarPath());
  Path outputDirectory = cli.outputDirectory()
      .map(Paths::get)
      .orElse(Paths.get("./"));

  if (cli.entityClasses().isEmpty()) {
    println("No entity classes provided.");
    println("");
    cli.printHelpTo(System.out);
    System.exit(1);
  }

  for (String className : cli.entityClasses()) {
    Class classForName = classLoader.loadClass(className);
    EntityInfo info = generator.generateInfo(classForName);

    Path metadataJsonPath = outputDirectory.resolve(info.getName() + ".json")
        .toAbsolutePath();
    EntityMetadata metadata = generateMetadata(classForName, metadataJsonPath);

    JsonNode metadataJson = parser.convert(metadata);

    mapper.writerWithDefaultPrettyPrinter()
        .writeValue(Files.newBufferedWriter(metadataJsonPath, UTF_8), metadataJson);

    println("Wrote " + metadataJsonPath);
  }
}
 
开发者ID:lightblue-platform,项目名称:lightblue-java-generator,代码行数:37,代码来源:Main.java


示例11: updateMetadata

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
public EntityMetadata updateMetadata(EntityMetadata original, Class<?> entity) {
  BeanMirror beanMirror = reflector.reflect(entity);

  EntityInfo info = generateInfo(beanMirror, Optional.of(original.getEntityInfo()));
  EntitySchema schema = generateSchema(beanMirror, Optional.of(original.getEntitySchema()));

  return new EntityMetadata(info, schema);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-java-generator,代码行数:9,代码来源:MetadataGenerator.java


示例12: updateInfo

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
public EntityInfo updateInfo(EntityInfo info, Class<?> entity) {
  BeanMirror beanMirror = reflector.reflect(entity);

  if (!Objects.equals(info.getName(), beanMirror.getEntityName())) {
    throw new IllegalArgumentException("Entity name mismatch between provided entity info and "
        + "generated entity info.");
  }

  return generateInfo(beanMirror, Optional.of(info));
}
 
开发者ID:lightblue-platform,项目名称:lightblue-java-generator,代码行数:11,代码来源:MetadataGenerator.java


示例13: generateInfo

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
private EntityInfo generateInfo(BeanMirror beanMirror, Optional<EntityInfo> maybeOriginal) {
  EntityInfo info = new EntityInfo(beanMirror.getEntityName());
  Enums enums = info.getEnums();

  for (FieldMirror fieldMirror : beanMirror.getFields()) {
    if (fieldMirror.javaType().isEnum()) {
      EnumMirror enumMirror = fieldMirror.enumMirror().get();

      Enum generatedEnum = new Enum(enumMirror.name());
      Set<EnumValue> enumValues = new HashSet<>();

      for (EnumValueMirror enumValueMirror : enumMirror.values()) {
        String enumName = enumValueMirror.name();
        String enumDescription = enumValueMirror.description().orElse(null);
        enumValues.add(new EnumValue(enumName, enumDescription));
      }

      generatedEnum.setValues(enumValues);
      enums.addEnum(generatedEnum);
    }
  }

  maybeOriginal.ifPresent(original -> {
    info.getIndexes().setIndexes(original.getIndexes().getIndexes());
    info.getHooks().setHooks(original.getHooks().getHooks());
    info.setDataStore(original.getDataStore());
    info.setDefaultVersion(original.getDefaultVersion());
  });

  return info;
}
 
开发者ID:lightblue-platform,项目名称:lightblue-java-generator,代码行数:32,代码来源:MetadataGenerator.java


示例14: run

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Override
public String run() {
    try {
        EntityInfo entityInfo = getMetadata().getEntityInfo(entity);
        CRUDController crudController = RestConfiguration.getFactory().getFactory().getCRUDController(entityInfo.getDataStore().getBackend());
        if (crudController instanceof MongoCRUDController) {
            MongoCRUDController mcc = (MongoCRUDController) crudController;
            mcc.reindex(entityInfo, getMetadata(), version, query);
            return String.format("Starting reindex of %s", entity);
        }
        throw new UnsupportedOperationException("This command is only available on MongoDB backed instances");
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
}
 
开发者ID:lightblue-platform,项目名称:lightblue-rest,代码行数:16,代码来源:ReIndexCommand.java


示例15: reindex

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
public void reindex(EntityInfo ei, Metadata md, String version, QueryExpression query) throws IOException {
    Map<String, String> fieldMap = DocTranslator.getCaseInsensitiveIndexes(ei.getIndexes().getIndexes()).collect(Collectors.toMap(i -> i.getField().toString(), i -> DocTranslator
            .getHiddenForField(i.getField()).toString()));
    List<Path> fields = DocTranslator.getCaseInsensitiveIndexes(ei.getIndexes().getIndexes()).map(i -> i.getField()).collect(Collectors.toList());
    if (!fieldMap.keySet().isEmpty()) {
        populateHiddenFields(ei, md, version, fields, query);
    }
    // This is not a common command, I think INFO level is safe and appropriate
    LOGGER.info("Starting reindex of {} for fields:  {}", ei.getName(), fieldMap.keySet());
}
 
开发者ID:lightblue-platform,项目名称:lightblue-mongo,代码行数:11,代码来源:MongoCRUDController.java


示例16: testMissingConfiguration

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Test
public void testMissingConfiguration() throws IOException, URISyntaxException {
    String jsonString = FileUtil.readFile(getClass().getSimpleName() + "-missing-configuration.json");

    Assert.assertNotNull(jsonString);

    JsonNode node = json(jsonString);

    EntityInfo entityInfo = parser.parseEntityInfo(node);

    // simply won't have configuration on the hook
    Assert.assertFalse(entityInfo.getHooks().isEmpty());
    Assert.assertEquals(AuditHook.HOOK_NAME, entityInfo.getHooks().getHooks().get(0).getName());
    Assert.assertNull(entityInfo.getHooks().getHooks().get(0).getConfiguration());
}
 
开发者ID:lightblue-platform,项目名称:lightblue-audit-hook,代码行数:16,代码来源:AuditHookConfigurationParserTest.java


示例17: testValidJson

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Test
public void testValidJson() throws IOException, URISyntaxException {
    String jsonString = FileUtil.readFile(getClass().getSimpleName() + "-valid.json");

    Assert.assertNotNull(jsonString);

    JsonNode node = json(jsonString);

    EntityInfo entityInfo = parser.parseEntityInfo(node);

    Assert.assertNotNull(entityInfo);
    Assert.assertFalse(entityInfo.getHooks().isEmpty());
    Assert.assertEquals(AuditHook.HOOK_NAME, entityInfo.getHooks().getHooks().get(0).getName());
}
 
开发者ID:lightblue-platform,项目名称:lightblue-audit-hook,代码行数:15,代码来源:AuditHookConfigurationParserTest.java


示例18: mockEnum

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
protected ConstraintValidator mockEnum(ConstraintValidator validator, Enum e) {
    EntityInfo entityInfo = new EntityInfo("fake name");
    if (e != null) {
        entityInfo.getEnums().addEnum(e);
    }

    EntityMetadata entityMetadata = mock(EntityMetadata.class);
    when(entityMetadata.getEntityInfo()).thenReturn(entityInfo);

    when(validator.getEntityMetadata()).thenReturn(entityMetadata);

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


示例19: initializeMetadata

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
private synchronized void initializeMetadata(Factory factory) throws IOException, ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException {
    if (metadata == null) {
        LOGGER.debug("Initializing metadata");

        JsonNode root = metadataNode;
        if (root == null) {
            try (InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream(MetadataConfiguration.FILENAME)) {
                if (null == is) {
                    throw new FileNotFoundException(MetadataConfiguration.FILENAME);
                }
                root = JsonUtils.json(is, true);
            }
        }
        LOGGER.debug("Config root:{}", root);

        JsonNode cfgClass = root.get("type");
        if (cfgClass == null) {
            throw new IllegalStateException(MetadataConstants.ERR_CONFIG_NOT_FOUND + " - type");
        }

        MetadataConfiguration cfg = (MetadataConfiguration) Thread.currentThread().getContextClassLoader().loadClass(
                cfgClass.asText()).newInstance();
        injectDependencies(cfg);

        cfg.initializeFromJson(root);

        // Set validation flag for all metadata requests
        getJsonTranslator().setValidation(EntityMetadata.class, cfg.isValidateRequests());
        getJsonTranslator().setValidation(EntitySchema.class, cfg.isValidateRequests());
        getJsonTranslator().setValidation(EntityInfo.class, cfg.isValidateRequests());

        metadata = cfg.createMetadata(datasources, getJSONParser(), this);

        factory.setHookResolver(new SimpleHookResolver(cfg.getHookConfigurationParsers(), this));
    }
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:37,代码来源:LightblueFactory.java


示例20: updateEntityInfo

import com.redhat.lightblue.metadata.EntityInfo; //导入依赖的package包/类
@Override
public void updateEntityInfo(EntityInfo info) {
    if (entityInfoMap.get(info.getName()) == null) {
        throw new IllegalStateException("No EntityInfo currently exists with name: " + info.getName());
    }

    entityInfoMap.put(info.getName(), info);
}
 
开发者ID:lightblue-platform,项目名称:lightblue-core,代码行数:9,代码来源:FakeMetadata.java



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

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

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

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

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

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