package org.jboss.errai.ioc.client; import com.google.gwt.core.client.GWT; import com.google.gwt.core.client.RunAsyncCallback; import com.sample.client.local.App; import com.sample.client.shared.HelloMessage; import com.sample.client.shared.Response; import java.lang.annotation.Annotation; import java.util.Set; import javax.enterprise.event.Event; import javax.inject.Provider; import org.jboss.errai.bus.client.api.Message; import org.jboss.errai.bus.client.framework.Subscription; import org.jboss.errai.enterprise.client.cdi.AbstractCDIEventCallback; import org.jboss.errai.enterprise.client.cdi.CDIEventTypeLookup; import org.jboss.errai.enterprise.client.cdi.CDIProtocol; import org.jboss.errai.enterprise.client.cdi.EventProvider; import org.jboss.errai.enterprise.client.cdi.InstanceProvider; import org.jboss.errai.enterprise.client.cdi.api.CDI; import org.jboss.errai.ioc.client.api.ContextualTypeProvider; import org.jboss.errai.ioc.client.api.builtin.CallerProvider; import org.jboss.errai.ioc.client.api.builtin.DisposerProvider; import org.jboss.errai.ioc.client.api.builtin.IOCBeanManagerProvider; import org.jboss.errai.ioc.client.api.builtin.InitBallotProvider; import org.jboss.errai.ioc.client.api.builtin.MessageBusProvider; import org.jboss.errai.ioc.client.api.builtin.RequestDispatcherProvider; import org.jboss.errai.ioc.client.api.builtin.RootPanelProvider; import org.jboss.errai.ioc.client.api.builtin.SenderProvider; import org.jboss.errai.ioc.client.api.qualifiers.Any; import org.jboss.errai.ioc.client.api.qualifiers.BuiltInQualifiers; import org.jboss.errai.ioc.client.container.BeanRef; import org.jboss.errai.ioc.client.container.CreationalCallback; import org.jboss.errai.ioc.client.container.CreationalContext; import org.jboss.errai.ioc.client.container.DestructionCallback; import org.jboss.errai.ioc.client.container.IOCBeanManager; import org.jboss.errai.ioc.client.container.InitializationCallback; public class BootstrapperImpl implements Bootstrapper { private native static void org_jboss_errai_ioc_client_api_builtin_DisposerProvider_beanManager(DisposerProvider instance, IOCBeanManager value) /*-{ instance.@org.jboss.errai.ioc.client.api.builtin.DisposerProvider::beanManager = value; }-*/; private native static void com_sample_client_local_App_messageEvent(App instance, Event value) /*-{ instance.@com.sample.client.local.App::messageEvent = value; }-*/; // The main IOC bootstrap method. public BootstrapperInjectionContext bootstrapContainer() { CDIEventTypeLookup.get().addLookup("com.sample.client.shared.Response", "java.lang.Object"); new CDI().__resetSubsystem(); new CDI().initLookupTable(CDIEventTypeLookup.get()); final BootstrapperInjectionContext injContext = new BootstrapperInjectionContext(); CreationalContext context = injContext.getRootContext(); final CreationalCallback<EventProvider> inj1714_EventProvider_creationalCallback = new CreationalCallback<EventProvider>() { public EventProvider getInstance(final CreationalContext context) { Class beanType = EventProvider.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final EventProvider inj1700_EventProvider = new EventProvider(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1700_EventProvider); return inj1700_EventProvider; } }; final EventProvider inj1700_EventProvider = inj1714_EventProvider_creationalCallback.getInstance(context); final CreationalCallback<MessageBusProvider> inj1715_MessageBusProvider_creationalCallback = new CreationalCallback<MessageBusProvider>() { public MessageBusProvider getInstance(final CreationalContext context) { Class beanType = MessageBusProvider.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final MessageBusProvider inj1696_MessageBusProvider = new MessageBusProvider(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1696_MessageBusProvider); return inj1696_MessageBusProvider; } }; final InitializationCallback<App> init_inj1620_App = new InitializationCallback<App>() { public void init(final App obj) { obj.buildUI(); } }; final MessageBusProvider inj1696_MessageBusProvider = inj1715_MessageBusProvider_creationalCallback.getInstance(context); final CreationalCallback<App> inj1713_App_creationalCallback = new CreationalCallback<App>() { public App getInstance(final CreationalContext context) { Class beanType = App.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final App inj1620_App = new App(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1620_App); com_sample_client_local_App_messageEvent(inj1620_App, inj1700_EventProvider.provide(new Class[] { HelloMessage.class }, null)); final Subscription var1 = CDI.subscribe("com.sample.client.shared.Response", new AbstractCDIEventCallback() { { } public void callback(final Message message) { Set<String> msgQualifiers = message.get(Set.class, CDIProtocol.Qualifiers); if (qualifierSet.equals(msgQualifiers) || ((msgQualifiers == null) && qualifierSet.isEmpty())) { GWT.runAsync(new RunAsyncCallback() { public void onFailure(Throwable throwable) { throw new RuntimeException("failed to run asynchronously", throwable); } public void onSuccess() { inj1620_App.response(message.get(Response.class, CDIProtocol.BeanReference)); } }); } } public String toString() { return "Observer: com.sample.client.shared.Response []"; } }); final Subscription var2 = inj1696_MessageBusProvider.get().subscribe("cdi.event:com.sample.client.shared.Response", CDI.ROUTING_CALLBACK); context.addDestructionCallback(inj1620_App, new DestructionCallback<App>() { public void destroy(final App obj) { var1.remove(); var2.remove(); } }); context.addInitializationCallback(inj1620_App, init_inj1620_App); return inj1620_App; } }; final App inj1620_App = inj1713_App_creationalCallback.getInstance(context); final CreationalCallback<CallerProvider> inj1716_CallerProvider_creationalCallback = new CreationalCallback<CallerProvider>() { public CallerProvider getInstance(final CreationalContext context) { Class beanType = CallerProvider.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final CallerProvider inj1710_CallerProvider = new CallerProvider(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1710_CallerProvider); return inj1710_CallerProvider; } }; final CallerProvider inj1710_CallerProvider = inj1716_CallerProvider_creationalCallback.getInstance(context); final CreationalCallback<RequestDispatcherProvider> inj1717_RequestDispatcherProvider_creationalCallback = new CreationalCallback<RequestDispatcherProvider>() { public RequestDispatcherProvider getInstance(final CreationalContext context) { Class beanType = RequestDispatcherProvider.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final RequestDispatcherProvider inj1706_RequestDispatcherProvider = new RequestDispatcherProvider(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1706_RequestDispatcherProvider); return inj1706_RequestDispatcherProvider; } }; final RequestDispatcherProvider inj1706_RequestDispatcherProvider = inj1717_RequestDispatcherProvider_creationalCallback.getInstance(context); final CreationalCallback<SenderProvider> inj1718_SenderProvider_creationalCallback = new CreationalCallback<SenderProvider>() { public SenderProvider getInstance(final CreationalContext context) { Class beanType = SenderProvider.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final SenderProvider inj1702_SenderProvider = new SenderProvider(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1702_SenderProvider); return inj1702_SenderProvider; } }; final SenderProvider inj1702_SenderProvider = inj1718_SenderProvider_creationalCallback.getInstance(context); final CreationalCallback<RootPanelProvider> inj1719_RootPanelProvider_creationalCallback = new CreationalCallback<RootPanelProvider>() { public RootPanelProvider getInstance(final CreationalContext context) { Class beanType = RootPanelProvider.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final RootPanelProvider inj1708_RootPanelProvider = new RootPanelProvider(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1708_RootPanelProvider); return inj1708_RootPanelProvider; } }; final RootPanelProvider inj1708_RootPanelProvider = inj1719_RootPanelProvider_creationalCallback.getInstance(context); final CreationalCallback<IOCBeanManagerProvider> inj1720_IOCBeanManagerProvider_creationalCallback = new CreationalCallback<IOCBeanManagerProvider>() { public IOCBeanManagerProvider getInstance(final CreationalContext context) { Class beanType = IOCBeanManagerProvider.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final IOCBeanManagerProvider inj1698_IOCBeanManagerProvider = new IOCBeanManagerProvider(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1698_IOCBeanManagerProvider); return inj1698_IOCBeanManagerProvider; } }; final IOCBeanManagerProvider inj1698_IOCBeanManagerProvider = inj1720_IOCBeanManagerProvider_creationalCallback.getInstance(context); final CreationalCallback<InstanceProvider> inj1721_InstanceProvider_creationalCallback = new CreationalCallback<InstanceProvider>() { public InstanceProvider getInstance(final CreationalContext context) { Class beanType = InstanceProvider.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final InstanceProvider inj1704_InstanceProvider = new InstanceProvider(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1704_InstanceProvider); return inj1704_InstanceProvider; } }; final InstanceProvider inj1704_InstanceProvider = inj1721_InstanceProvider_creationalCallback.getInstance(context); final CreationalCallback<DisposerProvider> inj1722_DisposerProvider_creationalCallback = new CreationalCallback<DisposerProvider>() { public DisposerProvider getInstance(final CreationalContext context) { Class beanType = DisposerProvider.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final DisposerProvider inj1712_DisposerProvider = new DisposerProvider(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1712_DisposerProvider); org_jboss_errai_ioc_client_api_builtin_DisposerProvider_beanManager(inj1712_DisposerProvider, inj1698_IOCBeanManagerProvider.get()); return inj1712_DisposerProvider; } }; final DisposerProvider inj1712_DisposerProvider = inj1722_DisposerProvider_creationalCallback.getInstance(context); final CreationalCallback<InitBallotProvider> inj1723_InitBallotProvider_creationalCallback = new CreationalCallback<InitBallotProvider>() { public InitBallotProvider getInstance(final CreationalContext context) { Class beanType = InitBallotProvider.class; Annotation[] qualifiers = new Annotation[] { new Any() { public Class annotationType() { return Any.class; } } }; final InitBallotProvider inj1694_InitBallotProvider = new InitBallotProvider(); BeanRef beanRef = context.getBeanReference(beanType, qualifiers); context.addBean(beanRef, inj1694_InitBallotProvider); return inj1694_InitBallotProvider; } }; final InitBallotProvider inj1694_InitBallotProvider = inj1723_InitBallotProvider_creationalCallback.getInstance(context); injContext.addBean(EventProvider.class, inj1714_EventProvider_creationalCallback, inj1700_EventProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(ContextualTypeProvider.class, inj1714_EventProvider_creationalCallback, inj1700_EventProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(MessageBusProvider.class, inj1715_MessageBusProvider_creationalCallback, inj1696_MessageBusProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(Provider.class, inj1715_MessageBusProvider_creationalCallback, inj1696_MessageBusProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(App.class, inj1713_App_creationalCallback, inj1620_App, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(CallerProvider.class, inj1716_CallerProvider_creationalCallback, inj1710_CallerProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(ContextualTypeProvider.class, inj1716_CallerProvider_creationalCallback, inj1710_CallerProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(RequestDispatcherProvider.class, inj1717_RequestDispatcherProvider_creationalCallback, inj1706_RequestDispatcherProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(Provider.class, inj1717_RequestDispatcherProvider_creationalCallback, inj1706_RequestDispatcherProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(SenderProvider.class, inj1718_SenderProvider_creationalCallback, inj1702_SenderProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(ContextualTypeProvider.class, inj1718_SenderProvider_creationalCallback, inj1702_SenderProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(RootPanelProvider.class, inj1719_RootPanelProvider_creationalCallback, inj1708_RootPanelProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(Provider.class, inj1719_RootPanelProvider_creationalCallback, inj1708_RootPanelProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(IOCBeanManagerProvider.class, inj1720_IOCBeanManagerProvider_creationalCallback, inj1698_IOCBeanManagerProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(Provider.class, inj1720_IOCBeanManagerProvider_creationalCallback, inj1698_IOCBeanManagerProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(InstanceProvider.class, inj1721_InstanceProvider_creationalCallback, inj1704_InstanceProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(ContextualTypeProvider.class, inj1721_InstanceProvider_creationalCallback, inj1704_InstanceProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(DisposerProvider.class, inj1722_DisposerProvider_creationalCallback, inj1712_DisposerProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(ContextualTypeProvider.class, inj1722_DisposerProvider_creationalCallback, inj1712_DisposerProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(InitBallotProvider.class, inj1723_InitBallotProvider_creationalCallback, inj1694_InitBallotProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); injContext.addBean(ContextualTypeProvider.class, inj1723_InitBallotProvider_creationalCallback, inj1694_InitBallotProvider, BuiltInQualifiers.DEFAULT_QUALIFIERS); return injContext; } }