mirror of
https://github.com/magefree/mage.git
synced 2026-01-26 21:29:17 -08:00
* Reduced created JBoss OneWay Threads on Client from 100 to 10. Some formatting.
This commit is contained in:
parent
8491b5b90b
commit
8549f72010
3 changed files with 298 additions and 209 deletions
|
|
@ -86,218 +86,281 @@ public class CallbackClientImpl implements CallbackClient {
|
|||
public void run() {
|
||||
try {
|
||||
logger.debug(callback.getMessageId() + " -- " + callback.getMethod());
|
||||
if (callback.getMethod().equals("startGame")) {
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
GameManager.getInstance().setCurrentPlayerUUID(message.getPlayerId());
|
||||
gameStarted(message.getGameId(), message.getPlayerId());
|
||||
} else if (callback.getMethod().equals("startTournament")) {
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
tournamentStarted(message.getGameId(), message.getPlayerId());
|
||||
} else if (callback.getMethod().equals("startDraft")) {
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
draftStarted(message.getGameId(), message.getPlayerId());
|
||||
} else if (callback.getMethod().equals("replayGame")) {
|
||||
replayGame(callback.getObjectId());
|
||||
} else if (callback.getMethod().equals("showTournament")) {
|
||||
showTournament((UUID) callback.getObjectId());
|
||||
} else if (callback.getMethod().equals("watchGame")) {
|
||||
watchGame((UUID) callback.getObjectId());
|
||||
} else if (callback.getMethod().equals("chatMessage")) {
|
||||
ChatMessage message = (ChatMessage) callback.getData();
|
||||
ChatPanel panel = MageFrame.getChat(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
// play the to the message connected sound
|
||||
if (message.getSoundToPlay() != null) {
|
||||
switch (message.getSoundToPlay()) {
|
||||
case PlayerLeft:
|
||||
AudioManager.playPlayerLeft();
|
||||
break;
|
||||
case PlayerSubmittedDeck:
|
||||
AudioManager.playPlayerSubmittedDeck();
|
||||
break;
|
||||
case PlayerWhispered:
|
||||
AudioManager.playPlayerWhispered();
|
||||
break;
|
||||
switch (callback.getMethod()) {
|
||||
case "startGame":
|
||||
{
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
GameManager.getInstance().setCurrentPlayerUUID(message.getPlayerId());
|
||||
gameStarted(message.getGameId(), message.getPlayerId());
|
||||
break;
|
||||
}
|
||||
case "startTournament":
|
||||
{
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
tournamentStarted(message.getGameId(), message.getPlayerId());
|
||||
break;
|
||||
}
|
||||
case "startDraft":
|
||||
{
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
draftStarted(message.getGameId(), message.getPlayerId());
|
||||
break;
|
||||
}
|
||||
case "replayGame":
|
||||
replayGame(callback.getObjectId());
|
||||
break;
|
||||
case "showTournament":
|
||||
showTournament(callback.getObjectId());
|
||||
break;
|
||||
case "watchGame":
|
||||
watchGame(callback.getObjectId());
|
||||
break;
|
||||
case "chatMessage":
|
||||
{
|
||||
ChatMessage message = (ChatMessage) callback.getData();
|
||||
ChatPanel panel = MageFrame.getChat(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
// play the to the message connected sound
|
||||
if (message.getSoundToPlay() != null) {
|
||||
switch (message.getSoundToPlay()) {
|
||||
case PlayerLeft:
|
||||
AudioManager.playPlayerLeft();
|
||||
break;
|
||||
case PlayerSubmittedDeck:
|
||||
AudioManager.playPlayerSubmittedDeck();
|
||||
break;
|
||||
case PlayerWhispered:
|
||||
AudioManager.playPlayerWhispered();
|
||||
break;
|
||||
}
|
||||
}
|
||||
// send start message to chat if not done yet
|
||||
if (!panel.isStartMessageDone()) {
|
||||
createChatStartMessage(panel);
|
||||
}
|
||||
// send the message to subchat if exists and it's not a game message
|
||||
if (!message.getMessageType().equals(MessageType.GAME) && panel.getConnectedChat() != null) {
|
||||
panel.getConnectedChat().receiveMessage(message.getUsername(), message.getMessage(), message.getTime(), message.getMessageType(), ChatMessage.MessageColor.BLACK);
|
||||
} else {
|
||||
panel.receiveMessage(message.getUsername(), message.getMessage(), message.getTime(), message.getMessageType(), message.getColor());
|
||||
}
|
||||
|
||||
} break;
|
||||
}
|
||||
case "serverMessage":
|
||||
if (callback.getData() != null) {
|
||||
ChatMessage message = (ChatMessage) callback.getData();
|
||||
if (message.getColor().equals(ChatMessage.MessageColor.RED)) {
|
||||
JOptionPane.showMessageDialog(null, message.getMessage(), "Server message", JOptionPane.WARNING_MESSAGE);
|
||||
} else {
|
||||
JOptionPane.showMessageDialog(null, message.getMessage(), "Server message", JOptionPane.INFORMATION_MESSAGE);
|
||||
}
|
||||
} break;
|
||||
case "joinedTable":
|
||||
{
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
joinedTable(message.getRoomId(), message.getTableId(), message.getFlag());
|
||||
break;
|
||||
}
|
||||
// send start message to chat if not done yet
|
||||
if (!panel.isStartMessageDone()) {
|
||||
createChatStartMessage(panel);
|
||||
case "replayInit":
|
||||
{
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.init((GameView) callback.getData());
|
||||
} break;
|
||||
}
|
||||
// send the message to subchat if exists and it's not a game message
|
||||
if (!message.getMessageType().equals(MessageType.GAME) && panel.getConnectedChat() != null) {
|
||||
panel.getConnectedChat().receiveMessage(message.getUsername(), message.getMessage(), message.getTime(), message.getMessageType(), ChatMessage.MessageColor.BLACK);
|
||||
case "replayDone":
|
||||
{
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.endMessage((String) callback.getData(), callback.getMessageId());
|
||||
} break;
|
||||
}
|
||||
case "replayUpdate":
|
||||
{
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.updateGame((GameView) callback.getData());
|
||||
} break;
|
||||
}
|
||||
case "gameInit":
|
||||
{
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.init((GameView) callback.getData());
|
||||
} break;
|
||||
}
|
||||
case "gameOver":
|
||||
{
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.endMessage((String) callback.getData(), callback.getMessageId());
|
||||
} break;
|
||||
}
|
||||
case "gameError":
|
||||
frame.showErrorDialog("Game Error", (String) callback.getData());
|
||||
break;
|
||||
case "gameAsk":
|
||||
{
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.ask(message.getMessage(), message.getGameView(), callback.getMessageId());
|
||||
} break;
|
||||
}
|
||||
case "gameTarget":
|
||||
{
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.pickTarget(message.getMessage(), message.getCardsView(), message.getGameView(),
|
||||
message.getTargets(), message.isFlag(), message.getOptions(), callback.getMessageId());
|
||||
} break;
|
||||
}
|
||||
case "gameSelect":
|
||||
{
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.select(message.getMessage(), message.getGameView(), callback.getMessageId());
|
||||
} break;
|
||||
}
|
||||
case "gameChooseAbility":
|
||||
{
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.pickAbility((AbilityPickerView) callback.getData());
|
||||
} break;
|
||||
}
|
||||
case "gameChoosePile":
|
||||
{
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.pickPile(message.getMessage(), message.getPile1(), message.getPile2());
|
||||
} break;
|
||||
}
|
||||
case "gameChoose":
|
||||
{
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.getChoice(message.getMessage(), message.getStrings());
|
||||
} break;
|
||||
}
|
||||
case "gamePlayMana":
|
||||
{
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.playMana(message.getMessage(), message.getGameView(), callback.getMessageId());
|
||||
} break;
|
||||
}
|
||||
case "gamePlayXMana":
|
||||
{
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.playXMana(message.getMessage(), message.getGameView(), callback.getMessageId());
|
||||
} break;
|
||||
}
|
||||
case "gameSelectAmount":
|
||||
{
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.getAmount(message.getMin(), message.getMax(), message.getMessage());
|
||||
} break;
|
||||
}
|
||||
case "gameUpdate":
|
||||
{
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.updateGame((GameView) callback.getData());
|
||||
} break;
|
||||
}
|
||||
case "endGameInfo":
|
||||
MageFrame.getInstance().showGameEndDialog((GameEndView) callback.getData());
|
||||
break;
|
||||
case "showUserMessage":
|
||||
List<String> messageData = (List<String>) callback.getData();
|
||||
if (messageData.size() == 2) {
|
||||
JOptionPane.showMessageDialog(null, messageData.get(1), messageData.get(0), JOptionPane.WARNING_MESSAGE);
|
||||
} break;
|
||||
case "gameInform":
|
||||
if (callback.getMessageId() > gameInformMessageId) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.inform(message.getMessage(), message.getGameView(), callback.getMessageId());
|
||||
}
|
||||
} else {
|
||||
panel.receiveMessage(message.getUsername(), message.getMessage(), message.getTime(), message.getMessageType(), message.getColor());
|
||||
logger.warn(new StringBuilder("message out of sequence - ignoring").append("MessageId = ").append(callback.getMessageId()).append(" method = ").append(callback.getMethod()));
|
||||
//logger.warn("message out of sequence - ignoring");
|
||||
} gameInformMessageId = messageId;
|
||||
break;
|
||||
case "gameInformPersonal":
|
||||
{
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
JOptionPane.showMessageDialog(panel, message.getMessage(), "Game message",
|
||||
JOptionPane.INFORMATION_MESSAGE);
|
||||
} break;
|
||||
}
|
||||
|
||||
}
|
||||
} else if (callback.getMethod().equals("serverMessage")) {
|
||||
if (callback.getData() != null) {
|
||||
ChatMessage message = (ChatMessage) callback.getData();
|
||||
if (message.getColor().equals(ChatMessage.MessageColor.RED)) {
|
||||
JOptionPane.showMessageDialog(null, message.getMessage(), "Server message", JOptionPane.WARNING_MESSAGE);
|
||||
case "sideboard":
|
||||
{
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
DeckView deckView = message.getDeck();
|
||||
Deck deck = DeckUtil.construct(deckView);
|
||||
if (message.getFlag()) {
|
||||
construct(deck, message.getTableId(), message.getTime());
|
||||
} else {
|
||||
sideboard(deck, message.getTableId(), message.getTime());
|
||||
} break;
|
||||
}
|
||||
case "construct":
|
||||
{
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
DeckView deckView = message.getDeck();
|
||||
Deck deck = DeckUtil.construct(deckView);
|
||||
construct(deck, message.getTableId(), message.getTime());
|
||||
break;
|
||||
}
|
||||
case "draftOver":
|
||||
MageFrame.removeDraft(callback.getObjectId());
|
||||
break;
|
||||
case "draftPick":
|
||||
{
|
||||
DraftClientMessage message = (DraftClientMessage) callback.getData();
|
||||
DraftPanel panel = MageFrame.getDraft(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.loadBooster(message.getDraftPickView());
|
||||
} break;
|
||||
}
|
||||
case "draftUpdate":
|
||||
{
|
||||
DraftPanel panel = MageFrame.getDraft(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.updateDraft((DraftView) callback.getData());
|
||||
} break;
|
||||
}
|
||||
case "draftInform":
|
||||
if (callback.getMessageId() > messageId) {
|
||||
DraftClientMessage message = (DraftClientMessage) callback.getData();
|
||||
} else {
|
||||
JOptionPane.showMessageDialog(null, message.getMessage(), "Server message", JOptionPane.INFORMATION_MESSAGE);
|
||||
logger.warn("message out of sequence - ignoring");
|
||||
} break;
|
||||
case "draftInit":
|
||||
{
|
||||
DraftClientMessage message = (DraftClientMessage) callback.getData();
|
||||
DraftPanel panel = MageFrame.getDraft(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.loadBooster(message.getDraftPickView());
|
||||
} break;
|
||||
}
|
||||
}
|
||||
} else if (callback.getMethod().equals("joinedTable")) {
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
joinedTable(message.getRoomId(), message.getTableId(), message.getFlag());
|
||||
} else if (callback.getMethod().equals("replayInit")) {
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.init((GameView) callback.getData());
|
||||
}
|
||||
} else if (callback.getMethod().equals("replayDone")) {
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.endMessage((String) callback.getData(), callback.getMessageId());
|
||||
}
|
||||
} else if (callback.getMethod().equals("replayUpdate")) {
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.updateGame((GameView) callback.getData());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameInit")) {
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.init((GameView) callback.getData());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameOver")) {
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.endMessage((String) callback.getData(), callback.getMessageId());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameError")) {
|
||||
frame.showErrorDialog("Game Error", (String) callback.getData());
|
||||
} else if (callback.getMethod().equals("gameAsk")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.ask(message.getMessage(), message.getGameView(), callback.getMessageId());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameTarget")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.pickTarget(message.getMessage(), message.getCardsView(), message.getGameView(),
|
||||
message.getTargets(), message.isFlag(), message.getOptions(), callback.getMessageId());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameSelect")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.select(message.getMessage(), message.getGameView(), callback.getMessageId());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameChooseAbility")) {
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.pickAbility((AbilityPickerView) callback.getData());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameChoosePile")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.pickPile(message.getMessage(), message.getPile1(), message.getPile2());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameChoose")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.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 = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.playMana(message.getMessage(), message.getGameView(), callback.getMessageId());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gamePlayXMana")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.playXMana(message.getMessage(), message.getGameView(), callback.getMessageId());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameSelectAmount")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.getAmount(message.getMin(), message.getMax(), message.getMessage());
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameUpdate")) {
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.updateGame((GameView) callback.getData());
|
||||
}
|
||||
} else if (callback.getMethod().equals("endGameInfo")) {
|
||||
MageFrame.getInstance().showGameEndDialog((GameEndView) callback.getData());
|
||||
} else if (callback.getMethod().equals("showUserMessage")) {
|
||||
List<String> messageData = (List<String>) callback.getData();
|
||||
if (messageData.size() == 2) {
|
||||
JOptionPane.showMessageDialog(null, messageData.get(1), messageData.get(0), JOptionPane.WARNING_MESSAGE);
|
||||
}
|
||||
} else if (callback.getMethod().equals("gameInform")) {
|
||||
|
||||
if (callback.getMessageId() > gameInformMessageId) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.inform(message.getMessage(), message.getGameView(), callback.getMessageId());
|
||||
}
|
||||
} else {
|
||||
logger.warn(new StringBuilder("message out of sequence - ignoring").append("MessageId = ").append(callback.getMessageId()).append(" method = ").append(callback.getMethod()));
|
||||
//logger.warn("message out of sequence - ignoring");
|
||||
}
|
||||
|
||||
gameInformMessageId = messageId;
|
||||
} else if (callback.getMethod().equals("gameInformPersonal")) {
|
||||
GameClientMessage message = (GameClientMessage) callback.getData();
|
||||
GamePanel panel = MageFrame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
JOptionPane.showMessageDialog(panel, message.getMessage(), "Game message",
|
||||
JOptionPane.INFORMATION_MESSAGE);
|
||||
}
|
||||
} else if (callback.getMethod().equals("sideboard")) {
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
DeckView deckView = message.getDeck();
|
||||
Deck deck = DeckUtil.construct(deckView);
|
||||
if (message.getFlag()) {
|
||||
construct(deck, message.getTableId(), message.getTime());
|
||||
} else {
|
||||
sideboard(deck, message.getTableId(), message.getTime());
|
||||
}
|
||||
} else if (callback.getMethod().equals("construct")) {
|
||||
TableClientMessage message = (TableClientMessage) callback.getData();
|
||||
DeckView deckView = message.getDeck();
|
||||
Deck deck = DeckUtil.construct(deckView);
|
||||
construct(deck, message.getTableId(), message.getTime());
|
||||
} else if (callback.getMethod().equals("draftOver")) {
|
||||
MageFrame.removeDraft(callback.getObjectId());
|
||||
} else if (callback.getMethod().equals("draftPick")) {
|
||||
DraftClientMessage message = (DraftClientMessage) callback.getData();
|
||||
DraftPanel panel = MageFrame.getDraft(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.loadBooster(message.getDraftPickView());
|
||||
}
|
||||
} else if (callback.getMethod().equals("draftUpdate")) {
|
||||
DraftPanel panel = MageFrame.getDraft(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.updateDraft((DraftView) callback.getData());
|
||||
}
|
||||
} else if (callback.getMethod().equals("draftInform")) {
|
||||
if (callback.getMessageId() > messageId) {
|
||||
DraftClientMessage message = (DraftClientMessage) callback.getData();
|
||||
} else {
|
||||
logger.warn("message out of sequence - ignoring");
|
||||
}
|
||||
} else if (callback.getMethod().equals("draftInit")) {
|
||||
DraftClientMessage message = (DraftClientMessage) callback.getData();
|
||||
DraftPanel panel = MageFrame.getDraft(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.loadBooster(message.getDraftPickView());
|
||||
}
|
||||
} else if (callback.getMethod().equals("tournamentInit")) {
|
||||
case "tournamentInit":
|
||||
break;
|
||||
}
|
||||
messageId = callback.getMessageId();
|
||||
} catch (Exception ex) {
|
||||
|
|
|
|||
|
|
@ -150,19 +150,37 @@ public class SessionImpl implements Session {
|
|||
break;
|
||||
}
|
||||
InvokerLocator clientLocator = new InvokerLocator(connection.getURI());
|
||||
Map<String, String> metadata = new HashMap<String, String>();
|
||||
|
||||
Map<String, String> metadata = new HashMap<>();
|
||||
metadata.put(SocketWrapper.WRITE_TIMEOUT, "2000");
|
||||
metadata.put("generalizeSocketException", "true");
|
||||
server = (MageServer) TransporterClient.createTransporterClient(clientLocator.getLocatorURI(), MageServer.class, metadata);
|
||||
|
||||
Map<String, String> clientMetadata = new HashMap<String, String>();
|
||||
// http://docs.jboss.org/jbossremoting/docs/guide/2.5/html_single/#d0e1057
|
||||
Map<String, String> clientMetadata = new HashMap<>();
|
||||
|
||||
clientMetadata.put(SocketWrapper.WRITE_TIMEOUT, "2000");
|
||||
/* generalizeSocketException
|
||||
* If set to false, a failed invocation will be retried in the case of
|
||||
* SocketExceptions. If set to true, a failed invocation will be retried in the case of
|
||||
* <classname>SocketException</classname>s and also any <classname>IOException</classname>
|
||||
* whose message matches the regular expression
|
||||
* <code>^.*(?:connection.*reset|connection.*closed|broken.*pipe).*$</code>.
|
||||
* See also the "numberOfCallRetries" parameter, above. The default value is false.*/
|
||||
clientMetadata.put("generalizeSocketException", "true");
|
||||
|
||||
/* A remoting server also has the capability to detect when a client is no longer available.
|
||||
* This is done by estabilishing a lease with the remoting clients that connect to a server.
|
||||
* On the client side, an org.jboss.remoting.LeasePinger periodically sends PING messages to
|
||||
* the server, and on the server side an org.jboss.remoting.Lease informs registered listeners
|
||||
* if the PING doesn't arrive withing the specified timeout period. */
|
||||
clientMetadata.put(Client.ENABLE_LEASE, "true");
|
||||
// Indicated the max number of threads used within oneway thread pool.
|
||||
clientMetadata.put(Client.MAX_NUM_ONEWAY_THREADS, "10");
|
||||
clientMetadata.put(Remoting.USE_CLIENT_CONNECTION_IDENTITY, "true");
|
||||
callbackClient = new Client(clientLocator, "callback", clientMetadata);
|
||||
|
||||
Map<String, String> listenerMetadata = new HashMap<String, String>();
|
||||
Map<String, String> listenerMetadata = new HashMap<>();
|
||||
if (debugMode) {
|
||||
// prevent client from disconnecting while debugging
|
||||
listenerMetadata.put(ConnectionValidator.VALIDATOR_PING_PERIOD, "1000000");
|
||||
|
|
@ -173,7 +191,7 @@ public class SessionImpl implements Session {
|
|||
}
|
||||
callbackClient.connect(new ClientConnectionListener(), listenerMetadata);
|
||||
|
||||
Map<String, String> callbackMetadata = new HashMap<String, String>();
|
||||
Map<String, String> callbackMetadata = new HashMap<>();
|
||||
callbackMetadata.put(Bisocket.IS_CALLBACK_SERVER, "true");
|
||||
if (callbackHandler == null) {
|
||||
callbackHandler = new CallbackHandler();
|
||||
|
|
|
|||
|
|
@ -10,12 +10,16 @@ import java.util.concurrent.TimeUnit;
|
|||
*
|
||||
* @author ayrat
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
public class ThreadUtils {
|
||||
|
||||
public static final ThreadPoolExecutor threadPool;
|
||||
public static final ThreadPoolExecutor threadPool2;
|
||||
private static int threadCount;
|
||||
static {
|
||||
/** used in CardInfoPaneImpl
|
||||
*
|
||||
*/
|
||||
threadPool = new ThreadPoolExecutor(4, 4, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue(), new ThreadFactory() {
|
||||
@Override
|
||||
public Thread newThread (Runnable runnable) {
|
||||
|
|
@ -26,6 +30,10 @@ public class ThreadUtils {
|
|||
}
|
||||
});
|
||||
threadPool.prestartAllCoreThreads();
|
||||
|
||||
/**
|
||||
* Used for MageActionCallback
|
||||
*/
|
||||
threadPool2 = new ThreadPoolExecutor(4, 4, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue(), new ThreadFactory() {
|
||||
@Override
|
||||
public Thread newThread (Runnable runnable) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue