From 6bd64d55bde1a4a03f9199be368135fe5272b534 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20S=C3=A1ndor=20Varga?= Date: Wed, 12 Dec 2012 13:39:57 +0100 Subject: [PATCH] - Fixes in contrib and docs - Fixed getExternalAddressFor --- .../contrib/pattern/ReliableProxySpec.scala | 2 +- .../remoting/RemoteDeploymentDocSpec.scala | 6 +++--- .../akka/remote/RemoteActorRefProvider.scala | 2 +- .../src/main/scala/akka/remote/Remoting.scala | 5 +---- .../remote/transport/netty/UdpSupport.scala | 18 +++++++++--------- 5 files changed, 15 insertions(+), 18 deletions(-) diff --git a/akka-contrib/src/multi-jvm/scala/akka/contrib/pattern/ReliableProxySpec.scala b/akka-contrib/src/multi-jvm/scala/akka/contrib/pattern/ReliableProxySpec.scala index f71bb0116b..f201613cc3 100644 --- a/akka-contrib/src/multi-jvm/scala/akka/contrib/pattern/ReliableProxySpec.scala +++ b/akka-contrib/src/multi-jvm/scala/akka/contrib/pattern/ReliableProxySpec.scala @@ -10,7 +10,7 @@ import akka.remote.testkit.MultiNodeConfig import akka.remote.testkit.MultiNodeSpec import akka.remote.testkit.STMultiNodeSpec import org.scalatest.BeforeAndAfterEach -import akka.remote.testconductor.Direction +import akka.remote.transport.ThrottlerTransportAdapter.Direction import akka.actor.Props import akka.actor.Actor import akka.testkit.ImplicitSender diff --git a/akka-docs/rst/scala/code/docs/remoting/RemoteDeploymentDocSpec.scala b/akka-docs/rst/scala/code/docs/remoting/RemoteDeploymentDocSpec.scala index dc9b4e2ea5..c9da680844 100644 --- a/akka-docs/rst/scala/code/docs/remoting/RemoteDeploymentDocSpec.scala +++ b/akka-docs/rst/scala/code/docs/remoting/RemoteDeploymentDocSpec.scala @@ -20,7 +20,7 @@ object RemoteDeploymentDocSpec { class RemoteDeploymentDocSpec extends AkkaSpec(""" akka.actor.provider = "akka.remote.RemoteActorRefProvider" - akka.remote.netty.port = 0 + akka.remoting.transports.tcp.port = 0 """) with ImplicitSender { import RemoteDeploymentDocSpec._ @@ -42,8 +42,8 @@ class RemoteDeploymentDocSpec extends AkkaSpec(""" "demonstrate address extractor" in { //#make-address - val one = AddressFromURIString("akka://sys@host:1234") - val two = Address("akka", "sys", "host", 1234) // this gives the same + val one = AddressFromURIString("tcp.akka://sys@host:1234") + val two = Address("tcp.akka", "sys", "host", 1234) // this gives the same //#make-address one must be === two } diff --git a/akka-remote/src/main/scala/akka/remote/RemoteActorRefProvider.scala b/akka-remote/src/main/scala/akka/remote/RemoteActorRefProvider.scala index 3e2f25f3d5..5b2177f290 100644 --- a/akka-remote/src/main/scala/akka/remote/RemoteActorRefProvider.scala +++ b/akka-remote/src/main/scala/akka/remote/RemoteActorRefProvider.scala @@ -228,7 +228,7 @@ class RemoteActorRefProvider( def getExternalAddressFor(addr: Address): Option[Address] = { addr match { case _ if hasAddress(addr) ⇒ Some(local.rootPath.address) - case Address("akka", _, Some(_), Some(_)) ⇒ Some(transport.localAddressForRemote(addr)) + case Address("akka", _, Some(_), Some(_)) ⇒ Some(transport.defaultAddress) case _ ⇒ None } } diff --git a/akka-remote/src/main/scala/akka/remote/Remoting.scala b/akka-remote/src/main/scala/akka/remote/Remoting.scala index add971bf1a..7313954232 100644 --- a/akka-remote/src/main/scala/akka/remote/Remoting.scala +++ b/akka-remote/src/main/scala/akka/remote/Remoting.scala @@ -292,7 +292,7 @@ private[remote] object EndpointManager { def removeIfNotGated(endpoint: ActorRef): Unit = { endpointToAddress.get(endpoint) foreach { address ⇒ - addressToEndpointAndPolicy.get(address) foreach { + addressToEndpointAndPolicy.get(address) foreach { case Pass(_) ⇒ addressToEndpointAndPolicy = addressToEndpointAndPolicy - address case _ ⇒ } @@ -475,9 +475,6 @@ private[remote] class EndpointManager(conf: Config, log: LoggingAdapter) extends AkkaPduProtobufCodec)) .withDispatcher("akka.remoting.writer-dispatcher"), "endpointWriter-" + URLEncoder.encode(remoteAddress.toString, "utf-8") + "-" + endpointId.next())) - - context.watch(endpoint) - } private def retryGateOpen(timeOfFailure: Long): Boolean = (timeOfFailure + settings.RetryGateClosedFor) < System.nanoTime() diff --git a/akka-remote/src/main/scala/akka/remote/transport/netty/UdpSupport.scala b/akka-remote/src/main/scala/akka/remote/transport/netty/UdpSupport.scala index a15908a0cd..73ac1c7292 100644 --- a/akka-remote/src/main/scala/akka/remote/transport/netty/UdpSupport.scala +++ b/akka-remote/src/main/scala/akka/remote/transport/netty/UdpSupport.scala @@ -20,15 +20,15 @@ private[remote] trait UdpHandlers extends CommonHandlers with HasTransport { msg: ChannelBuffer, remoteSocketAddress: InetSocketAddress): Unit = { transport.udpConnectionTable.putIfAbsent(remoteSocketAddress, listener) match { - case null => listener notify InboundPayload(ByteString(msg.array())) - case oldReader => + case null ⇒ listener notify InboundPayload(ByteString(msg.array())) + case oldReader ⇒ throw new NettyTransportException(s"Listener $listener attempted to register for remote address $remoteSocketAddress" + - s" but $oldReader was already registered.", null) + s" but $oldReader was already registered.", null) } } override def onMessage(ctx: ChannelHandlerContext, e: MessageEvent): Unit = e.getRemoteAddress match { - case inetSocketAddress: InetSocketAddress => + case inetSocketAddress: InetSocketAddress ⇒ if (!transport.udpConnectionTable.containsKey(inetSocketAddress)) { e.getChannel.setReadable(false) initUdp(e.getChannel, e.getRemoteAddress, e.getMessage.asInstanceOf[ChannelBuffer]) @@ -36,7 +36,7 @@ private[remote] trait UdpHandlers extends CommonHandlers with HasTransport { val listener = transport.udpConnectionTable.get(inetSocketAddress) listener notify InboundPayload(ByteString(e.getMessage.asInstanceOf[ChannelBuffer].array())) } - case _ => + case _ ⇒ } def initUdp(channel: Channel, remoteSocketAddress: SocketAddress, msg: ChannelBuffer): Unit @@ -57,9 +57,9 @@ private[remote] class UdpClientHandler(_transport: NettyTransport, _statusPromis } private[remote] class UdpAssociationHandle(val localAddress: Address, - val remoteAddress: Address, - private val channel: Channel, - private val transport: NettyTransport) extends AssociationHandle { + val remoteAddress: Address, + private val channel: Channel, + private val transport: NettyTransport) extends AssociationHandle { override val readHandlerPromise: Promise[HandleEventListener] = Promise() @@ -74,6 +74,6 @@ private[remote] class UdpAssociationHandle(val localAddress: Address, } override def disassociate(): Unit = try channel.close() - finally transport.udpConnectionTable.remove(transport.addressToSocketAddress(remoteAddress)) + finally transport.udpConnectionTable.remove(transport.addressToSocketAddress(remoteAddress)) } \ No newline at end of file