You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ch...@apache.org on 2010/11/05 16:41:41 UTC
svn commit: r1031633 - in /activemq/activemq-apollo/trunk:
apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Broker.scala
apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/RuntimeResource.scala
Author: chirino
Date: Fri Nov 5 15:41:40 2010
New Revision: 1031633
URL: http://svn.apache.org/viewvc?rev=1031633&view=rev
Log:
Better host-name configuration element support. They are actually used.
Modified:
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Broker.scala
activemq/activemq-apollo/trunk/apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/RuntimeResource.scala
Modified: activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Broker.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Broker.scala?rev=1031633&r1=1031632&r2=1031633&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Broker.scala (original)
+++ activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Broker.scala Fri Nov 5 15:41:40 2010
@@ -30,6 +30,7 @@ import java.util.concurrent.atomic.Atomi
import java.util.concurrent.ConcurrentHashMap
import org.apache.activemq.apollo.util._
import ReporterLevel._
+import collection.mutable.LinkedHashMap
/**
* <p>
@@ -167,9 +168,11 @@ class Broker() extends BaseService with
var config: BrokerDTO = defaultConfig
- var dataDirectory: File = null
- var defaultVirtualHost: VirtualHost = null
- var virtualHosts: Map[AsciiBuffer, VirtualHost] = Map()
+ var data_directory: File = null
+ var default_virtual_host: VirtualHost = null
+ val virtual_hosts = LinkedHashMap[AsciiBuffer, VirtualHost]()
+ val virtual_hosts_by_hostname = new LinkedHashMap[AsciiBuffer, VirtualHost]()
+
var connectors: List[Connector] = Nil
val dispatchQueue = createQueue("broker");
@@ -206,15 +209,20 @@ class Broker() extends BaseService with
// create the runtime objects from the config
{
- dataDirectory = new File(config.basedir)
- defaultVirtualHost = null
+ data_directory = new File(config.basedir)
+ default_virtual_host = null
for (c <- config.virtual_hosts) {
val host = new VirtualHost(this, virtual_host_id_counter.incrementAndGet)
host.configure(c, this)
- virtualHosts += ascii(c.id)-> host
+ virtual_hosts += ascii(c.id)-> host
// first defined host is the default virtual host
- if( defaultVirtualHost == null ) {
- defaultVirtualHost = host
+ if( default_virtual_host == null ) {
+ default_virtual_host = host
+ }
+
+ // add all the host names of the virtual host to the virtual_hosts_by_hostname map..
+ c.host_names.foreach { name=>
+ virtual_hosts_by_hostname += ascii(name)->host
}
}
for (c <- config.connectors) {
@@ -226,7 +234,7 @@ class Broker() extends BaseService with
// Start up the virtual hosts
val tracker = new LoggingTracker("broker startup", dispatchQueue)
- virtualHosts.valuesIterator.foreach( x=>
+ virtual_hosts.valuesIterator.foreach( x=>
tracker.start(x)
)
@@ -249,18 +257,18 @@ class Broker() extends BaseService with
tracker.stop(x)
)
// Shutdown the virtual host services
- virtualHosts.valuesIterator.foreach( x=>
+ virtual_hosts.valuesIterator.foreach( x=>
tracker.stop(x)
)
tracker.callback(onCompleted)
}
def getVirtualHost(name: AsciiBuffer) = dispatchQueue ! {
- virtualHosts.getOrElse(name, null)
+ virtual_hosts_by_hostname.getOrElse(name, null)
}
def getDefaultVirtualHost = dispatchQueue ! {
- defaultVirtualHost
+ default_virtual_host
}
}
Modified: activemq/activemq-apollo/trunk/apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/RuntimeResource.scala
URL: http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/RuntimeResource.scala?rev=1031633&r1=1031632&r2=1031633&view=diff
==============================================================================
--- activemq/activemq-apollo/trunk/apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/RuntimeResource.scala (original)
+++ activemq/activemq-apollo/trunk/apollo-web/src/main/scala/org/apache/activemq/apollo/web/resources/RuntimeResource.scala Fri Nov 5 15:41:40 2010
@@ -53,7 +53,7 @@ case class RuntimeResource(parent:Broker
private def with_virtual_host[T](id:Long)(func: (VirtualHost, Option[T]=>Unit)=>Unit):T = {
with_broker { case (broker, cb) =>
- broker.virtualHosts.valuesIterator.find( _.id == id) match {
+ broker.virtual_hosts.valuesIterator.find( _.id == id) match {
case Some(virtualHost)=>
virtualHost.dispatchQueue {
func(virtualHost, cb)
@@ -75,7 +75,7 @@ case class RuntimeResource(parent:Broker
result.state_since = broker.serviceState.since
result.config = broker.config
- broker.virtualHosts.values.foreach{ host=>
+ broker.virtual_hosts.values.foreach{ host=>
// TODO: may need to sync /w virtual host's dispatch queue
result.virtual_hosts.add( new LongIdLabeledDTO(host.id, host.config.id) )
}