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


Java InitState类代码示例

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


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

示例1: initialize

import io.nuun.kernel.api.plugin.InitState; //导入依赖的package包/类
@SuppressWarnings({"rawtypes", "unchecked"})
@Override
public InitState initialize(InitContext initContext) {
    Map<Specification, Collection<Class<?>>> classesBySpec = initContext.scannedTypesBySpecification();

    streamClasses(classesBySpec.get(BusinessSpecifications.EXPLICIT_ASSEMBLER), Assembler.class).forEach(
            assemblerClasses::add);
    LOGGER.debug("Assemblers => {}", assemblerClasses);

    streamClasses(classesBySpec.get(BusinessSpecifications.DEFAULT_ASSEMBLER), Assembler.class).forEach(
            defaultAssemblerClasses::add);
    LOGGER.debug("Default assemblers => {}", defaultAssemblerClasses);

    streamClasses(classesBySpec.get(BusinessSpecifications.DTO_OF), Object.class).forEach(dtoOfClasses::add);
    LOGGER.debug("DTO classes mappable with default assemblers => {}", dtoOfClasses);

    streamClasses(classesBySpec.get(BusinessSpecifications.DTO_INFO_RESOLVER), DtoInfoResolver.class).forEach(
            dtoInfoResolverClasses::add);
    sortByPriority(dtoInfoResolverClasses);
    LOGGER.debug("DTO info resolvers => {}", dtoInfoResolverClasses);

    // Add bindings for explicit assemblers
    bindings.putAll(associateInterfaceToImplementations(Assembler.class, assemblerClasses, false));
    overridingBindings.putAll(associateInterfaceToImplementations(Assembler.class, assemblerClasses, true));

    // Then add bindings for default assemblers
    bindingStrategies.addAll(new DefaultAssemblerCollector(getApplication(), bindings, defaultAssemblerClasses)
            .collect(dtoOfClasses)
    );

    return InitState.INITIALIZED;
}
 
开发者ID:seedstack,项目名称:business,代码行数:33,代码来源:AssemblerPlugin.java

示例2: initialize

import io.nuun.kernel.api.plugin.InitState; //导入依赖的package包/类
@Override
public InitState initialize(InitContext initContext) {
    Map<Specification, Collection<Class<?>>> classesBySpec = initContext.scannedTypesBySpecification();

    streamClasses(classesBySpec.get(BusinessSpecifications.SPECIFICATION_TRANSLATOR),
            SpecificationTranslator.class).forEach(specificationTranslatorClasses::add);
    LOGGER.debug("Specification translator classes => {}", specificationTranslatorClasses);

    streamClasses(classesBySpec.get(BusinessSpecifications.SPECIFICATION_CONVERTER),
            SpecificationConverter.class).forEach(specificationConverterClasses::add);
    LOGGER.debug("Specification converter classes => {}", specificationConverterClasses);

    return InitState.INITIALIZED;
}
 
开发者ID:seedstack,项目名称:business,代码行数:15,代码来源:SpecificationPlugin.java

示例3: initialize

import io.nuun.kernel.api.plugin.InitState; //导入依赖的package包/类
@SuppressWarnings({"rawtypes", "unchecked"})
@Override
public InitState initialize(InitContext initContext) {
    Map<Specification, Collection<Class<?>>> classesBySpec = initContext.scannedTypesBySpecification();

    streamClasses(classesBySpec.get(BusinessSpecifications.DATA_IMPORTER), DataImporter.class)
            .filter(importerClass -> !DefaultDataImporter.class.isAssignableFrom(importerClass))
            .forEach(importerClasses::add);
    LOGGER.debug("Data importers => {}", importerClasses);

    streamClasses(classesBySpec.get(BusinessSpecifications.DATA_EXPORTER), DataExporter.class)
            .filter(exporterClass -> !DefaultDataExporter.class.isAssignableFrom(exporterClass))
            .forEach(exporterClasses::add);
    LOGGER.debug("Data exporters => {}", exporterClasses);

    streamClasses(classesBySpec.get(BusinessSpecifications.DATA_SET), Object.class).forEach(
            dataClasses::add);
    LOGGER.debug("DTO classes with default importer/exporter => {}", dataClasses);

    // Add bindings for explicit data importers/exporters
    bindings.putAll(associateInterfaceToImplementations(DataImporter.class, importerClasses, false));
    overridingBindings.putAll(associateInterfaceToImplementations(DataImporter.class, importerClasses, true));
    bindings.putAll(associateInterfaceToImplementations(DataExporter.class, exporterClasses, false));
    overridingBindings.putAll(associateInterfaceToImplementations(DataExporter.class, exporterClasses, true));

    Set<Class<?>> classesWithExplicitImporter = importerClasses.stream()
            .map(importerClass -> (Class<?>) BusinessUtils.resolveGenerics(DataImporter.class, importerClass)[0])
            .collect(toSet());
    Set<Class<?>> classesWithExplicitExporter = exporterClasses.stream()
            .map(exporterClass -> (Class<?>) BusinessUtils.resolveGenerics(DataExporter.class, exporterClass)[0])
            .collect(toSet());

    // Then add bindings for default data importers/exporters
    bindingStrategies.addAll(new DefaultDataCollector(classesWithExplicitImporter, classesWithExplicitExporter)
            .collect(dataClasses));

    buildImporterDefs(classesWithExplicitImporter);
    buildExporterDefs(classesWithExplicitExporter);

    return InitState.INITIALIZED;
}
 
开发者ID:seedstack,项目名称:business,代码行数:42,代码来源:DataPlugin.java

示例4: initialize

import io.nuun.kernel.api.plugin.InitState; //导入依赖的package包/类
@Override
public InitState initialize(InitContext initContext) {
    return InitState.INITIALIZED;
}
 
开发者ID:seedstack,项目名称:business,代码行数:5,代码来源:PaginatorPlugin.java


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