mirror of
https://github.com/correl/mage.git
synced 2024-12-25 03:00:15 +00:00
For Issue#524: added connect task timeout, reduced number of auto connection retries to one
This commit is contained in:
parent
089a990b26
commit
3454b2db8a
2 changed files with 11 additions and 3 deletions
|
@ -54,6 +54,8 @@ import java.util.Arrays;
|
|||
import java.util.List;
|
||||
import java.util.concurrent.CancellationException;
|
||||
import java.util.concurrent.ExecutionException;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.TimeoutException;
|
||||
|
||||
/**
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
|
@ -321,6 +323,8 @@ public class ConnectDialog extends MageDialog {
|
|||
|
||||
private boolean result = false;
|
||||
|
||||
private static final int CONNECTION_TIMEOUT_MS = 2100;
|
||||
|
||||
@Override
|
||||
protected Boolean doInBackground() throws Exception {
|
||||
lblStatus.setText("Connecting...");
|
||||
|
@ -332,7 +336,7 @@ public class ConnectDialog extends MageDialog {
|
|||
@Override
|
||||
protected void done() {
|
||||
try {
|
||||
get();
|
||||
get(CONNECTION_TIMEOUT_MS, TimeUnit.MILLISECONDS);
|
||||
setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
|
||||
if (result) {
|
||||
lblStatus.setText("");
|
||||
|
@ -348,8 +352,10 @@ public class ConnectDialog extends MageDialog {
|
|||
} catch (CancellationException ex) {
|
||||
logger.info("Connect was canceled");
|
||||
lblStatus.setText("Connect was canceled");
|
||||
MageFrame.stopConnecting();
|
||||
} catch (TimeoutException ex) {
|
||||
logger.fatal("Connection timeout: ", ex);
|
||||
} finally {
|
||||
MageFrame.stopConnecting();
|
||||
btnConnect.setEnabled(true);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -36,6 +36,7 @@ import mage.cards.repository.CardRepository;
|
|||
import mage.cards.repository.ExpansionInfo;
|
||||
import mage.cards.repository.ExpansionRepository;
|
||||
import mage.constants.Constants.SessionState;
|
||||
import mage.constants.ManaType;
|
||||
import mage.game.GameException;
|
||||
import mage.game.match.MatchOptions;
|
||||
import mage.game.tournament.TournamentOptions;
|
||||
|
@ -56,7 +57,6 @@ import org.jboss.remoting.transporter.TransporterClient;
|
|||
|
||||
import java.net.*;
|
||||
import java.util.*;
|
||||
import mage.constants.ManaType;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -159,6 +159,8 @@ public class SessionImpl implements Session {
|
|||
* 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");
|
||||
clientMetadata.put("numberOfCallRetries", "1");
|
||||
|
||||
// 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");
|
||||
|
|
Loading…
Reference in a new issue