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


Java Injector类代码示例

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


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

示例1: initialize

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
/**
 * Invoked by Guice at Injector-creation time to prepare providers for each
 * element in this set. At this time the set's size is known, but its
 * contents are only evaluated when get() is invoked.
 */
@Inject
public void initialize(Injector injector) {
    providers = new ArrayList<>();
    Set<Dependency<?>> dependencies = new HashSet<>();
    for (Binding<?> entry : injector.findBindingsByType(elementType)) {
        if (keyMatches(entry.getKey())) {
            @SuppressWarnings("unchecked") // protected by findBindingsByType()
                    Binding<T> binding = (Binding<T>) entry;
            providers.add(binding.getProvider());
            dependencies.add(Dependency.get(binding.getKey()));
        }
    }

    this.dependencies = unmodifiableSet(dependencies);
    this.binder = null;
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:22,代码来源:Multibinder.java

示例2: initialize

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
/**
 * At injector-creation time, we initialize the invocation handler. At this time we make sure
 * all factory methods will be able to build the target types.
 */
@Inject
public void initialize(Injector injector) {
    if (this.injector != null) {
        throw new ConfigurationException(Collections.singletonList(new Message(FactoryProvider2.class,
            "Factories.create() factories may only be used in one Injector!")));
    }

    this.injector = injector;

    for (Method method : returnTypesByMethod.keySet()) {
        Object[] args = new Object[method.getParameterTypes().length];
        Arrays.fill(args, "dummy object for validating Factories");
        getBindingFromNewInjector(method, args); // throws if the binding isn't properly configured
    }
}
 
开发者ID:baidu,项目名称:Elasticsearch,代码行数:20,代码来源:FactoryProvider2.java

示例3: initialize

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
/**
 * Invoked by Guice at Injector-creation time to prepare providers for each
 * element in this set. At this time the set's size is known, but its
 * contents are only evaluated when get() is invoked.
 */
@Inject
public void initialize(Injector injector) {
    providers = new ArrayList<>();
    List<Dependency<?>> dependencies = new ArrayList<>();
    for (Binding<?> entry : injector.findBindingsByType(elementType)) {

        if (keyMatches(entry.getKey())) {
            @SuppressWarnings("unchecked") // protected by findBindingsByType()
                    Binding<T> binding = (Binding<T>) entry;
            providers.add(binding.getProvider());
            dependencies.add(Dependency.get(binding.getKey()));
        }
    }

    this.dependencies = ImmutableSet.copyOf(dependencies);
    this.binder = null;
}
 
开发者ID:baidu,项目名称:Elasticsearch,代码行数:23,代码来源:Multibinder.java

示例4: createAnalysisService

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
private AnalysisService createAnalysisService() {
    Settings settings = Settings.settingsBuilder()
            .put(IndexMetaData.SETTING_VERSION_CREATED, Version.CURRENT)
            .put("path.home", System.getProperty("path.home"))
            .loadFromStream("icu_folding.json", getClass().getResourceAsStream("/org/xbib/elasticsearch/index/analysis/icu/icu_folding.json")).build();
    Index index = new Index("test");
    Injector parentInjector = new ModulesBuilder().add(new SettingsModule(settings),
            new EnvironmentModule(new Environment(settings)))
            .createInjector();
    AnalysisModule analysisModule = new AnalysisModule(settings, parentInjector.getInstance(IndicesAnalysisService.class));
    new IcuPlugin(settings).onModule(analysisModule);
    Injector injector = new ModulesBuilder().add(
            new IndexSettingsModule(index, settings),
            new IndexNameModule(index),
            analysisModule)
            .createChildInjector(parentInjector);

    return injector.getInstance(AnalysisService.class);
}
 
开发者ID:jprante,项目名称:elasticsearch-icu,代码行数:20,代码来源:IcuCharFilterTests.java

示例5: createAnalysisService

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
private AnalysisService createAnalysisService() {
    Settings settings = Settings.settingsBuilder()
            .put(IndexMetaData.SETTING_VERSION_CREATED, Version.CURRENT)
            .put("path.home", System.getProperty("path.home"))
            .loadFromStream("icu_tokenizer.json", getClass().getResourceAsStream("/org/xbib/elasticsearch/index/analysis/icu/icu_tokenizer.json")).build();
    Index index = new Index("test");
    Injector parentInjector = new ModulesBuilder().add(new SettingsModule(settings),
            new EnvironmentModule(new Environment(settings)))
            .createInjector();
    AnalysisModule analysisModule = new AnalysisModule(settings, parentInjector.getInstance(IndicesAnalysisService.class));
    new IcuPlugin(settings).onModule(analysisModule);
    Injector injector = new ModulesBuilder().add(
            new IndexSettingsModule(index, settings),
            new IndexNameModule(index),
            analysisModule)
            .createChildInjector(parentInjector);

    return injector.getInstance(AnalysisService.class);
}
 
开发者ID:jprante,项目名称:elasticsearch-icu,代码行数:20,代码来源:IcuTokenizerTests.java

示例6: testDefaultsIcuAnalysis

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
@Test
public void testDefaultsIcuAnalysis() {
    Index index = new Index("test");
    Settings settings = settingsBuilder()
        .put("path.home", createTempDir())
        .put(IndexMetaData.SETTING_VERSION_CREATED, Version.CURRENT)
        .build();
    Injector parentInjector = new ModulesBuilder().add(new SettingsModule(EMPTY_SETTINGS), new EnvironmentModule(new Environment(settings))).createInjector();
    Injector injector = new ModulesBuilder().add(
        new IndexSettingsModule(index, settings),
        new IndexNameModule(index),
        new AnalysisModule(EMPTY_SETTINGS, parentInjector.getInstance(IndicesAnalysisService.class)).addProcessor(new HanLpAnalysisBinderProcessor()))
                                            .createChildInjector(parentInjector);

    AnalysisService analysisService = injector.getInstance(AnalysisService.class);

    TokenizerFactory tokenizerFactory = analysisService.tokenizer("smartcn_tokenizer");
    MatcherAssert.assertThat(tokenizerFactory, instanceOf(HanLpTokenizerTokenizerFactory.class));
}
 
开发者ID:donbeave,项目名称:elasticsearch-analysis-hanlp,代码行数:20,代码来源:HanLpAnalysisTests.java

示例7: provideWith

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
public AnalysisService provideWith(Index index, Settings settings) {
    Settings indexSettings = settingsBuilder().put(settings)
            .put(IndexMetaData.SETTING_VERSION_CREATED, Version.CURRENT)
            .build();
    Injector parentInjector = new ModulesBuilder().add(
            new SettingsModule(settings),
            new EnvironmentModule(new Environment(settings))).createInjector();
    Injector injector = new ModulesBuilder().add(
            new IndexSettingsModule(index, indexSettings),
            new IndexNameModule(index),
            new AnalysisModule(settings, parentInjector.getInstance(IndicesAnalysisService.class))
                    .addProcessor(new UkrainianLemmatizerBinderProcessor()))
            .createChildInjector(parentInjector);

    return injector.getInstance(AnalysisService.class);
}
 
开发者ID:mrgambal,项目名称:elasticsearch-ukrainian-lemmatizer,代码行数:17,代码来源:TestAnalysisServiceProvider.java

示例8: startServices

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
private void startServices(Injector injector, Plugin plugin, Settings settings, ClassLoader classLoader, URL url)
        throws IOException {
    for (Class<? extends LifecycleComponent> service : plugin.nodeServices()) {
        logger.info("found service {} {} to start", service, service.getClass());
        LifecycleComponent t = injector.getInstance(service);
        if (t instanceof DeployableComponent) {
            DeployableComponent component = (DeployableComponent) t;
            logger.info("before init component {}", component);
            // add custom settings from elasticsearch.yml
            URL settingsUrl = classLoader.getResource("elasticsearch.yml");
            if (settingsUrl != null) {
                Settings customSettings = settingsBuilder()
                        .put(settings)
                        .loadFromStream("elasticsearch.yml", settingsUrl.openStream())
                        .build();
                logger.info("custom settings = {}", customSettings.getAsMap());
                component.init(customSettings, classLoader, url);
                logger.info("after component {}", component);
            }
        }
        logger.info("starting service {}", service);
        t.start();
        logger.info("service {} started", service);
    }
}
 
开发者ID:jprante,项目名称:elasticsearch-plugin-deploy,代码行数:26,代码来源:DeployService.java

示例9: getAnalysisService

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
private AnalysisService getAnalysisService() {
    Index index = new Index("test");

    Settings settings = ImmutableSettings.settingsBuilder().put(IndexMetaData.SETTING_VERSION_CREATED, Version.CURRENT).build();
    Injector parentInjector = new ModulesBuilder().add(new SettingsModule(settings),
            new EnvironmentModule(new Environment(settings)), new IndicesAnalysisModule()).createInjector();
    Injector injector = new ModulesBuilder().add(
            new IndexSettingsModule(index, settings),
            new IndexNameModule(index),
            new AnalysisModule(settings, parentInjector.getInstance(IndicesAnalysisService.class))
                    .addProcessor(new RosetteAnalysisBinderProcessor()))
            .createChildInjector(parentInjector);

    return injector.getInstance(AnalysisService.class);

}
 
开发者ID:basis-technology-corp,项目名称:elasticsearch-analysis-rosette,代码行数:17,代码来源:SimpleRosetteAnalysisTests.java

示例10: createAnalysisService

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
private AnalysisService createAnalysisService() {
    Settings settings = ImmutableSettings.settingsBuilder()
            .put(IndexMetaData.SETTING_VERSION_CREATED, Version.CURRENT)
            .loadFromClasspath("org/xbib/elasticsearch/index/analysis/decompound/decompound_analysis.json").build();

    Index index = new Index("test");

    Injector parentInjector = new ModulesBuilder().add(new SettingsModule(settings),
            new EnvironmentModule(new Environment(settings)),
            new IndicesAnalysisModule())
            .createInjector();

    AnalysisModule analysisModule = new AnalysisModule(settings, parentInjector.getInstance(IndicesAnalysisService.class));
    new AnalysisGermanPlugin().onModule(analysisModule);

    Injector injector = new ModulesBuilder().add(
            new IndexSettingsModule(index, settings),
            new IndexNameModule(index),
            analysisModule)
            .createChildInjector(parentInjector);

    return injector.getInstance(AnalysisService.class);
}
 
开发者ID:jprante,项目名称:elasticsearch-analysis-german,代码行数:24,代码来源:DecompoundTokenFilterTests.java

示例11: createAnalysisService

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
private AnalysisService createAnalysisService() {
    Settings settings = ImmutableSettings.settingsBuilder()
            .put(IndexMetaData.SETTING_VERSION_CREATED, Version.CURRENT)
            .loadFromClasspath("org/xbib/elasticsearch/index/analysis/german/test-settings.json").build();

    Index index = new Index("test");

    Injector parentInjector = new ModulesBuilder().add(new SettingsModule(settings),
            new EnvironmentModule(new Environment(settings)),
            new IndicesAnalysisModule())
            .createInjector();

    AnalysisModule analysisModule = new AnalysisModule(settings, parentInjector.getInstance(IndicesAnalysisService.class));
    new AnalysisGermanPlugin().onModule(analysisModule);

    Injector injector = new ModulesBuilder().add(
            new IndexSettingsModule(index, settings),
            new IndexNameModule(index),
            analysisModule)
            .createChildInjector(parentInjector);

    return injector.getInstance(AnalysisService.class);
}
 
开发者ID:jprante,项目名称:elasticsearch-analysis-german,代码行数:24,代码来源:SettingsTests.java

示例12: createAnalysisService

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
private AnalysisService createAnalysisService() {
    Settings settings = ImmutableSettings.settingsBuilder()
            .put(IndexMetaData.SETTING_VERSION_CREATED, Version.CURRENT)
            .loadFromClasspath("org/xbib/elasticsearch/index/analysis/german/german_normalization_analysis.json").build();

    Index index = new Index("test");

    Injector parentInjector = new ModulesBuilder().add(new SettingsModule(settings),
            new EnvironmentModule(new Environment(settings)),
            new IndicesAnalysisModule())
            .createInjector();

    AnalysisModule analysisModule = new AnalysisModule(settings, parentInjector.getInstance(IndicesAnalysisService.class));
    new AnalysisGermanPlugin().onModule(analysisModule);

    Injector injector = new ModulesBuilder().add(
            new IndexSettingsModule(index, settings),
            new IndexNameModule(index),
            analysisModule)
            .createChildInjector(parentInjector);

    return injector.getInstance(AnalysisService.class);
}
 
开发者ID:jprante,项目名称:elasticsearch-analysis-german,代码行数:24,代码来源:GermanNormalizationTests.java

示例13: createAnalysisService

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
private AnalysisService createAnalysisService() {
    Settings settings = ImmutableSettings.settingsBuilder()
            .put(IndexMetaData.SETTING_VERSION_CREATED, Version.CURRENT)
            .loadFromClasspath("org/xbib/elasticsearch/index/analysis/icu/icu_tokenizer.json").build();
    Index index = new Index("test");

    Injector parentInjector = new ModulesBuilder().add(new SettingsModule(settings),
            new EnvironmentModule(new Environment(settings)),
            new IndicesAnalysisModule())
            .createInjector();

    AnalysisModule analysisModule = new AnalysisModule(settings, parentInjector.getInstance(IndicesAnalysisService.class));
    new AnalysisGermanPlugin().onModule(analysisModule);

    Injector injector = new ModulesBuilder().add(
            new IndexSettingsModule(index, settings),
            new IndexNameModule(index),
            analysisModule)
            .createChildInjector(parentInjector);

    return injector.getInstance(AnalysisService.class);
}
 
开发者ID:jprante,项目名称:elasticsearch-analysis-german,代码行数:23,代码来源:IcuTokenizerTests.java

示例14: createAnalysisService

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
private AnalysisService createAnalysisService() {
    Settings settings = ImmutableSettings.settingsBuilder()
            .put(IndexMetaData.SETTING_VERSION_CREATED, org.elasticsearch.Version.CURRENT)
            .build();

    Index index = new Index("test");

    Injector parentInjector = new ModulesBuilder().add(new SettingsModule(settings),
            new EnvironmentModule(new Environment(settings)),
            new IndicesAnalysisModule())
            .createInjector();

    AnalysisModule analysisModule = new AnalysisModule(settings, parentInjector.getInstance(IndicesAnalysisService.class));
    new AnalysisGermanPlugin().onModule(analysisModule);

    Injector injector = new ModulesBuilder().add(
            new IndexSettingsModule(index, settings),
            new IndexNameModule(index),
            analysisModule)
            .createChildInjector(parentInjector);

    return injector.getInstance(AnalysisService.class);
}
 
开发者ID:jprante,项目名称:elasticsearch-analysis-german,代码行数:24,代码来源:BaseformTokenFilterTests.java

示例15: createAnalysisService

import org.elasticsearch.common.inject.Injector; //导入依赖的package包/类
private AnalysisService createAnalysisService() {
    Settings settings = ImmutableSettings.settingsBuilder()
            .put(IndexMetaData.SETTING_VERSION_CREATED, Version.CURRENT)
            .loadFromClasspath("org/xbib/elasticsearch/index/analysis/hyphen/hyphen_tokenizer.json").build();
    Index index = new Index("test");
    Injector parentInjector = new ModulesBuilder().add(new SettingsModule(settings),
            new EnvironmentModule(new Environment(settings)),
            new IndicesAnalysisModule())
            .createInjector();
    AnalysisModule analysisModule = new AnalysisModule(settings, parentInjector.getInstance(IndicesAnalysisService.class));
    new AnalysisGermanPlugin().onModule(analysisModule);
    Injector injector = new ModulesBuilder().add(
            new IndexSettingsModule(index, settings),
            new IndexNameModule(index),
            analysisModule)
            .createChildInjector(parentInjector);
    return injector.getInstance(AnalysisService.class);
}
 
开发者ID:jprante,项目名称:elasticsearch-analysis-german,代码行数:19,代码来源:HyphenTokenizerTests.java


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