Package com.google.inject

Examples of com.google.inject.Injector


public class AutoBindSingletonExample
{
    public static void main(String[] args) throws Exception
    {
        // Always get the Guice injector from Governator
        Injector injector = LifecycleInjector
            .builder()
            .usingBasePackages("autobind"// specify a package for CLASSPATH scanning so that Governator finds the AutoBindSingleton
            .createInjector();

        // NOTE: ExampleService will be created at this point - you should see "ExampleService auto-bind construction" in the console

        LifecycleManager manager = injector.getInstance(LifecycleManager.class);

        // Always start the Lifecycle Manager
        manager.start();

        // your app would execute here
View Full Code Here


            }
        };

        // Confirm that singletons are created in binding order
        final List<Integer> expected = Lists.newArrayList(1, 2, 3, 4);
        Injector injector = lifecycleInjectorBuilder.inStage(Stage.PRODUCTION).withModules(modules).withBootstrapModule(bootstrap).build().createInjector();
        Assert.assertEquals(actual, expected);
    }
View Full Code Here

        };

        // Reverse the order of modules in the list to confirm that singletons
        // are now created in reverse order
        final List<Integer> expected = Lists.newArrayList(1, 2, 3, 4);
        Injector injector = lifecycleInjectorBuilder.inStage(Stage.PRODUCTION).withModules(Lists.reverse(modules)).withBootstrapModule(bootstrap).build().createInjector();
        LOG.info(actual.toString());
        Assert.assertEquals(actual, Lists.reverse(expected));
    }
View Full Code Here

            {
                binder.bind(LIST_TYPE_LITERAL).toInstance(actual);
            }
        };

        Injector injector = lifecycleInjectorBuilder
                .inStage(Stage.PRODUCTION)
                .withModuleClasses(ModuleA2.class, ModuleA3.class)
                .withBootstrapModule(bootstrap).build().createInjector();
       
        final List<Integer> expected = Lists.newArrayList(1, 2, 3);
View Full Code Here

    }

    @Test(dataProvider = "builders")
    public void testBasic(LifecycleInjectorBuilder lifecycleInjectorBuilder)
    {
        Injector injector = lifecycleInjectorBuilder.usingBasePackages("com.netflix.governator.autobindmultiple.basic").createInjector();
        Container container = injector.getInstance(Container.class);
        Assert.assertEquals(container.getMocks().size(), 3);
        Iterable<String> transformed = Iterables.transform
        (
            container.getMocks(),
            new Function<BaseForMocks, String>()
View Full Code Here

    }

    @Test(dataProvider = "builders")
    public void testGeneric(LifecycleInjectorBuilder lifecycleInjectorBuilder)
    {
        Injector injector = lifecycleInjectorBuilder.usingBasePackages("com.netflix.governator.autobindmultiple.generic").createInjector();
        GenericContainer container = injector.getInstance(GenericContainer.class);
        Assert.assertEquals(container.getMocks().size(), 3);
        Iterable<Integer> transformed = Iterables.transform
        (
            container.getMocks(),
            new Function<BaseForGenericMocks<Integer>, Integer>()
View Full Code Here

   
    private LifecycleManager lifecycleManager;
   
    @Override
    protected Injector getInjector() {
        Injector injector = LifecycleInjector.bootstrap(bootstrapClass);
        this.lifecycleManager = injector.getInstance(LifecycleManager.class);
        if (injector.getExistingBinding(Key.get(ServletContextListener.class)) != null) {
            this.delegate = injector.getInstance(ServletContextListener.class);
        }
        return injector;
    }
View Full Code Here

public class Jsr250SupportTest extends LifecycleInjectorBuilderProvider
{
    @Test(dataProvider = "builders")
    public void testJsr250EnabledService(LifecycleInjectorBuilder lifecycleInjectorBuilder) throws Exception
    {
        Injector injector = lifecycleInjectorBuilder.createInjector();
        Jsr250EnabledService jsr250EnabledService = injector.getInstance(Jsr250EnabledService.class);

        injector.getInstance(LifecycleManager.class).start();

        Assert.assertTrue(Scopes.isSingleton(injector.getBinding(jsr250EnabledService.getClass())));
        Assert.assertTrue(jsr250EnabledService.isPostConstuctInvoked());

        Assert.assertTrue(jsr250EnabledService.isResourceSet());
        Jsr250EnabledService service = injector.getInstance(Jsr250EnabledService.class);
        Assert.assertEquals(jsr250EnabledService.getResource(), service.getResource());

        injector.getInstance(LifecycleManager.class).close();
        Assert.assertTrue(jsr250EnabledService.isPreDestroyInvoked());
    }
View Full Code Here

                }

                return null;
            }
        };
        Injector injector = lifecycleInjectorBuilder.withBootstrapModule
            (
                new BootstrapModule()
                {
                    @Override
                    public void configure(BootstrapBinder binder)
                    {
                        binder.bindResourceLocator().toInstance(resourceLocator);
                    }
                }
            )
            .createInjector();

        ObjectWithResources obj = injector.getInstance(ObjectWithResources.class);
        Assert.assertEquals(obj.getMyResource(), "a");
        Assert.assertEquals(obj.getMyOverrideResource(), BigInteger.valueOf(2));
        Assert.assertEquals(obj.getP(), new Point(3, 4));
        Assert.assertEquals(obj.getR(), new Rectangle(5, 6));
        Assert.assertEquals(classResourceCount.get(), 1);
View Full Code Here

            {
                resourceLocator2Count.incrementAndGet();
                return nextInChain.locate(resource, nextInChain);
            }
        };
        Injector injector = lifecycleInjectorBuilder.withBootstrapModule
            (
                new BootstrapModule()
                {
                    @Override
                    public void configure(BootstrapBinder binder)
                    {
                        binder.bindResourceLocator().toInstance(resourceLocator1);
                        binder.bindResourceLocator().toInstance(resourceLocator2);
                        binder.bind(BigInteger.class).toInstance(BigInteger.valueOf(1));
                        binder.bind(Double.class).toInstance(1.1);
                    }
                }
            )
            .createInjector();

        injector.getInstance(ObjectWithResources.class);
        Assert.assertEquals(resourceLocator1Count.get(), 5);    // 1 for each @Resource
        Assert.assertEquals(resourceLocator2Count.get(), 5);    //      "       "
    }
View Full Code Here

TOP

Related Classes of com.google.inject.Injector

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.