From 8aeadf114356bf53c5cc5bb36e61c178cf077e68 Mon Sep 17 00:00:00 2001 From: betasteward Date: Tue, 23 Jun 2015 22:08:39 -0400 Subject: [PATCH] added sendPlayerAction --- .../main/java/org/mage/network/Client.java | 13 +++-- .../handlers/client/ClientMessageHandler.java | 17 ++++-- .../mage/network/interfaces/MageServer.java | 3 + .../network/model/PlayerActionRequest.java | 30 ++++++++++ .../src/main/java/mage/server/ServerMain.java | 58 ++++--------------- 5 files changed, 65 insertions(+), 56 deletions(-) create mode 100644 Mage.Network/src/main/java/org/mage/network/model/PlayerActionRequest.java diff --git a/Mage.Network/src/main/java/org/mage/network/Client.java b/Mage.Network/src/main/java/org/mage/network/Client.java index 69b62b146ea..6e3da7cc634 100644 --- a/Mage.Network/src/main/java/org/mage/network/Client.java +++ b/Mage.Network/src/main/java/org/mage/network/Client.java @@ -13,6 +13,7 @@ import io.netty.handler.codec.serialization.ObjectEncoder; import io.netty.handler.ssl.SslContext; import io.netty.handler.ssl.util.InsecureTrustManagerFactory; import io.netty.handler.timeout.IdleStateHandler; +import java.io.Serializable; import java.util.List; import java.util.Set; import java.util.UUID; @@ -23,7 +24,6 @@ import mage.constants.PlayerAction; import mage.game.match.MatchOptions; import mage.game.tournament.TournamentOptions; import mage.interfaces.ServerState; -import mage.players.net.UserSkipPrioritySteps; import mage.remote.Connection; import mage.utils.MageVersion; import mage.view.DraftPickView; @@ -34,11 +34,10 @@ import mage.view.UserDataView; import mage.view.UserView; import org.apache.log4j.Logger; import org.mage.network.handlers.ExceptionHandler; -import org.mage.network.handlers.MessageHandler; -import org.mage.network.handlers.client.HeartbeatHandler; import org.mage.network.handlers.PingMessageHandler; import org.mage.network.handlers.client.ClientMessageHandler; import org.mage.network.handlers.client.ClientRegisteredMessageHandler; +import org.mage.network.handlers.client.HeartbeatHandler; import org.mage.network.interfaces.MageClient; import org.mage.network.model.MessageType; @@ -279,8 +278,12 @@ public class Client { } } - public void sendPlayerAction(PlayerAction passPriorityAction, UUID gameId, Object data) { - throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. + public void sendPlayerAction(PlayerAction passPriorityAction, UUID gameId, Serializable data) { + try { + clientMessageHandler.sendPlayerAction(passPriorityAction, gameId, data); + } catch (Exception ex) { + logger.error("Error swaping seats", ex); + } } public TableView getTable(UUID roomId, UUID tableId) { diff --git a/Mage.Network/src/main/java/org/mage/network/handlers/client/ClientMessageHandler.java b/Mage.Network/src/main/java/org/mage/network/handlers/client/ClientMessageHandler.java index ebfde8a12dc..d58d4ee063e 100644 --- a/Mage.Network/src/main/java/org/mage/network/handlers/client/ClientMessageHandler.java +++ b/Mage.Network/src/main/java/org/mage/network/handlers/client/ClientMessageHandler.java @@ -1,18 +1,15 @@ package org.mage.network.handlers.client; -import org.mage.network.model.SendPlayerManaTypeRequest; -import org.mage.network.model.SendPlayerIntegerRequest; -import org.mage.network.model.SendPlayerStringRequest; -import org.mage.network.model.SendPlayerUUIDRequest; -import org.mage.network.model.SendPlayerBooleanRequest; import io.netty.channel.ChannelHandlerContext; import io.netty.channel.SimpleChannelInboundHandler; +import java.io.Serializable; import java.util.List; import java.util.UUID; import java.util.concurrent.BlockingQueue; import java.util.concurrent.LinkedBlockingQueue; import mage.cards.decks.DeckCardLists; import mage.constants.ManaType; +import mage.constants.PlayerAction; import mage.game.match.MatchOptions; import mage.view.RoomView; import mage.view.TableView; @@ -28,7 +25,13 @@ import org.mage.network.model.JoinGameRequest; import org.mage.network.model.JoinTableRequest; import org.mage.network.model.LeaveChatRequest; import org.mage.network.model.LeaveTableRequest; +import org.mage.network.model.PlayerActionRequest; import org.mage.network.model.RemoveTableRequest; +import org.mage.network.model.SendPlayerBooleanRequest; +import org.mage.network.model.SendPlayerIntegerRequest; +import org.mage.network.model.SendPlayerManaTypeRequest; +import org.mage.network.model.SendPlayerStringRequest; +import org.mage.network.model.SendPlayerUUIDRequest; import org.mage.network.model.ServerMessagesRequest; import org.mage.network.model.StartMatchRequest; import org.mage.network.model.SwapSeatRequest; @@ -181,4 +184,8 @@ public class ClientMessageHandler extends SimpleChannelInboundHandler