Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/phase/release2_0' into feature/a…
Browse files Browse the repository at this point in the history
…utomate_json_rpc_tests
  • Loading branch information
KonradStaniec committed Sep 17, 2018
2 parents ddbb6d8 + 7c13ced commit bd0ed31
Show file tree
Hide file tree
Showing 3 changed files with 329 additions and 298 deletions.
29 changes: 12 additions & 17 deletions src/main/scala/io/iohk/ethereum/network/PeerActor.scala
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
package io.iohk.ethereum.network

import java.net.{InetSocketAddress, URI}
import java.net.{ InetSocketAddress, URI }

import akka.actor.SupervisorStrategy.Escalate
import io.iohk.ethereum.network.PeerManagerActor.PeerConfiguration
import akka.actor._
import akka.util.ByteString
import io.iohk.ethereum.network.p2p._
import io.iohk.ethereum.network.p2p.messages.WireProtocol._
import io.iohk.ethereum.network.p2p.messages.Versions
import io.iohk.ethereum.network.rlpx.{AuthHandshaker, RLPxConnectionHandler}
import io.iohk.ethereum.network.PeerActor.Status._
import io.iohk.ethereum.network.PeerEventBusActor.PeerEvent.{MessageFromPeer, PeerHandshakeSuccessful}
import io.iohk.ethereum.network.PeerEventBusActor.PeerEvent.{ MessageFromPeer, PeerHandshakeSuccessful }
import io.iohk.ethereum.network.PeerEventBusActor.Publish
import io.iohk.ethereum.network.PeerManagerActor.PeerConfiguration
import io.iohk.ethereum.network.handshaker.Handshaker
import io.iohk.ethereum.network.handshaker.Handshaker.HandshakeComplete.{HandshakeFailure, HandshakeSuccess}
import io.iohk.ethereum.network.handshaker.Handshaker.{HandshakeResult, NextMessage}
import io.iohk.ethereum.network.handshaker.Handshaker.HandshakeComplete.{ HandshakeFailure, HandshakeSuccess }
import io.iohk.ethereum.network.handshaker.Handshaker.{ HandshakeResult, NextMessage }
import io.iohk.ethereum.network.p2p._
import io.iohk.ethereum.network.p2p.messages.Versions
import io.iohk.ethereum.network.p2p.messages.WireProtocol._
import io.iohk.ethereum.network.rlpx.RLPxConnectionHandler.RLPxConfiguration
import io.iohk.ethereum.network.rlpx.{ AuthHandshaker, RLPxConnectionHandler }
import org.bouncycastle.util.encoders.Hex


Expand All @@ -39,7 +39,7 @@ class PeerActor[R <: HandshakeResult](
extends Actor with ActorLogging with Stash {

import PeerActor._
import context.{dispatcher, system}
import context.{ dispatcher, system }

override val supervisorStrategy: OneForOneStrategy =
OneForOneStrategy() {
Expand Down Expand Up @@ -154,7 +154,6 @@ class PeerActor[R <: HandshakeResult](
val newTimeout = scheduler.scheduleOnce(timeoutTime, self, ResponseTimeout)
context become processingHandshaking(handshaker, rlpxConnection, newTimeout, numRetries)


case Left(HandshakeSuccess(handshakeResult)) =>
rlpxConnection.uriOpt.foreach { uri =>knownNodesManager ! KnownNodesManager.AddKnownNode(uri) }
context become new HandshakedPeer(rlpxConnection, handshakeResult).receive
Expand Down Expand Up @@ -246,10 +245,6 @@ class PeerActor[R <: HandshakeResult](

class HandshakedPeer(rlpxConnection: RLPxConnection, handshakeResult: R) {

if (incomingConnection) {
context.parent ! IncomingConnectionHandshakeSuccess(peerId, peer)
}

peerEventBus ! Publish(PeerHandshakeSuccessful(peer, handshakeResult))

/**
Expand Down Expand Up @@ -313,13 +308,13 @@ object PeerActor {

case class HandleConnection(connection: ActorRef, remoteAddress: InetSocketAddress)

case class IncomingConnectionHandshakeSuccess(peerId: PeerId, peer: Peer)
case class IncomingConnectionHandshakeSuccess(peer: Peer)

case class ConnectTo(uri: URI)

case class SendMessage(message: MessageSerializable)

case class PeerClosedConnection(peerAddress: String, reason: Long)
case class PeerClosedConnection(peerHostAddress: String, reason: Long)

private case object RetryConnectionTimeout

Expand Down
Loading

0 comments on commit bd0ed31

Please sign in to comment.