package com.comandante.stickypunch.http; import com.comandante.stickypunch.api.model.PackageCreator; import com.comandante.stickypunch.api.model.WebPushStore; import com.comandante.stickypunch.api.model.WebPushStoreAuth; import com.comandante.stickypunch.apnspush.ApnsPushManager; import com.comandante.stickypunch.http.inject.ManifestInjectionProvider; import com.comandante.stickypunch.http.model.jackson.HttpObjectMapper; import org.codehaus.jackson.map.ObjectMapper; import org.eclipse.jetty.server.Server; public class HttpServiceFactory { private HttpServiceFactory() { } public static Server create(WebPushStore webPushStore, WebPushStoreAuth webPushStoreAuth, PackageCreator packageCreator, ApnsPushManager apnsPushManager, HttpConfiguration config) throws Exception { ObjectMapper objectMapper = HttpObjectMapper.getInstance(); ManifestInjectionProvider.addToManifest(ObjectMapper.class, objectMapper); ManifestInjectionProvider.addToManifest(WebPushStore.class, webPushStore); ManifestInjectionProvider.addToManifest(WebPushStoreAuth.class, webPushStoreAuth); ManifestInjectionProvider.addToManifest(PackageCreator.class, packageCreator); ManifestInjectionProvider.addToManifest(ApnsPushManager.class, apnsPushManager); return JettyService.create(config); } }