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

Java Injector类代码示例

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

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



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

示例1: main

import com.google.inject.Injector; //导入依赖的package包/类
/**
 * Start the micro service.
 */
public static void main(final String[] args) {
  try {
    final Injector injector =
        Guice.createInjector(new ElasticSearchModule());
    //start http server in daemon mode
    injector
        .getInstance(HttpServer.class)
        .start();
    //start grpc server
    injector
        .getInstance(GrpcServer.class)
        .start()
        // blocks until VM shutdown begins
        .awaitTermination();

  } catch (Exception ex) {
    log.error("failed to start ip-elasticsearch service ", ex);
    throw new IllegalStateException("failed to start elasticsearch service ", ex);
  }
}
 
开发者ID:email2liyang,项目名称:grpc-mate,代码行数:24,代码来源:ServiceLauncher.java


示例2: setUp

import com.google.inject.Injector; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
  String ip = esContainer.getContainerIpAddress();
  Integer transportPort = esContainer.getMappedPort(9300);
  MapConfiguration memoryParams = new MapConfiguration(new HashMap<>());
  memoryParams.setProperty(CONFIG_ES_CLUSTER_HOST, ip);
  memoryParams.setProperty(CONFIG_ES_CLUSTER_PORT, transportPort);
  memoryParams.setProperty(CONFIG_ES_CLUSTER_NAME, "elasticsearch");
  Injector injector = Guice.createInjector(
      Modules.override(new ElasticSearchModule()).with(
          binder -> {
            binder.bind(Configuration.class).toInstance(memoryParams);
          }
      )
  );
  transportClientProvider = injector.getInstance(TransportClientProvider.class);
}
 
开发者ID:email2liyang,项目名称:grpc-mate,代码行数:18,代码来源:TransportClientProviderTest.java


示例3: testLazy

import com.google.inject.Injector; //导入依赖的package包/类
@Test
public void testLazy() {
  final Injector injector = Guice.createInjector(new AbstractModule() {
    @Override
    protected void configure() {
      this.bind(Thing.class).to(ThingA.class);
      this.bindLazy(Thing.class).annotatedWith(Names.named("b")).to(ThingB.class);
      this.bindLazy(Thing.class).annotatedWith(Names.named("c")).to(ThingC.class);
    }
  });
  final Things things = injector.getInstance(Things.class);
  assertNotSame(things.ap.get(), things.ap.get());
  assertSame(things.al.get(), things.al.get());
  assertSame(things.bl.get(), things.bl.get());
  assertSame(things.cl.get(), things.cl.get());
  assertSame(things.dl.get(), things.dl.get());
}
 
开发者ID:KyoriPowered,项目名称:violet,代码行数:18,代码来源:LazyTest.java


示例4: create

import com.google.inject.Injector; //导入依赖的package包/类
@Override
public Connector create(String connectorId, Map<String, String> config, ConnectorContext context)
{
    requireNonNull(config, "config is null");

    try {
        Bootstrap app = new Bootstrap(
                new JsonModule(),
                new HDFSModule(connectorId, context.getTypeManager())
        );

        Injector injector = app
                .strictConfig()
                .doNotInitializeLogging()
                .setRequiredConfigurationProperties(config)
                .initialize();

        return injector.getInstance(HDFSConnector.class);
    }
    catch (Exception e) {
        e.printStackTrace();
    }
    return null;
}
 
开发者ID:dbiir,项目名称:paraflow,代码行数:25,代码来源:HDFSConnectorFactory.java


示例5: load

import com.google.inject.Injector; //导入依赖的package包/类
/** {@inheritDoc} */
@Override
public Resource load(final ResourceSet resourceSet, final URI uri, final InputStream input) throws IOException {
	final Injector injector = IXtInjectorProvider.INSTANCE.getInjector(context.get(XpectJavaModel.class), uri);
	final Resource resource = injector.getInstance(IResourceFactory.class).createResource(uri);
	final Resource existingResousce = from(resourceSet.getResources())
			.firstMatch(r -> r.getURI().equals(resource.getURI())).orNull();
	if (null != existingResousce) {
		// remove the existing one
		resourceSet.getResources().remove(existingResousce);
	}
	resourceSet.getResources().add(resource);
	try {
		resource.load(input, null);
	} finally {
		if (input != null)
			input.close();
	}
	return resource;
}
 
