package org.peerbox.app; import org.peerbox.app.activity.collectors.ActivityConfiguration; import org.peerbox.app.config.AppConfig; import org.peerbox.events.MessageBus; import org.peerbox.server.IServer; import org.peerbox.view.UiContext; import com.google.inject.Inject; import com.google.inject.Injector; import com.google.inject.Singleton; /** * The app context contains application-wide ("global") services and dependencies such * as the message bus or the HTTP server. * * @author albrecht * */ @Singleton public class AppContext { private Injector injector; private MessageBus messageBus; private AppConfig appConfig; private IServer server; private ActivityConfiguration activityConfiguration; private UiContext uiContext; private ClientContext currentClientContext; public Injector getInjector() { return injector; } @Inject protected void setInjector(Injector injector) { this.injector = injector; } public MessageBus getMessageBus() { return messageBus; } @Inject protected void setMessageBus(MessageBus messageBus) { this.messageBus = messageBus; } public AppConfig getAppConfig() { return appConfig; } @Inject protected void setAppConfig(AppConfig appConfig) { this.appConfig = appConfig; } public IServer getServer() { return server; } @Inject protected void setServer(IServer server) { this.server = server; } public ActivityConfiguration getActivityConfiguration() { return activityConfiguration; } @Inject protected void setActivityConfiguration(ActivityConfiguration activityConfiguration) { this.activityConfiguration = activityConfiguration; } public UiContext getUiContext() { return uiContext; } @Inject protected void setUiContext(UiContext uiContext) { this.uiContext = uiContext; } public ClientContext getCurrentClientContext() { return currentClientContext; } public void setCurrentClientContext(ClientContext currentClientContext) { this.currentClientContext = currentClientContext; } }