From 0094d89e688f449c2081f6fa0306ff30cd75a805 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20Bon=C3=A9r?= Date: Mon, 22 Nov 2010 15:32:54 +0100 Subject: [PATCH] Fixed issues with config - Ticket #535 --- .../src/main/scala/akka/AkkaBroadcaster.scala | 2 +- .../main/scala/akka/AkkaCometServlet.scala | 8 +++---- .../main/scala/akka/EmbeddedAppServer.scala | 23 ++++++++++--------- .../src/main/scala/akka/ListWriter.scala | 5 ++-- akka-http/src/main/scala/akka/Security.scala | 18 +++++++-------- 5 files changed, 29 insertions(+), 27 deletions(-) diff --git a/akka-http/src/main/scala/akka/AkkaBroadcaster.scala b/akka-http/src/main/scala/akka/AkkaBroadcaster.scala index fd0f76631a..4da1a1fda5 100644 --- a/akka-http/src/main/scala/akka/AkkaBroadcaster.scala +++ b/akka-http/src/main/scala/akka/AkkaBroadcaster.scala @@ -12,7 +12,7 @@ import akka.dispatch.Dispatchers import org.atmosphere.jersey.util.JerseyBroadcasterUtil object AkkaBroadcaster { - val broadcasterDispatcher = Dispatchers.fromConfig("akka.rest.comet-dispatcher") + val broadcasterDispatcher = Dispatchers.fromConfig("akka.http.comet-dispatcher") type Event = AtmosphereResourceEvent[_,_] type Resource = AtmosphereResource[_,_] diff --git a/akka-http/src/main/scala/akka/AkkaCometServlet.scala b/akka-http/src/main/scala/akka/AkkaCometServlet.scala index 5b15096c92..0c651bc776 100644 --- a/akka-http/src/main/scala/akka/AkkaCometServlet.scala +++ b/akka-http/src/main/scala/akka/AkkaCometServlet.scala @@ -51,11 +51,11 @@ class AkkaServlet extends AtmosphereServlet { addInitParameter(AtmosphereServlet.DISABLE_ONSTATE_EVENT,"true") addInitParameter(AtmosphereServlet.BROADCASTER_CLASS,classOf[AkkaBroadcaster].getName) addInitParameter(AtmosphereServlet.PROPERTY_USE_STREAM,"true") - addInitParameter("com.sun.jersey.config.property.packages",c.getList("akka.rest.resource_packages").mkString(";")) - addInitParameter("com.sun.jersey.spi.container.ResourceFilters",c.getList("akka.rest.filters").mkString(",")) + addInitParameter("com.sun.jersey.config.property.packages",c.getList("akka.http.resource_packages").mkString(";")) + addInitParameter("com.sun.jersey.spi.container.ResourceFilters",c.getList("akka.http.filters").mkString(",")) - c.getInt("akka.rest.maxInactiveActivity") foreach { value => addInitParameter(CometSupport.MAX_INACTIVE,value.toString) } - c.getString("akka.rest.cometSupport") foreach { value => addInitParameter("cometSupport",value) } + c.getInt("akka.http.maxInactiveActivity") foreach { value => addInitParameter(CometSupport.MAX_INACTIVE,value.toString) } + c.getString("akka.http.cometSupport") foreach { value => addInitParameter("cometSupport",value) } /* * Provide a fallback for default values diff --git a/akka-http/src/main/scala/akka/EmbeddedAppServer.scala b/akka-http/src/main/scala/akka/EmbeddedAppServer.scala index ea68bf1106..db5761eb29 100644 --- a/akka-http/src/main/scala/akka/EmbeddedAppServer.scala +++ b/akka-http/src/main/scala/akka/EmbeddedAppServer.scala @@ -20,23 +20,25 @@ import org.eclipse.jetty.server.handler.{HandlerList, HandlerCollection, Context * Handles the Akka Comet Support (load/unload) */ trait EmbeddedAppServer extends Bootable with Logging { - self : BootableActorLoaderService => + self: BootableActorLoaderService => import akka.config.Config._ - val REST_HOSTNAME = config.getString("akka.rest.hostname", "localhost") - val REST_PORT = config.getInt("akka.rest.port", 9998) + val REST_HOSTNAME = config.getString("akka.http.hostname", "localhost") + val REST_PORT = config.getInt("akka.http.port", 9998) + + val isRestEnabled = config.getList("akka.enabled-modules").exists(_ == "http") protected var server: Option[Server] = None abstract override def onLoad = { super.onLoad - if (config.getBool("akka.rest.service", true)) { - log.info("Attempting to start Akka REST service (Jersey)") + if (isRestEnabled) { + log.info("Attempting to start Akka HTTP service") - System.setProperty("jetty.port",REST_PORT.toString) - System.setProperty("jetty.host",REST_HOSTNAME) - System.setProperty("jetty.home",HOME.getOrElse(throwNoAkkaHomeException) + "/deploy/root") + System.setProperty("jetty.port", REST_PORT.toString) + System.setProperty("jetty.host", REST_HOSTNAME) + System.setProperty("jetty.home", HOME.getOrElse(throwNoAkkaHomeException) + "/deploy/root") val configuration = new XmlConfiguration( new File(HOME.getOrElse(throwNoAkkaHomeException) + "/config/microkernel-server.xml").toURI.toURL) @@ -57,16 +59,15 @@ trait EmbeddedAppServer extends Bootable with Logging { s.start() s } - log.info("Akka REST service started (Jersey)") + log.info("Akka HTTP service started") } } abstract override def onUnload = { super.onUnload - server foreach { t => { + server foreach { t => log.info("Shutting down REST service (Jersey)") t.stop() - } } } } diff --git a/akka-http/src/main/scala/akka/ListWriter.scala b/akka-http/src/main/scala/akka/ListWriter.scala index 3a2c69d02a..b2addd6cd7 100644 --- a/akka-http/src/main/scala/akka/ListWriter.scala +++ b/akka-http/src/main/scala/akka/ListWriter.scala @@ -1,10 +1,11 @@ /** * Copyright (C) 2009-2010 Scalable Solutions AB */ -package akka.rest +package akka.http + +import akka.serialization.Serializer import java.io.OutputStream -import akka.serialization.Serializer import javax.ws.rs.core.{MultivaluedMap, MediaType} import javax.ws.rs.ext.{MessageBodyWriter, Provider} import javax.ws.rs.Produces diff --git a/akka-http/src/main/scala/akka/Security.scala b/akka-http/src/main/scala/akka/Security.scala index b6aec9a1f0..e9152970fa 100644 --- a/akka-http/src/main/scala/akka/Security.scala +++ b/akka-http/src/main/scala/akka/Security.scala @@ -101,8 +101,8 @@ class AkkaSecurityFilterFactory extends ResourceFilterFactory with Logging { } lazy val authenticatorFQN = { - val auth = Config.config.getString("akka.rest.authenticator", "N/A") - if (auth == "N/A") throw new IllegalActorStateException("The config option 'akka.rest.authenticator' is not defined in 'akka.conf'") + val auth = Config.config.getString("akka.http.authenticator", "N/A") + if (auth == "N/A") throw new IllegalActorStateException("The config option 'akka.http.authenticator' is not defined in 'akka.conf'") auth } @@ -399,8 +399,8 @@ trait SpnegoAuthenticationActor extends AuthenticationActor[SpnegoCredentials] w * principal name for the HTTP kerberos service, i.e HTTP/ { server } @ { realm } */ lazy val servicePrincipal = { - val p = Config.config.getString("akka.rest.kerberos.servicePrincipal", "N/A") - if (p == "N/A") throw new IllegalActorStateException("The config option 'akka.rest.kerberos.servicePrincipal' is not defined in 'akka.conf'") + val p = Config.config.getString("akka.http.kerberos.servicePrincipal", "N/A") + if (p == "N/A") throw new IllegalActorStateException("The config option 'akka.http.kerberos.servicePrincipal' is not defined in 'akka.conf'") p } @@ -408,21 +408,21 @@ trait SpnegoAuthenticationActor extends AuthenticationActor[SpnegoCredentials] w * keytab location with credentials for the service principal */ lazy val keyTabLocation = { - val p = Config.config.getString("akka.rest.kerberos.keyTabLocation", "N/A") - if (p == "N/A") throw new IllegalActorStateException("The config option 'akka.rest.kerberos.keyTabLocation' is not defined in 'akka.conf'") + val p = Config.config.getString("akka.http.kerberos.keyTabLocation", "N/A") + if (p == "N/A") throw new IllegalActorStateException("The config option 'akka.http.kerberos.keyTabLocation' is not defined in 'akka.conf'") p } lazy val kerberosDebug = { - val p = Config.config.getString("akka.rest.kerberos.kerberosDebug", "N/A") - if (p == "N/A") throw new IllegalActorStateException("The config option 'akka.rest.kerberos.kerberosDebug' is not defined in 'akka.conf'") + val p = Config.config.getString("akka.http.kerberos.kerberosDebug", "N/A") + if (p == "N/A") throw new IllegalActorStateException("The config option 'akka.http.kerberos.kerberosDebug' is not defined in 'akka.conf'") p } /** * is not used by this authenticator, so accept an empty value */ - lazy val realm = Config.config.getString("akka.rest.kerberos.realm", "") + lazy val realm = Config.config.getString("akka.http.kerberos.realm", "") /** * verify the kerberos token from a client with the server