Author: chirino
Date: Tue Mar 27 17:29:32 2012
New Revision: 1305913
URL: http://svn.apache.org/viewvc?rev=1305913&view=rev
Log:
Convert the Sink interface to an abstract base class since invoking virtual
methods is sightly more efficient than invoking interface methods.
Modified:
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Router.scala
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Sink.scala
Modified:
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Router.scala
URL:
http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Router.scala?rev=1305913&r1=1305912&r2=1305913&view=diff
==============================================================================
---
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Router.scala
(original)
+++
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Router.scala
Tue Mar 27 17:29:32 2012
@@ -203,9 +203,14 @@ object DeliveryProducerRoute extends Log
/**
* @author <a href="http://hiramchirino.com">Hiram Chirino</a>
*/
-abstract class DeliveryProducerRoute(router:Router) extends BaseRetained with
BindableDeliveryProducer with Sink[Delivery] {
+abstract class DeliveryProducerRoute(router:Router) extends Sink[Delivery]
with BindableDeliveryProducer {
import DeliveryProducerRoute._
+ val reained_base = new BaseRetained
+ def release = reained_base.release
+ def retain = reained_base.retain
+ def retained = reained_base.retained
+
var targets = List[DeliverySession]()
val store = if(router!=null) {
router.virtual_host.store
Modified:
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Sink.scala
URL:
http://svn.apache.org/viewvc/activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Sink.scala?rev=1305913&r1=1305912&r2=1305913&view=diff
==============================================================================
---
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Sink.scala
(original)
+++
activemq/activemq-apollo/trunk/apollo-broker/src/main/scala/org/apache/activemq/apollo/broker/Sink.scala
Tue Mar 27 17:29:32 2012
@@ -28,7 +28,7 @@ import collection.mutable.HashSet
* <p>
* @author <a href="http://hiramchirino.com">Hiram Chirino</a>
*/
-trait Sink[T] {
+abstract class Sink[T] {
/**
* @return true if the sink is full