void execute() { event.addObserverMethod(); } }.run();
public void registerObservers(@Observes AfterBeanDiscovery event) { event.addObserverMethod(anyGiraffeObserver); event.addObserverMethod(fiveMeterTallGiraffeObserver); event.addObserverMethod(sixMeterTallAngryGiraffeObserver); event.addObserverMethod(angryNubianGiraffeObserver); }
public void registerObservers(@Observes AfterBeanDiscovery event) { event.addObserverMethod(anyGiraffeObserver); }
private void addObserverMethod(AfterBeanDiscovery event) { addedObserverMethod = new TestableObserverMethod<Talk>() { boolean observed = false; public void notify(Talk event) { observed = true; } public void notify(Talk event, Set<Annotation> qualifiers) { observed = true; } public boolean isObserved() { return observed; } public Class<?> getBeanClass() { return Listener.class; } public Set<Annotation> getObservedQualifiers() { return Collections.<Annotation> singleton(Any.Literal.INSTANCE); } public Type getObservedType() { return Talk.class; } public Reception getReception() { return Reception.ALWAYS; } public TransactionPhase getTransactionPhase() { return TransactionPhase.IN_PROGRESS; } }; event.addObserverMethod(addedObserverMethod); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event) { // add custom observer which does not override notify method - should throw exception event.addObserverMethod(new ObserverMethod<Foo>() { @Override public Class<?> getBeanClass() { return AfterBeanDiscovery.class; } @Override public Type getObservedType() { return Foo.class; } @Override public Set<Annotation> getObservedQualifiers() { return Collections.emptySet(); } @Override public Reception getReception() { return Reception.ALWAYS; } @Override public TransactionPhase getTransactionPhase() { return TransactionPhase.IN_PROGRESS; } }); } }
/** * Register observer method {@link PushCDIExtension.PushObserverMethod} for each {@link Push} annotation found in annotation scanning. * * @param event * @param beanManager */ public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { for (Push pushAnnotation : pushAnnotations) { event.addObserverMethod(new PushObserverMethod(beanManager, pushAnnotation)); } }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery abd, BeanManager bm) { Set<Bean<?>> configuration = bm.getBeans(JmsForwarding.class); if(configuration == null || configuration.isEmpty()) { log.info("No {} registered. Event forwarding disabled.", JmsForwarding.class.getSimpleName()); } else { for(Bean<?> c : configuration) { log.info("Creating {} for configuration {}", BridgedObserver.class.getSimpleName(), c); CreationalContext<?> context = bm.createCreationalContext(c); // TODO Verify configuration for correctness (e.g. getQualifiers() must contain only @Qualifier annotations) JmsForwarding config = JmsForwarding.class.cast(bm.getReference(c, JmsForwarding.class, context)); BridgedObserver b = new BridgedObserver(bm, config); abd.addObserverMethod(b); } } }
void addSecurityHandlerObservers(@Observes final AfterBeanDiscovery afterBeanDiscovery) { final ObserverMethodConfigurator<OnConnection> onConnection = afterBeanDiscovery.addObserverMethod(); onConnection.observedType(OnConnection.class).notifyWith(this::onConnection); final ObserverMethodConfigurator<OnCommand> onCommand = afterBeanDiscovery.addObserverMethod(); onCommand.observedType(OnCommand.class).notifyWith(this::onCommand); }
void execute() { event.addObserverMethod(extension.getProcessObserverMethod().getObserverMethod()); } }.run();
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event) { // not overriding notify method -> definition error event.<Foo>addObserverMethod().read(fooObserverMethod).async(true).priority(ObserverMethod.DEFAULT_PRIORITY); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
public void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) { BeanManagerImpl weldManager = BeanManagerProxy.unwrap(beanManager); String exclude = weldManager.getServices().get(WeldConfiguration.class).getStringProperty(ConfigurationKey.PROBE_EVENT_MONITOR_EXCLUDE_TYPE); event.addObserverMethod(new ProbeObserver(weldManager, exclude.isEmpty() ? null : Pattern.compile(exclude), probe)); addContainerLifecycleEvent(event, null, beanManager); }
void addBeans(@Observes final AfterBeanDiscovery abd) { for (final Bean<?> bean : beans) { abd.addBean(bean); } if (mergeContainer(abd)) { abd.addObserverMethod(new ChildWebAppBusPropagaterObserverBean(SystemInstance.get().getComponent(Container.class))); } }
void observesABD(@Observes AfterBeanDiscovery abd) throws NoSuchMethodException { abd.<Fruit>addObserverMethod().read(fruitObserverMethod).beanClass(FruitObserver.class).observedType(Banana.class) .addQualifiers(Ripe.RipeLiteral.INSTANCE, Any.Literal.INSTANCE) .notifyWith((b) -> { abd.addObserverMethod().read(melonMethod).observedType(Melon.class).notifyWith(m -> { newMelonObserverNotified.set(true); }); abd.addObserverMethod().read(peachObserver).beanClass(FruitObserver.class).observedType(Peach.class).notifyWith((a) -> { newPeachObserverNotified.set(true); }); abd.addObserverMethod(new ObserverMethod<Cherry>() { abd.addObserverMethod().observedType(Papaya.class).reception(Reception.ALWAYS).notifyWith(eventContext -> newPapayaObserverNotified.set(true));
@SuppressWarnings("rawtypes") public void afterBeanDiscovery(@Observes final AfterBeanDiscovery abd, final BeanManager bm) { final ErraiService service = ErraiServiceSingleton.getService(); final MessageBus bus = service.getBus(); final EventRoutingTable eventRoutingTable = new EventRoutingTable(); if (bus.isSubscribed(CDI.SERVER_DISPATCHER_SUBJECT)) { return; } final byte[] randBytes = new byte[32]; final Random random = new Random(System.currentTimeMillis()); random.nextBytes(randBytes); abd.addBean(new ErraiServiceBean(bm, SecureHashUtil.hashToHexString(randBytes))); for (final MessageSender ms : messageSenders) { abd.addBean(new SenderBean(ms.getSenderType(), ms.getQualifiers(), bus)); } // Errai bus injection abd.addBean(new MessageBusBean(bus)); // Support to inject the request dispatcher. abd.addBean(new RequestDispatcherMetaData(bm, service.getDispatcher())); // Register observers abd.addObserverMethod(new ShutdownEventObserver(managedTypes, bus)); // subscribe service and rpc endpoints subscribeServices(bm, bus); // initialize the CDI event bridge to the client final EventDispatcher eventDispatcher = new EventDispatcher(bm, eventRoutingTable, bus, observableEvents, eventQualifiers); AnyEventObserver.init(eventDispatcher); // subscribe event dispatcher bus.subscribe(CDI.SERVER_DISPATCHER_SUBJECT, eventDispatcher); }