mirror of
https://github.com/correl/mage.git
synced 2025-04-02 03:18:09 -09:00
big client update - moved Session to Mage.Common project, this will allow other clients to reuse connection logic
This commit is contained in:
parent
b9f4f7abf4
commit
8b1c463d35
80 changed files with 417 additions and 610 deletions
Mage.Client/src
main/java/mage/client
MageFrame.java
cards
chat
dialog
AboutDialog.formAboutDialog.javaJoinTableDialog.javaNewTableDialog.javaNewTournamentDialog.javaReconnectDialog.javaTableWaitingDialog.formTableWaitingDialog.java
draft
game
plugins/adapters
remote
table
tournament
util
test/java/mage/client/game
Mage.Common/src/mage
constants
interfaces
remote
MageRemoteException.javaRMIClientDaemon.javaRemoteMethodCall.javaSession.java
method
Ack.javaCallback.javaCheat.javaConcedeGame.javaCreateTable.javaCreateTournamentTable.javaDeregisterClient.javaGetConnectedPlayers.javaGetGameChatId.javaGetMainRoomId.javaGetRoomChatId.javaGetServerState.javaGetTable.javaGetTableChatId.javaGetTables.javaGetTournament.javaGetTournamentChatId.javaIsTableOwner.javaJoinChat.javaJoinDraft.javaJoinGame.javaJoinTable.javaJoinTournament.javaJoinTournamentTable.javaLeaveChat.javaLeaveTable.javaNextPlay.javaPing.javaPreviousPlay.javaRegisterClient.javaRemoveTable.javaReplayGame.javaSendCardPick.javaSendChatMessage.javaSendPlayerBoolean.javaSendPlayerInteger.javaSendPlayerString.javaSendPlayerUUID.javaStartChallenge.javaStartGame.javaStartReplay.javaStartTournament.javaStopReplay.javaStopWatching.javaSubmitDeck.javaSwapSeats.javaWatchGame.javaWatchTable.java
|
@ -46,7 +46,8 @@ import mage.client.constants.Constants.DeckEditorMode;
|
|||
import mage.client.deckeditor.collection.viewer.CollectionViewerPane;
|
||||
import mage.client.dialog.*;
|
||||
import mage.client.plugins.impl.Plugins;
|
||||
import mage.client.remote.Session;
|
||||
import mage.interfaces.callback.ClientCallback;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.EDTExceptionHandler;
|
||||
import mage.client.util.gui.ArrowBuilder;
|
||||
import mage.components.ImagePanel;
|
||||
|
@ -72,13 +73,21 @@ import java.util.List;
|
|||
import java.util.prefs.Preferences;
|
||||
import javax.swing.event.PopupMenuEvent;
|
||||
import javax.swing.event.PopupMenuListener;
|
||||
import mage.client.chat.ChatPanel;
|
||||
import mage.client.components.MageUI;
|
||||
import mage.client.deckeditor.DeckEditorPane;
|
||||
import mage.client.draft.DraftPane;
|
||||
import mage.client.draft.DraftPanel;
|
||||
import mage.client.game.GamePane;
|
||||
import mage.client.remote.Session.SessionState;
|
||||
import mage.client.game.GamePanel;
|
||||
import mage.client.remote.CallbackClientImpl;
|
||||
import mage.client.table.TablesPane;
|
||||
import mage.client.tournament.TournamentPane;
|
||||
import mage.client.tournament.TournamentPanel;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.game.match.MatchOptions;
|
||||
import mage.interfaces.Client;
|
||||
import mage.interfaces.callback.CallbackClient;
|
||||
import mage.utils.MageVersion;
|
||||
import mage.sets.Sets;
|
||||
import mage.remote.Connection;
|
||||
|
@ -89,16 +98,24 @@ import org.apache.log4j.Logger;
|
|||
/**
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
*/
|
||||
public class MageFrame extends javax.swing.JFrame {
|
||||
public class MageFrame extends javax.swing.JFrame implements Client {
|
||||
|
||||
private final static Logger logger = Logger.getLogger(MageFrame.class);
|
||||
|
||||
private static Session session;
|
||||
private static CallbackClient callbackClient;
|
||||
private ConnectDialog connectDialog;
|
||||
private static Preferences prefs = Preferences.userNodeForPackage(MageFrame.class);
|
||||
private JLabel title;
|
||||
private Rectangle titleRectangle;
|
||||
private final static MageVersion version = new MageVersion(0, 7, 3);
|
||||
private UUID clientId;
|
||||
|
||||
private static Map<UUID, ChatPanel> chats = new HashMap<UUID, ChatPanel>();
|
||||
private static Map<UUID, GamePanel> games = new HashMap<UUID, GamePanel>();
|
||||
private static Map<UUID, DraftPanel> drafts = new HashMap<UUID, DraftPanel>();
|
||||
private static Map<UUID, TournamentPanel> tournaments = new HashMap<UUID, TournamentPanel>();
|
||||
private static MageUI ui = new MageUI();
|
||||
|
||||
/**
|
||||
* @return the session
|
||||
|
@ -115,7 +132,8 @@ public class MageFrame extends javax.swing.JFrame {
|
|||
return prefs;
|
||||
}
|
||||
|
||||
public static MageVersion getVersion() {
|
||||
@Override
|
||||
public MageVersion getVersion() {
|
||||
return version;
|
||||
}
|
||||
|
||||
|
@ -125,7 +143,8 @@ public class MageFrame extends javax.swing.JFrame {
|
|||
public MageFrame() {
|
||||
|
||||
setTitle("Mage, version " + version);
|
||||
|
||||
clientId = UUID.randomUUID();
|
||||
|
||||
EDTExceptionHandler.registerExceptionHandler();
|
||||
addWindowListener(new WindowAdapter() {
|
||||
@Override
|
||||
|
@ -151,9 +170,10 @@ public class MageFrame extends javax.swing.JFrame {
|
|||
this.setExtendedState(JFrame.MAXIMIZED_BOTH);
|
||||
|
||||
session = new Session(this);
|
||||
callbackClient = new CallbackClientImpl(this);
|
||||
connectDialog = new ConnectDialog();
|
||||
desktopPane.add(connectDialog, JLayeredPane.POPUP_LAYER);
|
||||
session.getUI().addComponent(MageComponents.DESKTOP_PANE, desktopPane);
|
||||
ui.addComponent(MageComponents.DESKTOP_PANE, desktopPane);
|
||||
|
||||
try {
|
||||
tablesPane = new TablesPane();
|
||||
|
@ -240,7 +260,7 @@ public class MageFrame extends javax.swing.JFrame {
|
|||
label.setBounds(0, 0, 180, 30);
|
||||
}
|
||||
|
||||
session.getUI().addButton(MageComponents.TABLES_MENU_BUTTON, btnGames);
|
||||
ui.addButton(MageComponents.TABLES_MENU_BUTTON, btnGames);
|
||||
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
|
@ -272,8 +292,8 @@ public class MageFrame extends javax.swing.JFrame {
|
|||
|
||||
desktopPane.add(popupContainer, JLayeredPane.POPUP_LAYER);
|
||||
|
||||
session.getUI().addComponent(MageComponents.CARD_INFO_PANE, cardInfoPane);
|
||||
session.getUI().addComponent(MageComponents.POPUP_CONTAINER, popupContainer);
|
||||
ui.addComponent(MageComponents.CARD_INFO_PANE, cardInfoPane);
|
||||
ui.addComponent(MageComponents.POPUP_CONTAINER, popupContainer);
|
||||
}
|
||||
|
||||
private void setBackground() {
|
||||
|
@ -723,7 +743,7 @@ public class MageFrame extends javax.swing.JFrame {
|
|||
private void btnAboutActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAboutActionPerformed
|
||||
AboutDialog aboutDialog = new AboutDialog();
|
||||
desktopPane.add(aboutDialog);
|
||||
aboutDialog.showDialog();
|
||||
aboutDialog.showDialog(version);
|
||||
}//GEN-LAST:event_btnAboutActionPerformed
|
||||
|
||||
public void exitApp() {
|
||||
|
@ -842,6 +862,72 @@ public class MageFrame extends javax.swing.JFrame {
|
|||
this.lblStatus.setText(status);
|
||||
}
|
||||
|
||||
public static MageUI getUI() {
|
||||
return ui;
|
||||
}
|
||||
|
||||
public static ChatPanel getChat(UUID chatId) {
|
||||
return chats.get(chatId);
|
||||
}
|
||||
|
||||
public static void addChat(UUID chatId, ChatPanel chatPanel) {
|
||||
chats.put(chatId, chatPanel);
|
||||
}
|
||||
|
||||
public static GamePanel getGame(UUID gameId) {
|
||||
return games.get(gameId);
|
||||
}
|
||||
|
||||
public static void addGame(UUID gameId, GamePanel gamePanel) {
|
||||
games.put(gameId, gamePanel);
|
||||
}
|
||||
|
||||
public static DraftPanel getDraft(UUID draftId) {
|
||||
return drafts.get(draftId);
|
||||
}
|
||||
|
||||
public static void addDraft(UUID draftId, DraftPanel draftPanel) {
|
||||
drafts.put(draftId, draftPanel);
|
||||
}
|
||||
|
||||
public static void addTournament(UUID tournamentId, TournamentPanel tournament) {
|
||||
tournaments.put(tournamentId, tournament);
|
||||
}
|
||||
|
||||
@Override
|
||||
public UUID getId() {
|
||||
return clientId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void connected(String message) {
|
||||
setStatusText(message);
|
||||
enableButtons();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void disconnected() {
|
||||
setStatusText("Not connected");
|
||||
disableButtons();
|
||||
hideGames();
|
||||
hideTables();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void showMessage(String message) {
|
||||
JOptionPane.showMessageDialog(desktopPane, message);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void showError(String message) {
|
||||
JOptionPane.showMessageDialog(desktopPane, message, "Error", JOptionPane.ERROR_MESSAGE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void processCallback(ClientCallback callback) {
|
||||
callbackClient.processCallback(callback);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class MagePaneMenuItem extends JCheckBoxMenuItem {
|
||||
|
|
|
@ -80,7 +80,7 @@ import mage.cards.MagePermanent;
|
|||
import mage.cards.TextPopup;
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.game.PlayAreaPanel;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.Config;
|
||||
import mage.client.util.DefaultActionCallback;
|
||||
import mage.client.util.ImageHelper;
|
||||
|
@ -382,13 +382,13 @@ public class Card extends MagePermanent implements MouseMotionListener, MouseLis
|
|||
List<UUID> targets = card.getTargets();
|
||||
if (targets != null) {
|
||||
for (UUID uuid : targets) {
|
||||
PlayAreaPanel p = session.getGame(gameId).getPlayers().get(uuid);
|
||||
PlayAreaPanel p = MageFrame.getGame(gameId).getPlayers().get(uuid);
|
||||
if (p != null) {
|
||||
Point target = p.getLocationOnScreen();
|
||||
Point me = this.getLocationOnScreen();
|
||||
ArrowBuilder.addArrow((int)me.getX() + 35, (int)me.getY(), (int)target.getX() + 40, (int)target.getY() - 40, Color.red);
|
||||
} else {
|
||||
for (PlayAreaPanel pa : session.getGame(gameId).getPlayers().values()) {
|
||||
for (PlayAreaPanel pa : MageFrame.getGame(gameId).getPlayers().values()) {
|
||||
MagePermanent permanent = pa.getBattlefieldPanel().getPermanents().get(uuid);
|
||||
if (permanent != null) {
|
||||
Point target = permanent.getLocationOnScreen();
|
||||
|
|
|
@ -39,11 +39,10 @@ import java.awt.event.KeyEvent;
|
|||
import java.util.*;
|
||||
import java.util.List;
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.view.ChatMessage.MessageColor;
|
||||
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
import mage.client.remote.Session.SessionState;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -52,7 +51,6 @@ import mage.client.remote.Session.SessionState;
|
|||
public class ChatPanel extends javax.swing.JPanel {
|
||||
|
||||
private UUID chatId;
|
||||
private UUID clientId;
|
||||
private Session session;
|
||||
|
||||
private List<String> players = new ArrayList<String>();
|
||||
|
@ -76,12 +74,13 @@ public class ChatPanel extends javax.swing.JPanel {
|
|||
public void connect(UUID chatId) {
|
||||
session = MageFrame.getSession();
|
||||
this.chatId = chatId;
|
||||
session.joinChat(chatId, this);
|
||||
if (session.joinChat(chatId)) {
|
||||
MageFrame.addChat(chatId, this);
|
||||
}
|
||||
}
|
||||
|
||||
public void disconnect() {
|
||||
if (session != null && session.getState() == SessionState.CONNECTED)
|
||||
session.leaveChat(chatId);
|
||||
session.leaveChat(chatId);
|
||||
}
|
||||
|
||||
public void receiveMessage(String message, MessageColor color) {
|
||||
|
|
|
@ -49,7 +49,7 @@
|
|||
<EmptySpace max="-2" attributes="0"/>
|
||||
<Component id="jLabel2" min="-2" max="-2" attributes="0"/>
|
||||
<EmptySpace max="-2" attributes="0"/>
|
||||
<Component id="jLabel3" pref="44" max="32767" attributes="0"/>
|
||||
<Component id="jLabel3" pref="48" max="32767" attributes="0"/>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Component id="btnOk" min="-2" max="-2" attributes="0"/>
|
||||
<EmptySpace max="-2" attributes="0"/>
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
package mage.client.dialog;
|
||||
|
||||
import mage.client.MageFrame;
|
||||
import mage.utils.MageVersion;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -48,8 +49,8 @@ public class AboutDialog extends MageDialog {
|
|||
this.modal = false;
|
||||
}
|
||||
|
||||
public void showDialog() {
|
||||
this.lblVersion.setText(MageFrame.getVersion().toString());
|
||||
public void showDialog(MageVersion version) {
|
||||
this.lblVersion.setText(version.toString());
|
||||
this.setLocation(100, 100);
|
||||
this.setVisible(true);
|
||||
}
|
||||
|
|
|
@ -38,7 +38,7 @@ package mage.client.dialog;
|
|||
import mage.client.*;
|
||||
import java.util.UUID;
|
||||
import javax.swing.JOptionPane;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.sets.Sets;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
|
|
|
@ -46,7 +46,7 @@ import javax.swing.SpinnerNumberModel;
|
|||
import mage.Constants.MultiplayerAttackOption;
|
||||
import mage.Constants.RangeOfInfluence;
|
||||
import mage.client.components.MageComponents;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.client.table.TablePlayerPanel;
|
||||
import mage.client.util.Event;
|
||||
import mage.client.util.Listener;
|
||||
|
@ -410,7 +410,7 @@ public class NewTableDialog extends MageDialog {
|
|||
|
||||
public void showDialog(UUID roomId) {
|
||||
session = MageFrame.getSession();
|
||||
session.getUI().addButton(MageComponents.NEW_TABLE_OK_BUTTON, btnOK);
|
||||
MageFrame.getUI().addButton(MageComponents.NEW_TABLE_OK_BUTTON, btnOK);
|
||||
this.player1Panel.setPlayerName(session.getUserName());
|
||||
cbGameType.setModel(new DefaultComboBoxModel(session.getGameTypes().toArray()));
|
||||
cbDeckType.setModel(new DefaultComboBoxModel(session.getDeckTypes()));
|
||||
|
|
|
@ -45,7 +45,7 @@ import mage.Constants.MultiplayerAttackOption;
|
|||
import mage.Constants.RangeOfInfluence;
|
||||
import mage.cards.ExpansionSet;
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.client.table.TournamentPlayerPanel;
|
||||
import mage.game.draft.DraftOptions;
|
||||
import mage.game.draft.DraftOptions.TimingOption;
|
||||
|
|
|
@ -37,7 +37,7 @@ import java.util.List;
|
|||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
import javax.swing.SwingWorker;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
|
||||
/**
|
||||
*
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
|
||||
<Form version="1.6" maxVersion="1.7" type="org.netbeans.modules.form.forminfo.JInternalFrameFormInfo">
|
||||
<Properties>
|
||||
<Property name="closable" type="boolean" value="false"/>
|
||||
<Property name="resizable" type="boolean" value="true"/>
|
||||
<Property name="title" type="java.lang.String" value="Waiting for players"/>
|
||||
</Properties>
|
||||
|
@ -41,7 +40,7 @@
|
|||
<DimensionLayout dim="1">
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
<Group type="102" attributes="0">
|
||||
<Component id="jSplitPane1" pref="267" max="32767" attributes="0"/>
|
||||
<Component id="jSplitPane1" pref="271" max="32767" attributes="0"/>
|
||||
<EmptySpace type="unrelated" min="-2" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="btnMoveDown" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
|
|
|
@ -40,7 +40,7 @@ import java.util.UUID;
|
|||
import javax.swing.SwingWorker;
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
import mage.client.components.MageComponents;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.view.SeatView;
|
||||
import mage.view.TableView;
|
||||
import org.apache.log4j.Logger;
|
||||
|
@ -69,7 +69,7 @@ public class TableWaitingDialog extends MageDialog {
|
|||
initComponents();
|
||||
|
||||
tableSeats.createDefaultColumnsFromModel();
|
||||
session.getUI().addButton(MageComponents.TABLE_WAITING_START_BUTTON, btnStart);
|
||||
MageFrame.getUI().addButton(MageComponents.TABLE_WAITING_START_BUTTON, btnStart);
|
||||
}
|
||||
|
||||
public void update(TableView table) {
|
||||
|
|
|
@ -41,7 +41,7 @@ import java.util.UUID;
|
|||
import javax.swing.Timer;
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.constants.Constants.SortBy;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.Event;
|
||||
import mage.client.util.Listener;
|
||||
import mage.view.DraftPickView;
|
||||
|
@ -81,7 +81,7 @@ public class DraftPanel extends javax.swing.JPanel {
|
|||
public synchronized void showDraft(UUID draftId) {
|
||||
this.draftId = draftId;
|
||||
session = MageFrame.getSession();
|
||||
session.addDraft(draftId, this);
|
||||
MageFrame.addDraft(draftId, this);
|
||||
if (!session.joinDraft(draftId))
|
||||
hideDraft();
|
||||
}
|
||||
|
|
|
@ -38,7 +38,7 @@ import javax.swing.JPopupMenu;
|
|||
import javax.swing.event.PopupMenuEvent;
|
||||
import javax.swing.event.PopupMenuListener;
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.gui.GuiDisplayUtil;
|
||||
import mage.view.AbilityPickerView;
|
||||
|
||||
|
|
|
@ -49,7 +49,7 @@ import javax.swing.SwingUtilities;
|
|||
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.components.MageTextArea;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
|
|
|
@ -57,7 +57,7 @@ import mage.client.dialog.PickNumberDialog;
|
|||
import mage.client.dialog.ShowCardsDialog;
|
||||
import mage.client.game.FeedbackPanel.FeedbackMode;
|
||||
import mage.client.plugins.impl.Plugins;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.Config;
|
||||
import mage.client.util.GameManager;
|
||||
import mage.client.util.PhaseManager;
|
||||
|
@ -153,7 +153,7 @@ public class GamePanel extends javax.swing.JPanel {
|
|||
this.gameId = gameId;
|
||||
this.playerId = playerId;
|
||||
session = MageFrame.getSession();
|
||||
session.addGame(gameId, this);
|
||||
MageFrame.addGame(gameId, this);
|
||||
this.feedbackPanel.init(gameId);
|
||||
this.feedbackPanel.clear();
|
||||
this.abilityPicker.init(session, gameId);
|
||||
|
@ -171,7 +171,7 @@ public class GamePanel extends javax.swing.JPanel {
|
|||
this.gameId = gameId;
|
||||
this.playerId = null;
|
||||
session = MageFrame.getSession();
|
||||
session.addGame(gameId, this);
|
||||
MageFrame.addGame(gameId, this);
|
||||
this.feedbackPanel.init(gameId);
|
||||
this.feedbackPanel.clear();
|
||||
this.btnConcede.setVisible(false);
|
||||
|
@ -188,7 +188,7 @@ public class GamePanel extends javax.swing.JPanel {
|
|||
this.gameId = gameId;
|
||||
this.playerId = null;
|
||||
session = MageFrame.getSession();
|
||||
session.addGame(gameId, this);
|
||||
MageFrame.addGame(gameId, this);
|
||||
this.feedbackPanel.clear();
|
||||
this.btnConcede.setVisible(false);
|
||||
this.btnStopWatching.setVisible(false);
|
||||
|
|
|
@ -39,7 +39,7 @@ import java.util.UUID;
|
|||
import mage.client.MageFrame;
|
||||
import mage.client.cards.BigCard;
|
||||
import mage.client.dialog.ShowCardsDialog;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.Config;
|
||||
import mage.view.PlayerView;
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ import mage.client.components.arcane.GlowText;
|
|||
import mage.client.components.arcane.ManaSymbols;
|
||||
import mage.client.components.arcane.UI;
|
||||
import mage.client.dialog.ShowCardsDialog;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.Command;
|
||||
import mage.client.util.Config;
|
||||
import mage.client.util.ImageHelper;
|
||||
|
|
|
@ -21,7 +21,7 @@ import mage.client.components.MageComponents;
|
|||
import mage.client.components.MageRoundPane;
|
||||
import mage.client.game.PlayAreaPanel;
|
||||
import mage.client.plugins.impl.Plugins;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.DefaultActionCallback;
|
||||
import mage.client.util.ImageHelper;
|
||||
import mage.client.util.gui.ArrowBuilder;
|
||||
|
@ -85,13 +85,13 @@ public class MageActionCallback implements ActionCallback {
|
|||
for (UUID uuid : targets) {
|
||||
//System.out.println("Getting play area panel for uuid: " + uuid);
|
||||
|
||||
PlayAreaPanel p = session.getGame(data.gameId).getPlayers().get(uuid);
|
||||
PlayAreaPanel p = MageFrame.getGame(data.gameId).getPlayers().get(uuid);
|
||||
if (p != null) {
|
||||
Point target = p.getLocationOnScreen();
|
||||
target.translate(-parentPoint.x, -parentPoint.y);
|
||||
ArrowBuilder.addArrow((int) me.getX() + 35, (int) me.getY(), (int) target.getX() + 40, (int) target.getY() - 40, Color.red);
|
||||
} else {
|
||||
for (PlayAreaPanel pa : session.getGame(data.gameId).getPlayers().values()) {
|
||||
for (PlayAreaPanel pa : MageFrame.getGame(data.gameId).getPlayers().values()) {
|
||||
MagePermanent permanent = pa.getBattlefieldPanel().getPermanents().get(uuid);
|
||||
if (permanent != null) {
|
||||
Point target = permanent.getLocationOnScreen();
|
||||
|
@ -108,7 +108,7 @@ public class MageActionCallback implements ActionCallback {
|
|||
Point me = new Point(data.locationOnScreen);
|
||||
me.translate(-parentPoint.x, -parentPoint.y);
|
||||
UUID uuid = data.card.getParentId();
|
||||
for (PlayAreaPanel pa : session.getGame(data.gameId).getPlayers().values()) {
|
||||
for (PlayAreaPanel pa : MageFrame.getGame(data.gameId).getPlayers().values()) {
|
||||
MagePermanent permanent = pa.getBattlefieldPanel().getPermanents().get(uuid);
|
||||
if (permanent != null) {
|
||||
Point source = permanent.getLocationOnScreen();
|
||||
|
@ -149,15 +149,15 @@ public class MageActionCallback implements ActionCallback {
|
|||
if (session == null || !state) {
|
||||
return;
|
||||
}
|
||||
final Component popupContainer = session.getUI().getComponent(MageComponents.POPUP_CONTAINER);
|
||||
Component popup2 = session.getUI().getComponent(MageComponents.CARD_INFO_PANE);
|
||||
final Component popupContainer = MageFrame.getUI().getComponent(MageComponents.POPUP_CONTAINER);
|
||||
Component popup2 = MageFrame.getUI().getComponent(MageComponents.CARD_INFO_PANE);
|
||||
((CardInfoPane) popup2).setCard(data.card);
|
||||
Point location = new Point((int) data.locationOnScreen.getX() + data.popupOffsetX - 40, (int) data.locationOnScreen.getY() + data.popupOffsetY - 40);
|
||||
location = GuiDisplayUtil.keepComponentInsideParent(location, parentPoint, popup2, parentComponent);
|
||||
location.translate(-parentPoint.x, -parentPoint.y);
|
||||
popupContainer.setLocation(location);
|
||||
ThreadUtils.sleep(200);
|
||||
final Component c = session.getUI().getComponent(MageComponents.DESKTOP_PANE);
|
||||
final Component c = MageFrame.getUI().getComponent(MageComponents.DESKTOP_PANE);
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
|
@ -227,7 +227,7 @@ public class MageActionCallback implements ActionCallback {
|
|||
if (session == null) {
|
||||
return;
|
||||
}
|
||||
Component popupContainer = session.getUI().getComponent(MageComponents.POPUP_CONTAINER);
|
||||
Component popupContainer = MageFrame.getUI().getComponent(MageComponents.POPUP_CONTAINER);
|
||||
popupContainer.setVisible(false);
|
||||
} catch (Exception e2) {
|
||||
e2.printStackTrace();
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
|
||||
package mage.client.remote;
|
||||
|
||||
import mage.remote.Session;
|
||||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import javax.swing.JOptionPane;
|
||||
|
@ -55,20 +56,18 @@ import org.apache.log4j.Logger;
|
|||
*
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
*/
|
||||
public class Client implements CallbackClient {
|
||||
public class CallbackClientImpl implements CallbackClient {
|
||||
|
||||
private final static Logger logger = Logger.getLogger(Client.class);
|
||||
private final static Logger logger = Logger.getLogger(CallbackClientImpl.class);
|
||||
|
||||
private UUID clientId;
|
||||
private MageFrame frame;
|
||||
private Session session;
|
||||
private int messageId = 0;
|
||||
|
||||
public Client(Session session, MageFrame frame) {
|
||||
public CallbackClientImpl(MageFrame frame) {
|
||||
|
||||
this.clientId = UUID.randomUUID();
|
||||
this.frame = frame;
|
||||
this.session = session;
|
||||
|
||||
}
|
||||
|
||||
|
@ -101,36 +100,36 @@ public class Client implements CallbackClient {
|
|||
}
|
||||
else if (callback.getMethod().equals("chatMessage")) {
|
||||
ChatMessage message = (ChatMessage) callback.getData();
|
||||
ChatPanel panel = session.getChat(callback.getObjectId());
|
||||
ChatPanel panel = frame.getChat(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.receiveMessage(message.getMessage(), message.getColor());
|
||||
}
|
||||
else if (callback.getMethod().equals("replayInit")) {
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.init((GameView) callback.getData());
|
||||
}
|
||||
else if (callback.getMethod().equals("replayDone")) {
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.modalMessage((String) callback.getData());
|
||||
panel.hideGame();
|
||||
}
|
||||
}
|
||||
else if (callback.getMethod().equals("replayUpdate")) {
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.updateGame((GameView) callback.getData());
|
||||
}
|
||||
else if (callback.getMethod().equals("gameInit")) {
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.init((GameView) callback.getData());
|
||||
|
||||
}
|
||||
}
|
||||
else if (callback.getMethod().equals("gameOver")) {
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.modalMessage((String) callback.getData());
|
||||
panel.hideGame();
|
||||
|
@ -138,53 +137,53 @@ public class Client implements CallbackClient {
|
|||
}
|
||||
else if (callback.getMethod().equals("gameAsk")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.ask(message.getMessage(), message.getGameView());
|
||||
}
|
||||
else if (callback.getMethod().equals("gameTarget")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.pickTarget(message.getMessage(), message.getCardsView(), message.getGameView(), message.getTargets(), message.isFlag(), message.getOptions());
|
||||
}
|
||||
else if (callback.getMethod().equals("gameSelect")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.select(message.getMessage(), message.getGameView());
|
||||
}
|
||||
else if (callback.getMethod().equals("gameChooseAbility")) {
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.pickAbility((AbilityPickerView) callback.getData());
|
||||
}
|
||||
else if (callback.getMethod().equals("gameChoose")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.getChoice(message.getMessage(), message.getStrings());
|
||||
}
|
||||
else if (callback.getMethod().equals("gamePlayMana")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.playMana(message.getMessage(), message.getGameView());
|
||||
}
|
||||
else if (callback.getMethod().equals("gamePlayXMana")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.playXMana(message.getMessage(), message.getGameView());
|
||||
}
|
||||
else if (callback.getMethod().equals("gameSelectAmount")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.getAmount(message.getMin(), message.getMax(), message.getMessage());
|
||||
}
|
||||
else if (callback.getMethod().equals("gameUpdate")) {
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.updateGame((GameView) callback.getData());
|
||||
}
|
||||
|
@ -192,7 +191,7 @@ public class Client implements CallbackClient {
|
|||
|
||||
if (callback.getMessageId() > messageId) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = session.getGame(callback.getObjectId());
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.inform(message.getMessage(), message.getGameView());
|
||||
}
|
||||
|
@ -209,18 +208,18 @@ public class Client implements CallbackClient {
|
|||
construct(message.getDeck(), message.getTableId(), message.getTime());
|
||||
}
|
||||
else if (callback.getMethod().equals("draftOver")) {
|
||||
DraftPanel panel = session.getDraft(callback.getObjectId());
|
||||
DraftPanel panel = frame.getDraft(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.hideDraft();
|
||||
}
|
||||
else if (callback.getMethod().equals("draftPick")) {
|
||||
DraftClientMessage message = (DraftClientMessage) callback.getData();
|
||||
DraftPanel panel = session.getDraft(callback.getObjectId());
|
||||
DraftPanel panel = frame.getDraft(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.loadBooster(message.getDraftPickView());
|
||||
}
|
||||
else if (callback.getMethod().equals("draftUpdate")) {
|
||||
DraftPanel panel = session.getDraft(callback.getObjectId());
|
||||
DraftPanel panel = frame.getDraft(callback.getObjectId());
|
||||
if (panel != null)
|
||||
panel.updateDraft((DraftView) callback.getData());
|
||||
}
|
||||
|
@ -247,7 +246,7 @@ public class Client implements CallbackClient {
|
|||
});
|
||||
}
|
||||
|
||||
public UUID getId() throws RemoteException {
|
||||
public UUID getId() {
|
||||
return clientId;
|
||||
}
|
||||
|
||||
|
@ -315,9 +314,7 @@ public class Client implements CallbackClient {
|
|||
|
||||
private void handleException(Exception ex) {
|
||||
logger.fatal("Client error\n", ex);
|
||||
JOptionPane.showMessageDialog(MageFrame.getDesktop(), "Unrecoverable client error. Disconnecting", "Error", JOptionPane.ERROR_MESSAGE);
|
||||
session.disconnect(false);
|
||||
frame.disableButtons();
|
||||
frame.showError("Error: " + ex.getMessage());
|
||||
}
|
||||
|
||||
}
|
|
@ -41,7 +41,7 @@ import java.util.UUID;
|
|||
import javax.swing.DefaultComboBoxModel;
|
||||
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.Config;
|
||||
import mage.client.util.Event;
|
||||
import mage.client.util.Listener;
|
||||
|
|
|
@ -43,8 +43,8 @@ import mage.client.dialog.JoinTableDialog;
|
|||
import mage.client.dialog.NewTableDialog;
|
||||
import mage.client.dialog.NewTournamentDialog;
|
||||
import mage.client.dialog.TableWaitingDialog;
|
||||
import mage.client.remote.MageRemoteException;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.MageRemoteException;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.ButtonColumn;
|
||||
import mage.game.match.MatchOptions;
|
||||
import mage.sets.Sets;
|
||||
|
@ -101,7 +101,7 @@ public class TablesPanel extends javax.swing.JPanel {
|
|||
if (state.equals("Join")) {
|
||||
if (owner.equals(session.getUserName())) {
|
||||
try {
|
||||
JDesktopPane desktopPane = (JDesktopPane)session.getUI().getComponent(MageComponents.DESKTOP_PANE);
|
||||
JDesktopPane desktopPane = (JDesktopPane)MageFrame.getUI().getComponent(MageComponents.DESKTOP_PANE);
|
||||
JInternalFrame[] windows = desktopPane.getAllFramesInLayer(javax.swing.JLayeredPane.DEFAULT_LAYER);
|
||||
for (JInternalFrame frame : windows) {
|
||||
if (frame.getTitle().equals("Waiting for players")) {
|
||||
|
@ -204,7 +204,7 @@ public class TablesPanel extends javax.swing.JPanel {
|
|||
hideTables();
|
||||
}
|
||||
|
||||
session.getUI().addButton(MageComponents.NEW_GAME_BUTTON, btnNewTable);
|
||||
MageFrame.getUI().addButton(MageComponents.NEW_GAME_BUTTON, btnNewTable);
|
||||
}
|
||||
|
||||
public void hideTables() {
|
||||
|
|
|
@ -38,7 +38,7 @@ import java.util.UUID;
|
|||
import javax.swing.DefaultComboBoxModel;
|
||||
import javax.swing.JComboBox;
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
|
||||
/**
|
||||
*
|
||||
|
|
|
@ -45,8 +45,8 @@ import java.util.UUID;
|
|||
import javax.swing.*;
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.remote.MageRemoteException;
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.MageRemoteException;
|
||||
import mage.remote.Session;
|
||||
import mage.client.util.ButtonColumn;
|
||||
import mage.view.RoundView;
|
||||
import mage.view.TournamentGameView;
|
||||
|
@ -101,7 +101,7 @@ public class TournamentPanel extends javax.swing.JPanel implements Observer {
|
|||
public synchronized void showTournament(UUID tournamentId) {
|
||||
this.tournamentId = tournamentId;
|
||||
session = MageFrame.getSession();
|
||||
session.addTournament(tournamentId, this);
|
||||
MageFrame.addTournament(tournamentId, this);
|
||||
UUID chatRoomId = session.getTournamentChatId(tournamentId);
|
||||
if (session.joinTournament(tournamentId) && chatRoomId != null) {
|
||||
this.chatPanel1.connect(chatRoomId);
|
||||
|
|
|
@ -3,7 +3,7 @@ package mage.client.util;
|
|||
import java.awt.event.MouseEvent;
|
||||
import java.util.UUID;
|
||||
|
||||
import mage.client.remote.Session;
|
||||
import mage.remote.Session;
|
||||
import mage.view.CardView;
|
||||
|
||||
|
||||
|
|
|
@ -56,7 +56,7 @@ public class StartMultiGamesTest {
|
|||
if (frame == null) {
|
||||
sync.wait();
|
||||
}
|
||||
ui = MageFrame.getSession().getUI();
|
||||
ui = MageFrame.getUI();
|
||||
ui.doClick(MageComponents.TABLES_MENU_BUTTON);
|
||||
ui.doClick(MageComponents.NEW_GAME_BUTTON);
|
||||
ui.doClick(MageComponents.NEW_TABLE_OK_BUTTON, 500);
|
||||
|
|
|
@ -69,4 +69,9 @@ public final class Constants {
|
|||
public static final double SCALE_FACTOR = 0.5;
|
||||
|
||||
public static final String PLUGINS_DIRECTORY = "plugins/";
|
||||
|
||||
public enum SessionState {
|
||||
DISCONNECTED, CONNECTED, CONNECTING, DISCONNECTING, SERVER_UNAVAILABLE;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
48
Mage.Common/src/mage/interfaces/Client.java
Normal file
48
Mage.Common/src/mage/interfaces/Client.java
Normal file
|
@ -0,0 +1,48 @@
|
|||
/*
|
||||
* Copyright 2011 BetaSteward_at_googlemail.com. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification, are
|
||||
* permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice, this list of
|
||||
* conditions and the following disclaimer.
|
||||
*
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
||||
* of conditions and the following disclaimer in the documentation and/or other materials
|
||||
* provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* The views and conclusions contained in the software and documentation are those of the
|
||||
* authors and should not be interpreted as representing official policies, either expressed
|
||||
* or implied, of BetaSteward_at_googlemail.com.
|
||||
*/
|
||||
|
||||
package mage.interfaces;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.interfaces.callback.CallbackClient;
|
||||
import mage.utils.MageVersion;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
*/
|
||||
public interface Client extends CallbackClient {
|
||||
|
||||
public UUID getId();
|
||||
public MageVersion getVersion();
|
||||
public void connected(String message);
|
||||
public void disconnected();
|
||||
public void showMessage(String message);
|
||||
public void showError(String message);
|
||||
|
||||
}
|
|
@ -86,6 +86,7 @@ public class CallbackClientDaemon extends Thread {
|
|||
}
|
||||
} catch(Exception ex) {
|
||||
logger.fatal("CallbackClientDaemon error ", ex);
|
||||
stopDaemon();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
* or implied, of BetaSteward_at_googlemail.com.
|
||||
*/
|
||||
|
||||
package mage.client.remote;
|
||||
package mage.remote;
|
||||
|
||||
/**
|
||||
*
|
|
@ -28,8 +28,6 @@
|
|||
|
||||
package mage.remote;
|
||||
|
||||
import java.util.concurrent.LinkedBlockingQueue;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
|
|
|
@ -29,6 +29,7 @@ package mage.remote;
|
|||
|
||||
import java.rmi.*;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
|
@ -47,12 +48,16 @@ public abstract class RemoteMethodCall<T> extends AbstractRemoteMethodCall<T> {
|
|||
protected final static Logger logger = Logger.getLogger(RemoteMethodCall.class);
|
||||
|
||||
protected Connection connection;
|
||||
protected String name;
|
||||
protected T returnVal;
|
||||
protected boolean exception = false;
|
||||
protected MageException ex;
|
||||
protected SessionState allowedState;
|
||||
|
||||
public RemoteMethodCall(Connection connection){
|
||||
public RemoteMethodCall(Connection connection, String name, SessionState allowedState){
|
||||
this.connection = connection;
|
||||
this.name = name;
|
||||
this.allowedState = allowedState;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -97,6 +102,10 @@ public abstract class RemoteMethodCall<T> extends AbstractRemoteMethodCall<T> {
|
|||
}
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
protected void remoteExceptionOccured(RemoteException remoteException) {
|
||||
ServerCache.removeServerFromCache(connection);
|
||||
}
|
||||
|
@ -112,4 +121,8 @@ public abstract class RemoteMethodCall<T> extends AbstractRemoteMethodCall<T> {
|
|||
public boolean isException() {
|
||||
return exception;
|
||||
}
|
||||
|
||||
public SessionState getAllowedState() {
|
||||
return allowedState;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,44 +26,31 @@
|
|||
* or implied, of BetaSteward_at_googlemail.com.
|
||||
*/
|
||||
|
||||
package mage.client.remote;
|
||||
package mage.remote;
|
||||
|
||||
import java.net.Authenticator;
|
||||
import java.net.PasswordAuthentication;
|
||||
import java.rmi.RemoteException;
|
||||
import java.rmi.registry.LocateRegistry;
|
||||
import java.rmi.registry.Registry;
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.ScheduledExecutorService;
|
||||
import java.util.concurrent.ScheduledFuture;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import javax.swing.JOptionPane;
|
||||
import mage.cards.decks.DeckCardLists;
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.chat.ChatPanel;
|
||||
import mage.client.components.MageUI;
|
||||
import mage.client.draft.DraftPanel;
|
||||
import mage.client.game.GamePanel;
|
||||
import mage.remote.method.*;
|
||||
import mage.client.tournament.TournamentPanel;
|
||||
import mage.game.GameException;
|
||||
import mage.MageException;
|
||||
import mage.cards.decks.InvalidDeckException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.game.match.MatchOptions;
|
||||
import mage.game.tournament.TournamentOptions;
|
||||
import mage.interfaces.Client;
|
||||
import mage.interfaces.ServerState;
|
||||
import mage.interfaces.callback.CallbackClientDaemon;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RMIClientDaemon;
|
||||
import mage.remote.RemoteMethodCallQueue;
|
||||
import mage.remote.ServerCache;
|
||||
import mage.remote.ServerUnavailable;
|
||||
import mage.utils.MageVersion;
|
||||
import mage.view.DraftPickView;
|
||||
import mage.view.GameTypeView;
|
||||
|
@ -81,29 +68,19 @@ public class Session {
|
|||
private final static Logger logger = Logger.getLogger(Session.class);
|
||||
private static ScheduledExecutorService sessionExecutor = Executors.newScheduledThreadPool(1);
|
||||
|
||||
public enum SessionState {
|
||||
DISCONNECTED, CONNECTED, CONNECTING, DISCONNECTING, SERVER_UNAVAILABLE;
|
||||
}
|
||||
|
||||
private UUID sessionId;
|
||||
private Client client;
|
||||
private String userName;
|
||||
private MageFrame frame;
|
||||
private ServerState serverState;
|
||||
private SessionState sessionState = SessionState.DISCONNECTED;
|
||||
private Map<UUID, ChatPanel> chats = new HashMap<UUID, ChatPanel>();
|
||||
private Map<UUID, GamePanel> games = new HashMap<UUID, GamePanel>();
|
||||
private Map<UUID, DraftPanel> drafts = new HashMap<UUID, DraftPanel>();
|
||||
private Map<UUID, TournamentPanel> tournaments = new HashMap<UUID, TournamentPanel>();
|
||||
private CallbackClientDaemon callbackDaemon;
|
||||
private RMIClientDaemon rmiDaemon;
|
||||
private RemoteMethodCallQueue q = new RemoteMethodCallQueue();
|
||||
private ScheduledFuture<?> future;
|
||||
private MageUI ui = new MageUI();
|
||||
private Connection connection;
|
||||
|
||||
public Session(MageFrame frame) {
|
||||
this.frame = frame;
|
||||
public Session(Client client) {
|
||||
this.client = client;
|
||||
rmiDaemon = new RMIClientDaemon(q);
|
||||
}
|
||||
|
||||
|
@ -141,22 +118,19 @@ public class Session {
|
|||
}
|
||||
Registry reg = LocateRegistry.getRegistry(connection.getHost(), connection.getPort());
|
||||
this.userName = connection.getUsername();
|
||||
if (client == null)
|
||||
client = new Client(this, frame);
|
||||
sessionId = registerClient(userName, client.getId(), frame.getVersion());
|
||||
sessionId = registerClient(userName, client.getId(), client.getVersion());
|
||||
callbackDaemon = new CallbackClientDaemon(sessionId, client, connection);
|
||||
serverState = getServerState();
|
||||
future = sessionExecutor.scheduleWithFixedDelay(new ServerPinger(), 5, 5, TimeUnit.SECONDS);
|
||||
logger.info("Connected to RMI server at " + connection.getHost() + ":" + connection.getPort());
|
||||
frame.setStatusText("Connected to " + connection.getHost() + ":" + connection.getPort() + " ");
|
||||
frame.enableButtons();
|
||||
client.connected("Connected to " + connection.getHost() + ":" + connection.getPort() + " ");
|
||||
sessionState = SessionState.CONNECTED;
|
||||
return true;
|
||||
} catch (Exception ex) {
|
||||
logger.fatal("", ex);
|
||||
if (sessionState == SessionState.CONNECTING) {
|
||||
disconnect(false);
|
||||
JOptionPane.showMessageDialog(frame, "Unable to connect to server. " + ex.getMessage());
|
||||
client.showMessage("Unable to connect to server. " + ex.getMessage());
|
||||
}
|
||||
sessionState = SessionState.SERVER_UNAVAILABLE;
|
||||
}
|
||||
|
@ -169,16 +143,6 @@ public class Session {
|
|||
return;
|
||||
if (future != null && !future.isDone())
|
||||
future.cancel(true);
|
||||
frame.setStatusText("Not connected");
|
||||
frame.disableButtons();
|
||||
try {
|
||||
for (UUID chatId: chats.keySet()) {
|
||||
leaveChat(chatId);
|
||||
}
|
||||
}
|
||||
catch (Exception ignore) {
|
||||
//swallow all exceptions at this point
|
||||
}
|
||||
try {
|
||||
if (callbackDaemon != null)
|
||||
callbackDaemon.stopDaemon();
|
||||
|
@ -187,58 +151,58 @@ public class Session {
|
|||
logger.fatal("Error disconnecting ...", ex);
|
||||
}
|
||||
ServerCache.removeServerFromCache(connection);
|
||||
frame.hideGames();
|
||||
frame.hideTables();
|
||||
client.disconnected();
|
||||
logger.info("Disconnected ... ");
|
||||
if (!voluntary)
|
||||
JOptionPane.showMessageDialog(MageFrame.getDesktop(), "Server error. You have been disconnected", "Error", JOptionPane.ERROR_MESSAGE);
|
||||
if (!voluntary) {
|
||||
sessionState = SessionState.SERVER_UNAVAILABLE;
|
||||
client.showError("Server error. You have been disconnected");
|
||||
}
|
||||
else {
|
||||
sessionState = SessionState.DISCONNECTED;
|
||||
}
|
||||
}
|
||||
|
||||
public boolean ping() {
|
||||
Ping method = new Ping(connection, sessionId);
|
||||
|
||||
private boolean handleCall(RemoteMethodCall method) {
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return method.getReturnVal();
|
||||
if (sessionState == method.getAllowedState()) {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
}
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (GameException ex) {
|
||||
handleGameException(ex);
|
||||
} catch (InvalidDeckException ex) {
|
||||
handleInvalidDeckException(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("ping error", ex);
|
||||
logger.fatal(method.getName() + " error", ex);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean ping() {
|
||||
Ping method = new Ping(connection, sessionId);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
return false;
|
||||
}
|
||||
|
||||
private UUID registerClient(String userName, UUID clientId, MageVersion version) throws MageException, ServerUnavailable {
|
||||
RegisterClient method = new RegisterClient(connection, userName, clientId, version);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("registerClient error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private void deregisterClient() throws MageException {
|
||||
DeregisterClient method = new DeregisterClient(connection, sessionId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
} catch (ServerUnavailable ex) {
|
||||
logger.fatal("server unavailable - ", ex);
|
||||
}
|
||||
handleCall(method);
|
||||
}
|
||||
|
||||
private ServerState getServerState() {
|
||||
GetServerState method = new GetServerState(connection);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("GetServerState error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
@ -271,598 +235,250 @@ public class Session {
|
|||
return false;
|
||||
}
|
||||
|
||||
public ChatPanel getChat(UUID chatId) {
|
||||
return chats.get(chatId);
|
||||
}
|
||||
|
||||
public GamePanel getGame(UUID gameId) {
|
||||
return games.get(gameId);
|
||||
}
|
||||
|
||||
public void addGame(UUID gameId, GamePanel gamePanel) {
|
||||
games.put(gameId, gamePanel);
|
||||
}
|
||||
|
||||
public DraftPanel getDraft(UUID draftId) {
|
||||
return drafts.get(draftId);
|
||||
}
|
||||
|
||||
public void addDraft(UUID draftId, DraftPanel draftPanel) {
|
||||
drafts.put(draftId, draftPanel);
|
||||
}
|
||||
|
||||
public void addTournament(UUID tournamentId, TournamentPanel tournament) {
|
||||
tournaments.put(tournamentId, tournament);
|
||||
}
|
||||
|
||||
public UUID getMainRoomId() {
|
||||
GetMainRoomId method = new GetMainRoomId(connection);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("GetMainRoomId error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public UUID getRoomChatId(UUID roomId) {
|
||||
GetRoomChatId method = new GetRoomChatId(connection, roomId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("GetRoomChatId error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public UUID getTableChatId(UUID tableId) {
|
||||
GetTableChatId method = new GetTableChatId(connection, tableId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("GetTableChatId error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public UUID getGameChatId(UUID gameId) {
|
||||
GetGameChatId method = new GetGameChatId(connection, gameId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("GetGameChatId error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public TableView getTable(UUID roomId, UUID tableId) {
|
||||
GetTable method = new GetTable(connection, roomId, tableId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("GetTable error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean watchTable(UUID roomId, UUID tableId) {
|
||||
WatchTable method = new WatchTable(connection, sessionId, roomId, tableId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("WatchTable error", ex);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean joinTable(UUID roomId, UUID tableId, String playerName, String playerType, int skill, DeckCardLists deckList) {
|
||||
JoinTable method = new JoinTable(connection, sessionId, roomId, tableId, playerName, playerType, skill, deckList);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (GameException ex) {
|
||||
handleGameException(ex);
|
||||
} catch (InvalidDeckException ex) {
|
||||
handleInvalidDeckException(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("JoinTable error", ex);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean joinTournamentTable(UUID roomId, UUID tableId, String playerName, String playerType, int skill) {
|
||||
JoinTournamentTable method = new JoinTournamentTable(connection, sessionId, roomId, tableId, playerName, playerType, skill);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (GameException ex) {
|
||||
handleGameException(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("JoinTournamentTable error", ex);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public Collection<TableView> getTables(UUID roomId) throws MageRemoteException {
|
||||
GetTables method = new GetTables(connection, roomId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("GetTables error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public Collection<String> getConnectedPlayers(UUID roomId) throws MageRemoteException {
|
||||
GetConnectedPlayers method = new GetConnectedPlayers(connection, roomId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("GetConnectedPlayers error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public TournamentView getTournament(UUID tournamentId) throws MageRemoteException {
|
||||
GetTournament method = new GetTournament(connection, tournamentId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("GetTable error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public UUID getTournamentChatId(UUID tournamentId) {
|
||||
GetTournamentChatId method = new GetTournamentChatId(connection, tournamentId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("GetTournamentChatId error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean sendPlayerUUID(UUID gameId, UUID data) {
|
||||
SendPlayerUUID method = new SendPlayerUUID(connection, sessionId, gameId, data);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("SendPlayerUUID error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean sendPlayerBoolean(UUID gameId, boolean data) {
|
||||
SendPlayerBoolean method = new SendPlayerBoolean(connection, sessionId, gameId, data);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("SendPlayerBoolean error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean sendPlayerInteger(UUID gameId, int data) {
|
||||
SendPlayerInteger method = new SendPlayerInteger(connection, sessionId, gameId, data);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("SendPlayerInteger error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean sendPlayerString(UUID gameId, String data) {
|
||||
SendPlayerString method = new SendPlayerString(connection, sessionId, gameId, data);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("SendPlayerString error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public DraftPickView sendCardPick(UUID draftId, UUID cardId) {
|
||||
SendCardPick method = new SendCardPick(connection, sessionId, draftId, cardId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("SendCardPick error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean joinChat(UUID chatId, ChatPanel chat) {
|
||||
public boolean joinChat(UUID chatId) {
|
||||
JoinChat method = new JoinChat(connection, sessionId, chatId, userName);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
chats.put(chatId, chat);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("JoinChat error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean leaveChat(UUID chatId) {
|
||||
LeaveChat method = new LeaveChat(connection, sessionId, chatId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
chats.remove(chatId);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("LeaveChat error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean sendChatMessage(UUID chatId, String message) {
|
||||
SendChatMessage method = new SendChatMessage(connection, chatId, message, userName);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("SendChatMessage error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean joinGame(UUID gameId) {
|
||||
JoinGame method = new JoinGame(connection, sessionId, gameId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("JoinGame error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean joinDraft(UUID draftId) {
|
||||
JoinDraft method = new JoinDraft(connection, sessionId, draftId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("JoinDraft error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean joinTournament(UUID tournamentId) {
|
||||
JoinTournament method = new JoinTournament(connection, sessionId, tournamentId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("JoinTournament error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean watchGame(UUID gameId) {
|
||||
WatchGame method = new WatchGame(connection, sessionId, gameId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("WatchGame error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean replayGame(UUID gameId) {
|
||||
ReplayGame method = new ReplayGame(connection, sessionId, gameId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("ReplayGame error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public TableView createTable(UUID roomId, MatchOptions matchOptions) {
|
||||
CreateTable method = new CreateTable(connection, sessionId, roomId, matchOptions);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("CreateTable error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public TableView createTournamentTable(UUID roomId, TournamentOptions tournamentOptions) {
|
||||
CreateTournamentTable method = new CreateTournamentTable(connection, sessionId, roomId, tournamentOptions);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("CreateTournamentTable error", ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public boolean isTableOwner(UUID roomId, UUID tableId) {
|
||||
IsTableOwner method = new IsTableOwner(connection, sessionId, roomId, tableId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("IsTableOwner error", ex);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean removeTable(UUID roomId, UUID tableId) {
|
||||
RemoveTable method = new RemoveTable(connection, sessionId, roomId, tableId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("RemoveTable error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean swapSeats(UUID roomId, UUID tableId, int seatNum1, int seatNum2) {
|
||||
SwapSeats method = new SwapSeats(connection, sessionId, roomId, tableId, seatNum1, seatNum2);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("RemoveTable error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean leaveTable(UUID roomId, UUID tableId) {
|
||||
LeaveTable method = new LeaveTable(connection, sessionId, roomId, tableId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("LeaveTable error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean startGame(UUID roomId, UUID tableId) {
|
||||
StartGame method = new StartGame(connection, sessionId, roomId, tableId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("StartGame error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean startTournament(UUID roomId, UUID tableId) {
|
||||
StartTournament method = new StartTournament(connection, sessionId, roomId, tableId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("StartTournament error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean startChallenge(UUID roomId, UUID tableId, UUID challengeId) {
|
||||
StartChallenge method = new StartChallenge(connection, sessionId, roomId, tableId, challengeId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("StartChallenge error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean submitDeck(UUID tableId, DeckCardLists deck) {
|
||||
SubmitDeck method = new SubmitDeck(connection, sessionId, tableId, deck);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
if (handleCall(method))
|
||||
return method.getReturnVal();
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (InvalidDeckException ex) {
|
||||
handleInvalidDeckException(ex);
|
||||
} catch (GameException ex) {
|
||||
handleGameException(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("SubmitDeck error", ex);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean concedeGame(UUID gameId) {
|
||||
ConcedeGame method = new ConcedeGame(connection, sessionId, gameId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("ConcedeGame error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean stopWatching(UUID gameId) {
|
||||
StopWatching method = new StopWatching(connection, sessionId, gameId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("StopWatching error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean startReplay(UUID gameId) {
|
||||
StartReplay method = new StartReplay(connection, sessionId, gameId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("StartReplay error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean stopReplay(UUID gameId) {
|
||||
StopReplay method = new StopReplay(connection, sessionId, gameId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("StopReplay error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean nextPlay(UUID gameId) {
|
||||
NextPlay method = new NextPlay(connection, sessionId, gameId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("NextPlay error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean previousPlay(UUID gameId) {
|
||||
PreviousPlay method = new PreviousPlay(connection, sessionId, gameId);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("PreviousPlay error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
public boolean cheat(UUID gameId, UUID playerId, DeckCardLists deckList) {
|
||||
Cheat method = new Cheat(connection, sessionId, gameId, playerId, deckList);
|
||||
try {
|
||||
q.callMethod(method);
|
||||
return true;
|
||||
} catch (ServerUnavailable ex) {
|
||||
handleServerUnavailable(ex);
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("Cheat error", ex);
|
||||
}
|
||||
return false;
|
||||
return handleCall(method);
|
||||
}
|
||||
|
||||
// private void handleRemoteException(RemoteException ex) {
|
||||
// logger.fatal("Communication error", ex);
|
||||
// disconnect(false);
|
||||
// }
|
||||
|
||||
// private void handleMageException(MageException ex) {
|
||||
// logger.fatal("Server error", ex);
|
||||
// disconnect(false);
|
||||
// }
|
||||
|
||||
private void handleServerUnavailable(ServerUnavailable ex) {
|
||||
logger.fatal("server unavailable - ", ex);
|
||||
disconnect(false);
|
||||
|
@ -870,7 +486,7 @@ public class Session {
|
|||
|
||||
private void handleGameException(GameException ex) {
|
||||
logger.warn(ex.getMessage());
|
||||
JOptionPane.showMessageDialog(MageFrame.getDesktop(), ex.getMessage(), "Error", JOptionPane.ERROR_MESSAGE);
|
||||
client.showError(ex.getMessage());
|
||||
}
|
||||
|
||||
private void handleInvalidDeckException(InvalidDeckException ex) {
|
||||
|
@ -880,17 +496,13 @@ public class Session {
|
|||
for (Entry<String, String> entry: ex.getInvalid().entrySet()) {
|
||||
sbMessage.append(entry.getKey()).append(":").append(entry.getValue()).append("\n");
|
||||
}
|
||||
JOptionPane.showMessageDialog(MageFrame.getDesktop(), sbMessage.toString(), "Invalid Deck", JOptionPane.ERROR_MESSAGE);
|
||||
client.showError(sbMessage.toString());
|
||||
}
|
||||
|
||||
public String getUserName() {
|
||||
return userName;
|
||||
}
|
||||
|
||||
public MageUI getUI() {
|
||||
return ui;
|
||||
}
|
||||
|
||||
class ServerPinger implements Runnable {
|
||||
|
||||
@Override
|
|
@ -29,6 +29,7 @@ package mage.remote.method;
|
|||
|
||||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.interfaces.callback.CallbackException;
|
||||
import mage.remote.Connection;
|
||||
|
@ -44,7 +45,7 @@ public class Ack extends RemoteMethodCall<Void> {
|
|||
private int messageId;
|
||||
|
||||
public Ack(Connection connection, UUID sessionId, int messageId) {
|
||||
super(connection);
|
||||
super(connection, "Ack", SessionState.CONNECTED);
|
||||
this.sessionId = sessionId;
|
||||
this.messageId = messageId;
|
||||
}
|
||||
|
|
|
@ -29,6 +29,7 @@ package mage.remote.method;
|
|||
|
||||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.interfaces.callback.CallbackException;
|
||||
import mage.interfaces.callback.ClientCallback;
|
||||
|
@ -44,7 +45,7 @@ public class Callback extends RemoteMethodCall<ClientCallback> {
|
|||
private UUID sessionId;
|
||||
|
||||
public Callback(Connection connection, UUID sessionId) {
|
||||
super(connection);
|
||||
super(connection, "Callback", SessionState.CONNECTED);
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
||||
|
|
|
@ -32,6 +32,7 @@ import java.rmi.RemoteException;
|
|||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.cards.decks.DeckCardLists;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -48,7 +49,7 @@ public class Cheat extends RemoteMethodCall<Void> {
|
|||
private DeckCardLists deckList;
|
||||
|
||||
public Cheat(Connection connection, UUID sessionId, UUID gameId, UUID playerId, DeckCardLists deckList) {
|
||||
super(connection);
|
||||
super(connection, "Cheat", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
this.sessionId = sessionId;
|
||||
this.playerId = playerId;
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class ConcedeGame extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public ConcedeGame(Connection connection, UUID sessionId, UUID gameId) {
|
||||
super(connection);
|
||||
super(connection, "ConcedeGame", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.game.match.MatchOptions;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
|
@ -47,7 +48,7 @@ public class CreateTable extends RemoteMethodCall<TableView> {
|
|||
private MatchOptions matchOptions;
|
||||
|
||||
public CreateTable(Connection connection, UUID sessionId, UUID roomId, MatchOptions matchOptions) {
|
||||
super(connection);
|
||||
super(connection, "CreateTable", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.sessionId = sessionId;
|
||||
this.matchOptions = matchOptions;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.game.tournament.TournamentOptions;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
|
@ -47,7 +48,7 @@ public class CreateTournamentTable extends RemoteMethodCall<TableView> {
|
|||
private TournamentOptions tournamentOptions;
|
||||
|
||||
public CreateTournamentTable(Connection connection, UUID sessionId, UUID roomId, TournamentOptions tournamentOptions) {
|
||||
super(connection);
|
||||
super(connection, "CreateTournamentTable", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.sessionId = sessionId;
|
||||
this.tournamentOptions = tournamentOptions;
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -44,7 +45,7 @@ public class DeregisterClient extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public DeregisterClient(Connection connection, UUID sessionId) {
|
||||
super(connection);
|
||||
super(connection, "DeregisterClient", SessionState.DISCONNECTING);
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
||||
|
|
|
@ -32,6 +32,7 @@ import java.rmi.RemoteException;
|
|||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class GetConnectedPlayers extends RemoteMethodCall<List<String>> {
|
|||
private UUID roomId;
|
||||
|
||||
public GetConnectedPlayers(Connection connection, UUID roomId) {
|
||||
super(connection);
|
||||
super(connection, "GetConnectedPlayers", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
}
|
||||
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -44,7 +45,7 @@ public class GetGameChatId extends RemoteMethodCall<UUID> {
|
|||
private UUID gameId;
|
||||
|
||||
public GetGameChatId(Connection connection, UUID gameId) {
|
||||
super(connection);
|
||||
super(connection, "GetGameChatId", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
}
|
||||
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -43,7 +44,7 @@ public class GetMainRoomId extends RemoteMethodCall<UUID> {
|
|||
|
||||
|
||||
public GetMainRoomId(Connection connection) {
|
||||
super(connection);
|
||||
super(connection, "GetMainRoomId", SessionState.CONNECTED);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -44,7 +45,7 @@ public class GetRoomChatId extends RemoteMethodCall<UUID> {
|
|||
private UUID roomId;
|
||||
|
||||
public GetRoomChatId(Connection connection, UUID roomId) {
|
||||
super(connection);
|
||||
super(connection, "GetRoomChatId", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
}
|
||||
|
||||
|
|
|
@ -29,6 +29,7 @@ package mage.remote.method;
|
|||
|
||||
import java.rmi.RemoteException;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.interfaces.ServerState;
|
||||
import mage.remote.Connection;
|
||||
|
@ -41,7 +42,7 @@ import mage.remote.RemoteMethodCall;
|
|||
public class GetServerState extends RemoteMethodCall<ServerState> {
|
||||
|
||||
public GetServerState(Connection connection) {
|
||||
super(connection);
|
||||
super(connection, "GetServerState", SessionState.CONNECTING);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class GetTable extends RemoteMethodCall<TableView> {
|
|||
private UUID tableId;
|
||||
|
||||
public GetTable(Connection connection, UUID roomId, UUID tableId) {
|
||||
super(connection);
|
||||
super(connection, "GetTable", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -44,7 +45,7 @@ public class GetTableChatId extends RemoteMethodCall<UUID> {
|
|||
private UUID tableId;
|
||||
|
||||
public GetTableChatId(Connection connection, UUID tableId) {
|
||||
super(connection);
|
||||
super(connection, "GetTableChatId", SessionState.CONNECTED);
|
||||
this.tableId = tableId;
|
||||
}
|
||||
|
||||
|
|
|
@ -32,6 +32,7 @@ import java.rmi.RemoteException;
|
|||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -46,7 +47,7 @@ public class GetTables extends RemoteMethodCall<List<TableView>> {
|
|||
private UUID roomId;
|
||||
|
||||
public GetTables(Connection connection, UUID roomId) {
|
||||
super(connection);
|
||||
super(connection, "GetTables", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
}
|
||||
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -44,7 +45,7 @@ public class GetTournament extends RemoteMethodCall<TournamentView> {
|
|||
private UUID tournamentId;
|
||||
|
||||
public GetTournament(Connection connection, UUID tournamentId) {
|
||||
super(connection);
|
||||
super(connection, "GetTournament", SessionState.CONNECTED);
|
||||
this.tournamentId = tournamentId;
|
||||
}
|
||||
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -44,7 +45,7 @@ public class GetTournamentChatId extends RemoteMethodCall<UUID> {
|
|||
private UUID tournamentId;
|
||||
|
||||
public GetTournamentChatId(Connection connection, UUID tournamentId) {
|
||||
super(connection);
|
||||
super(connection, "GetTournamentChatId", SessionState.CONNECTED);
|
||||
this.tournamentId = tournamentId;
|
||||
}
|
||||
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class IsTableOwner extends RemoteMethodCall<Boolean> {
|
|||
private UUID sessionId;
|
||||
|
||||
public IsTableOwner(Connection connection, UUID sessionId, UUID roomId, UUID tableId) {
|
||||
super(connection);
|
||||
super(connection, "IsTableOwner", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class JoinChat extends RemoteMethodCall<Void> {
|
|||
private String userName;
|
||||
|
||||
public JoinChat(Connection connection, UUID sessionId, UUID chatId, String userName) {
|
||||
super(connection);
|
||||
super(connection, "JoinChat", SessionState.CONNECTED);
|
||||
this.chatId = chatId;
|
||||
this.sessionId = sessionId;
|
||||
this.userName = userName;
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class JoinDraft extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public JoinDraft(Connection connection, UUID sessionId, UUID draftId) {
|
||||
super(connection);
|
||||
super(connection, "JoinDraft", SessionState.CONNECTED);
|
||||
this.draftId = draftId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class JoinGame extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public JoinGame(Connection connection, UUID sessionId, UUID gameId) {
|
||||
super(connection);
|
||||
super(connection, "JoinGame", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ import java.rmi.RemoteException;
|
|||
import java.util.UUID;
|
||||
import mage.cards.decks.DeckCardLists;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.game.GameException;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
|
@ -51,7 +52,7 @@ public class JoinTable extends RemoteMethodCall<Boolean> {
|
|||
private DeckCardLists deckList;
|
||||
|
||||
public JoinTable(Connection connection, UUID sessionId, UUID roomId, UUID tableId, String playerName, String playerType, int skill, DeckCardLists deckList) {
|
||||
super(connection);
|
||||
super(connection, "JoinTable", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class JoinTournament extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public JoinTournament(Connection connection, UUID sessionId, UUID tournamentId) {
|
||||
super(connection);
|
||||
super(connection, "JoinTournament", SessionState.CONNECTED);
|
||||
this.tournamentId = tournamentId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ import java.rmi.RemoteException;
|
|||
import java.util.UUID;
|
||||
import mage.cards.decks.DeckCardLists;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.game.GameException;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
|
@ -50,7 +51,7 @@ public class JoinTournamentTable extends RemoteMethodCall<Boolean> {
|
|||
private int skill;
|
||||
|
||||
public JoinTournamentTable(Connection connection, UUID sessionId, UUID roomId, UUID tableId, String playerName, String playerType, int skill) {
|
||||
super(connection);
|
||||
super(connection, "JoinTournamentTable", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -44,7 +45,7 @@ public class LeaveChat extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public LeaveChat(Connection connection, UUID sessionId, UUID chatId) {
|
||||
super(connection);
|
||||
super(connection, "LeaveChat", SessionState.CONNECTED);
|
||||
this.chatId = chatId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class LeaveTable extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public LeaveTable(Connection connection, UUID sessionId, UUID roomId, UUID tableId) {
|
||||
super(connection);
|
||||
super(connection, "LeaveTable", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class NextPlay extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public NextPlay(Connection connection, UUID sessionId, UUID gameId) {
|
||||
super(connection);
|
||||
super(connection, "NextPlay", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -43,7 +44,7 @@ public class Ping extends RemoteMethodCall<Boolean> {
|
|||
private UUID sessionId;
|
||||
|
||||
public Ping(Connection connection, UUID sessionId) {
|
||||
super(connection);
|
||||
super(connection, "Ping", SessionState.CONNECTED);
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class PreviousPlay extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public PreviousPlay(Connection connection, UUID sessionId, UUID gameId) {
|
||||
super(connection);
|
||||
super(connection, "PreviousPlay", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -47,7 +48,7 @@ public class RegisterClient extends RemoteMethodCall<UUID> {
|
|||
private MageVersion version;
|
||||
|
||||
public RegisterClient(Connection connection, String userName, UUID clientId, MageVersion version) {
|
||||
super(connection);
|
||||
super(connection, "RegisterClient", SessionState.CONNECTING);
|
||||
this.userName = userName;
|
||||
this.clientId = clientId;
|
||||
this.version = version;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class RemoveTable extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public RemoveTable(Connection connection, UUID sessionId, UUID roomId, UUID tableId) {
|
||||
super(connection);
|
||||
super(connection, "RemoveTable", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class ReplayGame extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public ReplayGame(Connection connection, UUID sessionId, UUID gameId) {
|
||||
super(connection);
|
||||
super(connection, "ReplayGame", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -46,7 +47,7 @@ public class SendCardPick extends RemoteMethodCall<DraftPickView> {
|
|||
private UUID cardId;
|
||||
|
||||
public SendCardPick(Connection connection, UUID sessionId, UUID draftId, UUID cardId) {
|
||||
super(connection);
|
||||
super(connection, "SendCardPick", SessionState.CONNECTED);
|
||||
this.sessionId = sessionId;
|
||||
this.draftId = draftId;
|
||||
this.cardId = cardId;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class SendChatMessage extends RemoteMethodCall<Void> {
|
|||
private String userName;
|
||||
|
||||
public SendChatMessage(Connection connection, UUID chatId, String message, String userName) {
|
||||
super(connection);
|
||||
super(connection, "SendChatMessage", SessionState.CONNECTED);
|
||||
this.chatId = chatId;
|
||||
this.message = message;
|
||||
this.userName = userName;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class SendPlayerBoolean extends RemoteMethodCall<Void> {
|
|||
private Boolean data;
|
||||
|
||||
public SendPlayerBoolean(Connection connection, UUID sessionId, UUID gameId, Boolean data) {
|
||||
super(connection);
|
||||
super(connection, "SendPlayerBoolean", SessionState.CONNECTED);
|
||||
this.sessionId = sessionId;
|
||||
this.gameId = gameId;
|
||||
this.data = data;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class SendPlayerInteger extends RemoteMethodCall<Void> {
|
|||
private Integer data;
|
||||
|
||||
public SendPlayerInteger(Connection connection, UUID sessionId, UUID gameId, Integer data) {
|
||||
super(connection);
|
||||
super(connection, "SendPlayerInteger", SessionState.CONNECTED);
|
||||
this.sessionId = sessionId;
|
||||
this.gameId = gameId;
|
||||
this.data = data;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class SendPlayerString extends RemoteMethodCall<Void> {
|
|||
private String data;
|
||||
|
||||
public SendPlayerString(Connection connection, UUID sessionId, UUID gameId, String data) {
|
||||
super(connection);
|
||||
super(connection, "SendPlayerString", SessionState.CONNECTED);
|
||||
this.sessionId = sessionId;
|
||||
this.gameId = gameId;
|
||||
this.data = data;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class SendPlayerUUID extends RemoteMethodCall<Void> {
|
|||
private UUID data;
|
||||
|
||||
public SendPlayerUUID(Connection connection, UUID sessionId, UUID gameId, UUID data) {
|
||||
super(connection);
|
||||
super(connection, "SendPlayerUUID", SessionState.CONNECTED);
|
||||
this.sessionId = sessionId;
|
||||
this.gameId = gameId;
|
||||
this.data = data;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -46,7 +47,7 @@ public class StartChallenge extends RemoteMethodCall<Void> {
|
|||
private UUID challengeId;
|
||||
|
||||
public StartChallenge(Connection connection, UUID sessionId, UUID roomId, UUID tableId, UUID challengeId) {
|
||||
super(connection);
|
||||
super(connection, "StartChallenge", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class StartGame extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public StartGame(Connection connection, UUID sessionId, UUID roomId, UUID tableId) {
|
||||
super(connection);
|
||||
super(connection, "StartGame", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class StartReplay extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public StartReplay(Connection connection, UUID sessionId, UUID gameId) {
|
||||
super(connection);
|
||||
super(connection, "StartReplay", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class StartTournament extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public StartTournament(Connection connection, UUID sessionId, UUID roomId, UUID tableId) {
|
||||
super(connection);
|
||||
super(connection, "StartTournament", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class StopReplay extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public StopReplay(Connection connection, UUID sessionId, UUID gameId) {
|
||||
super(connection);
|
||||
super(connection, "StopReplay", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class StopWatching extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public StopWatching(Connection connection, UUID sessionId, UUID gameId) {
|
||||
super(connection);
|
||||
super(connection, "StopWatching", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ import java.rmi.RemoteException;
|
|||
import java.util.UUID;
|
||||
import mage.cards.decks.DeckCardLists;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.game.GameException;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
|
@ -47,7 +48,7 @@ public class SubmitDeck extends RemoteMethodCall<Boolean> {
|
|||
private DeckCardLists deckList;
|
||||
|
||||
public SubmitDeck(Connection connection, UUID sessionId, UUID tableId, DeckCardLists deckList) {
|
||||
super(connection);
|
||||
super(connection, "SubmitDeck", SessionState.CONNECTED);
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
this.deckList = deckList;
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -47,7 +48,7 @@ public class SwapSeats extends RemoteMethodCall<Void> {
|
|||
private int seat2;
|
||||
|
||||
public SwapSeats(Connection connection, UUID sessionId, UUID roomId, UUID tableId, int seat1, int seat2) {
|
||||
super(connection);
|
||||
super(connection, "SwapSeats", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
|
|
|
@ -31,6 +31,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class WatchGame extends RemoteMethodCall<Void> {
|
|||
private UUID sessionId;
|
||||
|
||||
public WatchGame(Connection connection, UUID sessionId, UUID gameId) {
|
||||
super(connection);
|
||||
super(connection, "WatchGame", SessionState.CONNECTED);
|
||||
this.gameId = gameId;
|
||||
this.sessionId = sessionId;
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@ package mage.remote.method;
|
|||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.MageException;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.interfaces.Server;
|
||||
import mage.remote.Connection;
|
||||
import mage.remote.RemoteMethodCall;
|
||||
|
@ -45,7 +46,7 @@ public class WatchTable extends RemoteMethodCall<Boolean> {
|
|||
private UUID sessionId;
|
||||
|
||||
public WatchTable(Connection connection, UUID sessionId, UUID roomId, UUID tableId) {
|
||||
super(connection);
|
||||
super(connection, "WatchTable", SessionState.CONNECTED);
|
||||
this.roomId = roomId;
|
||||
this.tableId = tableId;
|
||||
this.sessionId = sessionId;
|
||||
|
|
Loading…
Add table
Reference in a new issue