--- a/src/com/beem/project/beem/ui/Login.java Sat Nov 07 06:51:51 2009 +0100
+++ b/src/com/beem/project/beem/ui/Login.java Sat Nov 07 07:06:17 2009 +0100
@@ -84,7 +84,7 @@
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- Log.d(TAG,"onCreate");
+ Log.d(TAG, "onCreate");
mSettings = PreferenceManager.getDefaultSharedPreferences(this);
setContentView(R.layout.login);
mProgressDialog = new ProgressDialog(this);
@@ -97,7 +97,7 @@
@Override
protected void onStop() {
super.onStop();
- Log.d(TAG,"onStop " + mIsConnectedService);
+ Log.d(TAG, "onStop " + mIsConnectedService);
if (mIsConfigured && (mIsConnectedService || mXmppFacade != null)) {
mReceiver.setBinded(false);
boolean isConnected = false;
@@ -119,9 +119,10 @@
/**
* {@inheritDoc}
*/
+ @Override
protected void onPause() {
super.onPause();
- Log.d(TAG,"onPause");
+ Log.d(TAG, "onPause");
this.unregisterReceiver(mReceiver);
mConnectionHandler.removeCallbacks(mConnectionRunnable);
mProgressDialog.dismiss();
@@ -130,9 +131,10 @@
/**
* {@inheritDoc}
*/
+ @Override
protected void onResume() {
super.onResume();
- Log.d(TAG,"onResume");
+ Log.d(TAG, "onResume");
this.registerReceiver(mReceiver, new IntentFilter(BeemBroadcastReceiver.BEEM_CONNECTION_CLOSED));
}
@@ -142,7 +144,7 @@
@Override
public void onStart() {
super.onStart();
- Log.d(TAG,"onStart " + mIsConnectedService);
+ Log.d(TAG, "onStart " + mIsConnectedService);
mIsConfigured = mSettings.getBoolean("PreferenceIsConfigured", false);
if (mIsConfigured && !mIsConnectedService) {
try {
@@ -153,7 +155,7 @@
bindService(Login.SERVICE_INTENT, mServConn, BIND_AUTO_CREATE);
mReceiver.setBinded(true);
mIsConnectedService = true;
- }
+ }
}
/**
@@ -199,8 +201,21 @@
}
}
+ /**
+ * Connection runnable.
+ * @author nikita
+ */
+ private class ConnectionRunnable implements Runnable {
- private class ConnectionRunnable implements Runnable {
+ /**
+ * Constructor.
+ */
+ public ConnectionRunnable() {
+ }
+
+ /**
+ * {@inheritDoc}
+ */
@Override
public void run() {
if (mRetry++ > 3) {
@@ -234,7 +249,7 @@
@Override
public void connectionClosed() throws RemoteException {
if (mXmppFacade != null) {
- mConnectionHandler.postAtTime(mConnectionRunnable, Integer.parseInt(mSettings.getString("settings_key_reco_delay", "10")) * 1000 + SystemClock.uptimeMillis());
+ launchReconnectionHandler();
mXmppFacade = null;
}
}
@@ -242,7 +257,7 @@
@Override
public void connectionClosedOnError() throws RemoteException {
if (mXmppFacade != null) {
- mConnectionHandler.postAtTime(mConnectionRunnable, Integer.parseInt(mSettings.getString("settings_key_reco_delay", "10")) * 1000 + SystemClock.uptimeMillis());
+ launchReconnectionHandler();
mXmppFacade = null;
}
}
@@ -259,7 +274,16 @@
}
dismissProgressDialog();
showToast(errorMsg);
- mConnectionHandler.postAtTime(mConnectionRunnable, Integer.parseInt(mSettings.getString("settings_key_reco_delay", "10")) * 1000 + SystemClock.uptimeMillis());
+ launchReconnectionHandler();
+ }
+
+ /**
+ * launch reconnection handler.
+ */
+ private void launchReconnectionHandler() {
+ mConnectionHandler.postAtTime(mConnectionRunnable,
+ Integer.parseInt(mSettings.getString("settings_key_reco_delay", "10")) * 1000
+ + SystemClock.uptimeMillis());
}
/**