Package com.google.inject.spi

Examples of com.google.inject.spi.TypeListener


    registerListType(BeanValidator.class);
  }

  private <T> void registerListType(Class<T> type) {
    final AllImplementationsProvider<T> provider = new AllImplementationsProvider<T>();
    bindListener(type(Matchers.subclassesOf(type)), new TypeListener() {
      public void hear(TypeLiteral literal, TypeEncounter encounter) {
        provider.addType(literal.getRawType());
      }
    });
    bind(TypeLiteral.get(Types.listOf(type))).toProvider((Provider)provider);
View Full Code Here


         return in.isAnnotationPresent(PostConstruct.class);
      }
   };

   protected void bindPostInjectionInvoke(final Closer closer, final ExecutionList list) {
      bindListener(any(), new TypeListener() {
         public <I> void hear(TypeLiteral<I> injectableType, TypeEncounter<I> encounter) {
            Collection<? extends Invokable<? super I, Object>> methods = methods(injectableType.getRawType());
            for (final Invokable<? super I, Object> method : filter(methods, isPostConstruct)) {
               encounter.register(new InjectionListener<I>() {
                  public void afterInjection(final I injectee) {
View Full Code Here

        bind(Database.class).to(MemoryDatabase.class);
        bind(PostBuilderFactory.class).to(MemoryDatabase.class);
        bind(PostReplyBuilderFactory.class).to(MemoryDatabase.class);
        bind(SoneProvider.class).to(Core.class).in(Singleton.class);
        bind(PostProvider.class).to(MemoryDatabase.class);
        bindListener(Matchers.any(), new TypeListener() {

          @Override
          public <I> void hear(TypeLiteral<I> typeLiteral, TypeEncounter<I> typeEncounter) {
            typeEncounter.register(new InjectionListener<I>() {
View Full Code Here

    @Override
    protected void configure() {
        LOG.info("Loading PaasModule");
       
        bind(EventBus.class).toInstance(eventBus);
        bindListener(Matchers.any(), new TypeListener() {
            public <I> void hear(TypeLiteral<I> typeLiteral, TypeEncounter<I> typeEncounter) {
                typeEncounter.register(new InjectionListener<I>() {
                    public void afterInjection(I i) {
                        eventBus.register(i);
                    }
View Full Code Here

      this.managementContext = context;
   }

   @Override
   protected void configure() {
      bindListener(subClassOf(View.class), new TypeListener() {
         @Override
         public <I> void hear(final TypeLiteral<I> typeLiteral, TypeEncounter<I> typeEncounter) {
            typeEncounter.register(new InjectionListener<I>() {
               @Override
               public void afterInjection(Object object) {
View Full Code Here

    private final ImmutableSet.Builder<HealthCheck> healthcheckBuilder = ImmutableSet.builder();
    private final ImmutableSet.Builder<ServerLifecycleListener> serverLifecycleListenerBuilder = ImmutableSet.builder();

    @Override
    public void configure(final Binder binder) {
      binder.bindListener(Matchers.any(), new TypeListener() {
        @Override
        public <T> void hear(TypeLiteral<T> type, TypeEncounter<T> encounter) {
          encounter.register(new InjectionListener<T>() {
            @Override
            public void afterInjection(T obj) {
View Full Code Here

public class WinkGuiceModule extends AbstractModule {

    @Override
    protected void configure() {
        bindListener(Matchers.any(), new TypeListener() {

            public <I> void hear(TypeLiteral<I> typeLiteral, TypeEncounter<I> encounter) {
                ClassMetadata classMetaData = collectClassMetadata(typeLiteral.getRawType());
                if (classMetaData == null) {
                    return;
View Full Code Here

  };

  public void testTypeListenersAreFired() throws NoSuchMethodException {
    final AtomicInteger firedCount = new AtomicInteger();

    final TypeListener typeListener = new TypeListener() {
      public <I> void hear(TypeLiteral<I> type, TypeEncounter<I> encounter) {
        assertEquals(new TypeLiteral<A>() {}, type);
        firedCount.incrementAndGet();
      }
    };
View Full Code Here

      }
    };

    Injector injector = Guice.createInjector(new AbstractModule() {
      protected void configure() {
        bindListener(onlyAbcd, new TypeListener() {
          public <I> void hear(TypeLiteral<I> type, TypeEncounter<I> encounter) {
            encounter.register(injectionListener);
          }
        });
        bind(A.class);
View Full Code Here

    Injector injector = Guice.createInjector(new AbstractModule() {
      protected void configure() {
        bindInterceptor(any(), buzz, prefixInterceptor("ka"));
        bindInterceptor(any(), any(), prefixInterceptor("fe"));

        bindListener(onlyAbcd, new TypeListener() {
          public <I> void hear(TypeLiteral<I> type, TypeEncounter<I> encounter) {
            encounter.bindInterceptor(any(), prefixInterceptor("li"));
            encounter.bindInterceptor(buzz, prefixInterceptor("no"));
          }
        });
View Full Code Here

TOP

Related Classes of com.google.inject.spi.TypeListener

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.