开发者ID:eclipse,项目名称:n4js,代码行数:21,代码来源:DuplicateResourceAwareFileSetupContext.java


示例6: createInjectorAndDoEMFRegistration

import com.google.inject.Injector; //导入依赖的package包/类
@Override
public Injector createInjectorAndDoEMFRegistration() {
	// register default ePackages
	if (!Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().containsKey("ecore"))
		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put(
			"ecore", new EcoreResourceFactoryImpl());
	if (!Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().containsKey("xmi"))
		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put(
			"xmi", new XMIResourceFactoryImpl());
	if (!Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().containsKey("xtextbin"))
		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put(
			"xtextbin", new BinaryGrammarResourceFactoryImpl());
	if (!EPackage.Registry.INSTANCE.containsKey(XtextPackage.eNS_URI))
		EPackage.Registry.INSTANCE.put(XtextPackage.eNS_URI, XtextPackage.eINSTANCE);

	Injector injector = createInjector();
	register(injector);
	return injector;
}
 
开发者ID:eclipse,项目名称:n4js,代码行数:20,代码来源:UnicodeStandaloneSetupGenerated.java


示例7: testInstances

import com.google.inject.Injector; //导入依赖的package包/类
@Test public void testInstances() throws Exception {
  Injector injector = WebAppTests.createMockInjector(this);
  HttpServletRequest req = injector.getInstance(HttpServletRequest.class);
  HttpServletResponse res = injector.getInstance(HttpServletResponse.class);
  String val = req.getParameter("foo");
  PrintWriter out = res.getWriter();
  out.println("Hello world!");
  logInstances(req, res, out);

  assertSame(req, injector.getInstance(HttpServletRequest.class));
  assertSame(res, injector.getInstance(HttpServletResponse.class));
  assertSame(this, injector.getInstance(TestWebAppTests.class));

  verify(req).getParameter("foo");
  verify(res).getWriter();
  verify(out).println("Hello world!");
}
 
开发者ID:naver,项目名称:hadoop,代码行数:18,代码来源:TestWebAppTests.java


示例8: canCreateRecordBrowserProvider

import com.google.inject.Injector; //导入依赖的package包/类
@Test
public void canCreateRecordBrowserProvider() throws IOException, URISyntaxException {
    String command = RECORD;
    Map<String, Object> opts = new HashMap<>();
    opts.put(DRIVER, chromedriverFile.getAbsolutePath());
    opts.put(APPLICATION, configurationFile.getAbsolutePath());
    opts.put(URL, localhostUrl);
    opts.put(OUTPUT, "output.json");
    opts.put(BROWSER, CHROME);
    opts.put(TIMEOUT, timeoutString);
    opts.put(SCREEN, screenString);
    Module module = new DefaultModule(command, opts);
    Injector injector = Guice.createInjector(module);
    IOURIProvider<RecordBrowser> instance = injector.getInstance(new Key<IOURIProvider<RecordBrowser>>() {});
    RecordBrowser recordBrowser = instance.get();

    // cleanup
    recordBrowser.cleanUp();
}
 
开发者ID:hristo-vrigazov,项目名称:bromium,代码行数:20,代码来源:DefaultModuleTest.java


示例9: lifeCycleStarted

import com.google.inject.Injector; //导入依赖的package包/类
@Override
public void lifeCycleStarted(final LifeCycle event) {
    LOGGER.info("Starting End Point Health server");

    final Injector injector = (Injector) servletContext.getAttribute(Injector.class.getName());

    endPointCheckSchedulerService = Optional.ofNullable(injector.getInstance(EndPointCheckSchedulerService.class));

    if (endPointCheckSchedulerService.isPresent()) {
        endPointCheckSchedulerService.get().start();
    } else {
        throw new EndPointHealthException("Unable to get EndPointCheckService instance");
    }

    LOGGER.info("End Point Health server started");
}
 
开发者ID:spypunk,项目名称:endpoint-health,代码行数:17,代码来源:EndPointHealthServerLifeCycleListener.java


示例10: testLogsView2

