Remove scroller and parametize UDP listener

This commit is contained in:
Chord 2016-05-05 11:36:28 -04:00
parent cdf240cf66
commit 10f54b7980
3 changed files with 8 additions and 39 deletions

View file

@ -106,51 +106,18 @@ class LoginSessionActor extends Actor with MDCContextAware {
case default => log.debug(s"Unhandled GamePacket ${pkt}") case default => log.debug(s"Unhandled GamePacket ${pkt}")
} }
val scrollerWindow = 20 val serverName = "PSForever"
val scrollerText = "PSForever_The_next_generation_of_PlanetSide_Hey_what_a_neat_scroller!"
var scrollerOffset = 0
def updateServerList = { def updateServerList = {
val start = scrollerOffset % scrollerText.length
var end = (scrollerOffset+scrollerWindow) % scrollerText.length
var finalName = ""
if(end < start)
finalName = scrollerText.substring(start, scrollerText.length) + ";" + scrollerText.substring(0, end)
else
finalName = scrollerText.substring(start, end)
scrollerOffset += 1
//println(finalName)
val msg = VNLWorldStatusMessage("Welcome to PlanetSide! ", val msg = VNLWorldStatusMessage("Welcome to PlanetSide! ",
Vector( Vector(
WorldInformation(finalName, WorldStatus.Up, ServerType.Development, WorldInformation(serverName, WorldStatus.Up, ServerType.Development,
Vector(WorldConnectionInfo(new InetSocketAddress(InetAddress.getByName("127.0.0.1"), 51000))), EmpireNeed.TR) Vector(WorldConnectionInfo(new InetSocketAddress(InetAddress.getByName("127.0.0.1"), 51000))), EmpireNeed.TR)
)) ))
sendResponse(PacketCoding.CreateGamePacket(0, msg)) sendResponse(PacketCoding.CreateGamePacket(0, msg))
} }
/*
val packet = LoginRespMessage("AAAABBBBCCCCDDDD",
hex"00000000 18FABE0C 00000000 00000000",
0, 1, 2, 685276011,
"AAAAAAAA", 0, false
)
sendResponse(PacketCoding.CreateGamePacket(0, packet))
val msg = VNLWorldStatusMessage("Welcome to PlanetSide! ",
Vector(
WorldInformation("PSForever", WorldStatus.Up, ServerType.Development,
Vector(WorldConnectionInfo(new InetSocketAddress(InetAddress.getByName("127.0.0.1"), 51000))), EmpireNeed.TR)
))
sendResponse(PacketCoding.CreateGamePacket(0, msg))
*/
def failWithError(error : String) = { def failWithError(error : String) = {
log.error(error) log.error(error)
//sendResponse(PacketCoding.CreateControlPacket(ConnectionClose())) //sendResponse(PacketCoding.CreateControlPacket(ConnectionClose()))

View file

@ -1,4 +1,6 @@
// Copyright (c) 2016 PSForever.net to present // Copyright (c) 2016 PSForever.net to present
import java.net.InetAddress
import akka.actor.{ActorSystem, Props} import akka.actor.{ActorSystem, Props}
import ch.qos.logback.classic.LoggerContext import ch.qos.logback.classic.LoggerContext
import ch.qos.logback.core.status._ import ch.qos.logback.core.status._
@ -63,6 +65,6 @@ object PsLogin {
//val system = ActorSystem("PsLogin", Some(ConfigFactory.parseMap(config)), None, Some(MDCPropagatingExecutionContextWrapper(ExecutionContext.Implicits.global))) //val system = ActorSystem("PsLogin", Some(ConfigFactory.parseMap(config)), None, Some(MDCPropagatingExecutionContextWrapper(ExecutionContext.Implicits.global)))
val system = ActorSystem("PsLogin", ConfigFactory.parseMap(config)) val system = ActorSystem("PsLogin", ConfigFactory.parseMap(config))
val session = system.actorOf(Props[SessionRouter], "session-router") val session = system.actorOf(Props[SessionRouter], "session-router")
val listener = system.actorOf(Props(new UdpListener(session)), "udp-listener") val listener = system.actorOf(Props(new UdpListener(session, InetAddress.getLocalHost, 51000)), "login-udp-endpoint")
} }
} }

View file

@ -11,11 +11,11 @@ final case class SendPacket(msg : ByteVector, to : InetSocketAddress)
final case class Hello() final case class Hello()
final case class HelloFriend(next: ActorRef) final case class HelloFriend(next: ActorRef)
class UdpListener(nextActor: ActorRef) extends Actor { class UdpListener(nextActor: ActorRef, address : InetAddress, port : Int) extends Actor {
private val logger = org.log4s.getLogger private val logger = org.log4s.getLogger
import context.system import context.system
IO(Udp) ! Udp.Bind(self, new InetSocketAddress(InetAddress.getLocalHost, 51000)) IO(Udp) ! Udp.Bind(self, new InetSocketAddress(address, port))
var bytesRecevied = 0L var bytesRecevied = 0L
var bytesSent = 0L var bytesSent = 0L
@ -37,6 +37,6 @@ class UdpListener(nextActor: ActorRef) extends Actor {
nextActor ! ReceivedPacket(data.toByteVector, remote) nextActor ! ReceivedPacket(data.toByteVector, remote)
case Udp.Unbind => socket ! Udp.Unbind case Udp.Unbind => socket ! Udp.Unbind
case Udp.Unbound => context.stop(self) case Udp.Unbound => context.stop(self)
case x : Any => logger.error("Unhandled message: " + x.toString) case default => logger.error(s"Unhandled message: $default")
} }
} }