/// <inheritdoc /> protected override IManagedNetworkClient <PSOBBGamePacketPayloadClient, PSOBBGamePacketPayloadServer> BuildOutgoingSessionManagedClient(NetworkClientBase clientBase, INetworkSerializationService serializeService) { //Copied from the test client project IManagedNetworkClient <PSOBBGamePacketPayloadClient, PSOBBGamePacketPayloadServer> client = clientBase .AddCryptHandling(ServerEncryptionService, ServerDecryptionService) .AddBufferredWrite(4) .AddHeaderReading <PSOBBPacketHeader>(serializeService, 2) .AddNetworkMessageReading(serializeService) .For <PSOBBGamePacketPayloadServer, PSOBBGamePacketPayloadClient, IPacketPayload>(new PSOBBPacketHeaderFactory()) .AddReadBufferClearing() .Build() .AsManagedSession(); return(client); }
/// <inheritdoc /> protected override IManagedNetworkServerClient <PSOBBGamePacketPayloadServer, PSOBBGamePacketPayloadClient> BuildIncomingSessionManagedClient(NetworkClientBase clientBase, INetworkSerializationService serializeService) { ResetCrypto(); Logger.Info($"Client connecting to Proxy App with Listener: {this.ServerAddress.AddressEndpoint}:{this.ServerAddress.Port}"); IManagedNetworkServerClient <PSOBBGamePacketPayloadServer, PSOBBGamePacketPayloadClient> session = clientBase .AddCryptHandling(ClientEncryptionService, ClientDecryptionService) .AddBufferredWrite(4) .AddHeaderReading <PSOBBPacketHeader>(serializeService, 2) .AddNetworkMessageReading(serializeService) .For <PSOBBGamePacketPayloadClient, PSOBBGamePacketPayloadServer, IPacketPayload>(new PSOBBPacketHeaderFactory()) .AddReadBufferClearing() .Build() .AsManagedSession(); return(session); }