import com.google.inject.Injector; //导入依赖的package包/类
@Test
public void testLogsView2() throws IOException {
  LOG.info("HsLogsPage with data");
  MockAppContext ctx = new MockAppContext(0, 1, 1, 1);
  Map<String, String> params = new HashMap<String, String>();

  params.put(CONTAINER_ID, MRApp.newContainerId(1, 1, 333, 1)
      .toString());
  params.put(NM_NODENAME, 
      NodeId.newInstance(MockJobs.NM_HOST, MockJobs.NM_PORT).toString());
  params.put(ENTITY_STRING, "container_10_0001_01_000001");
  params.put(APP_OWNER, "owner");

  Injector injector =
      WebAppTests.testPage(AggregatedLogsPage.class, AppContext.class, ctx,
          params);
  PrintWriter spyPw = WebAppTests.getPrintWriter(injector);
  verify(spyPw).write(
      "Aggregation is not enabled. Try the nodemanager at "
          + MockJobs.NM_HOST + ":" + MockJobs.NM_PORT);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:22,代码来源:TestHSWebApp.java


示例11: getByIdInputTest

import com.google.inject.Injector; //导入依赖的package包/类
/**
 * Creates a token for accessing the REST API via username/password
 * <p>
 * The token returned is formatted as a JSON Web Token (JWT). The token is base64 encoded and comprised of three parts. The header, the body, and the signature. The expiration of the token is a contained within the body. The token can be used in the Authorization header in the format &#39;Authorization: Bearer &lt;token&gt;&#39;.
 *
 * @throws ApiException if the Api call fails
 */
@Test
public void getByIdInputTest() throws ApiException, IOException, URISyntaxException {
    Injector injector = Guice.createInjector(new AbstractModule() {
        protected void configure() {
            bind(InputPortsApi.class).toInstance(inputPortsApiMock);
            bind(OutputPortsApi.class).toInstance(outputPortsApiMock);
            bind(Integer.class).annotatedWith(Names.named("timeout")).toInstance(1);
            bind(Integer.class).annotatedWith(Names.named("interval")).toInstance(1);
            bind(Boolean.class).annotatedWith(Names.named("forceMode")).toInstance(false);
        }
    });
    PortService portService = injector.getInstance(PortService.class);
    PortEntity port = new PortEntity();
    port.setComponent(new PortDTO());
    port.getComponent().setId("id");
    when(inputPortsApiMock.getInputPort("id")).thenReturn(port);
    PortEntity portResult = portService.getById("id", PortDTO.TypeEnum.INPUT_PORT);
    assertEquals("id", portResult.getComponent().getId());
}
 
开发者ID:hermannpencole,项目名称:nifi-config,代码行数:27,代码来源:PortServiceTest.java


示例12: getInjector

import com.google.inject.Injector; //导入依赖的package包/类
private Injector getInjector() {
    Injector injector = null;

    try {
        injector = CollectorInjector.createInjector(new ConfigurationModule(configFile),
                new BufferModule(),
                new InputsModule(),
                new FileModule(),
                new OutputsModule(),
                new ServicesModule(),
                new MetricsModule(),
                new MemoryReporterModule(),
                new ServerApiModule(),
                new HeartbeatModule(),
                new CollectorIdModule(),
                new CollectorHostNameModule());
    } catch (Exception e) {
        LOG.error("ERROR: {}", e.getMessage());
        LOG.debug("Detailed injection creation error", e);
        doExit();
    }

    return injector;
}
 
开发者ID:DevOpsStudio,项目名称:Re-Collector,代码行数:25,代码来源:Run.java


示例13: GuiceGroupByFactory

import com.google.inject.Injector; //导入依赖的package包/类
@Inject
@SuppressWarnings("unchecked")
public GuiceGroupByFactory(Injector injector)
{
	this.injector = injector;
	Map<Key<?>, Binding<?>> bindings = injector.getAllBindings();

	for (Key<?> key : bindings.keySet())
	{
		Class<?> bindingClass = key.getTypeLiteral().getRawType();
		if (GroupBy.class.isAssignableFrom(bindingClass))
		{
			GroupByName name = (GroupByName)bindingClass.getAnnotation(GroupByName.class);
			if (name == null)
				throw new IllegalStateException("Aggregator class "+bindingClass.getName()+
						" does not have required annotation "+GroupByName.class.getName());

			groupBys.put(name.name(), (Class<GroupBy>)bindingClass);
		}
	}
}
 
开发者ID:quqiangsheng,项目名称:abhot,代码行数:22,代码来源:GuiceGroupByFactory.java


示例14: testFactory

import com.google.inject.Injector; //导入依赖的package包/类
@Test
public void testFactory() {
  final Injector injector = Guice.createInjector(new AbstractModule() {
    @Override
    protected void configure() {
      this.installFactory(FooThingFactory.class, builder -> builder.implement(FooThing.class, FooThingImpl.class));
    }
  });
  final FooThings things = injector.getInstance(FooThings.class);
  assertEquals(100, things.factory.create(100).value());
}
 
开发者ID:KyoriPowered,项目名称:violet,代码行数:12,代码来源:VBinderTest.java


示例15: getInjector

import com.google.inject.Injector; //导入依赖的package包/类
public Injector getInjector(String language) {
	synchronized (injectors) {
		Injector injector = injectors.get(language);
		if (injector == null) {
			injectors.put(language, injector = createInjector(language));
		}
		return injector;
	}
}
 
开发者ID:hristo-vrigazov,项目名称:bromium,代码行数:10,代码来源:DslActivator.java


示例16: testUsual

import com.google.inject.Injector; //导入依赖的package包/类
@Test public void testUsual() {
  Injector injector = WebAppTests.testBlock(TestBlock.class);
  PrintWriter out = injector.getInstance(PrintWriter.class);

  verify(out).print(" id=\"testid\"");
  verify(out).print("test note");
}
 
开发者ID:naver,项目名称:hadoop,代码行数:8,代码来源:TestHtmlBlock.java


示例17: createInjectorAndDoEMFRegistration

import com.google.inject.Injector; //导入依赖的package包/类
@Override
public Injector createInjectorAndDoEMFRegistration() {
	TerminalsStandaloneSetup.doSetup();

	Injector injector = createInjector();
	register(injector);
	return injector;
}
 
开发者ID:occiware,项目名称:OCCI-Studio,代码行数:9,代码来源:OCCIStandaloneSetupGenerated.java


示例18: start

import com.google.inject.Injector; //导入依赖的package包/类
@BeforeEach
@SuppressWarnings("unchecked")
public void start() {
  Injector injector =
      Guice.createInjector(
          Modules.override(new DragomanModule()).with(new RestOverridesModule()));
  injector.injectMembers(this);

  startHttpServer();
}
 
开发者ID:glytching,项目名称:dragoman,代码行数:11,代码来源:AbstractResourceTest.java


示例19: supportsParameter

import com.google.inject.Injector; //导入依赖的package包/类
@Override
public boolean supportsParameter(ParameterContext parameterContext,
    ExtensionContext extensionContext)
    throws ParameterResolutionException {
  Parameter parameter = parameterContext.getParameter();
  if (getBindingAnnotations(parameter).size() > 1) {
    return false;
  }

  Key<?> key = getKey(
      extensionContext.getTestClass(),
      parameter);
  Optional<Injector> optInjector = getInjectorForParameterResolution(extensionContext);
  return optInjector.map(injector -> injector.getExistingBinding(key)).isPresent();
}
 
开发者ID:JeffreyFalgout,项目名称:junit5-extensions,代码行数:16,代码来源:GuiceExtension.java


示例20: main

import com.google.inject.Injector; //导入依赖的package包/类
public static void main(String[] args, DistillerModuleFactory moduleFactory) throws IOException {
    Config config = Config.of(args);
    config.dump();
    DistillerModule module = moduleFactory.create(config);
    Injector injector = Guice.createInjector(module);
    LoggerLevelAccessor loggerLevelAccessor = injector.getInstance(LoggerLevelAccessor.class);
    LoggerLevels.applyLoggerLevelSpecs(config.getLoggerLevelSpecs(), loggerLevelAccessor);
    Distiller distiller = injector.getInstance(Distiller.class);
    try {
        distiller.run();
    } finally {
        distiller.close();
    }
}
 
开发者ID:vy,项目名称:hrrs,代码行数:15,代码来源:Distiller.java



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

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

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

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

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

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