git://source.jalview.org
/
vamsas.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
implement new client factory methods to open a stored session document in a new vamsa...
[vamsas.git]
/
src
/
uk
/
ac
/
vamsas
/
client
/
simpleclient
/
SimplePickManager.java
diff --git
a/src/uk/ac/vamsas/client/simpleclient/SimplePickManager.java
b/src/uk/ac/vamsas/client/simpleclient/SimplePickManager.java
index
376662c
..
5f92d37
100644
(file)
--- a/
src/uk/ac/vamsas/client/simpleclient/SimplePickManager.java
+++ b/
src/uk/ac/vamsas/client/simpleclient/SimplePickManager.java
@@
-33,6
+33,10
@@
public class SimplePickManager implements IPickManager {
*/
\r
private boolean passThru=true;
\r
/**
\r
*/
\r
private boolean passThru=true;
\r
/**
\r
+ * internal flag - set to true to sleep until passThru is true before passing on a message
\r
+ */
\r
+ private boolean qUEUE=false;
\r
+ /**
\r
* the client apps message handler
\r
*/
\r
IMessageHandler pickHandler=null;
\r
* the client apps message handler
\r
*/
\r
IMessageHandler pickHandler=null;
\r
@@
-42,7
+46,9
@@
public class SimplePickManager implements IPickManager {
}
\r
\r
public synchronized void sendMessage(Message message) {
\r
}
\r
\r
public synchronized void sendMessage(Message message) {
\r
- manager.sendMessage(message);
\r
+ // throw away messages whilst we block
\r
+ if (passThru && manager!=null)
\r
+ manager.sendMessage(message);
\r
}
\r
/**
\r
* pass message onto the Apps handler, or wait until
\r
}
\r
/**
\r
* pass message onto the Apps handler, or wait until
\r
@@
-50,12
+56,15
@@
public class SimplePickManager implements IPickManager {
* @param message
\r
*/
\r
protected synchronized void handleMessage(Message message) {
\r
* @param message
\r
*/
\r
protected synchronized void handleMessage(Message message) {
\r
- while (!passThru) {
\r
+ if (qUEUE) {
\r
+ while (!passThru && manager!=null) {
\r
+ log.debug("Not passing through.");
\r
try {
\r
Thread.sleep(5);
\r
} catch (InterruptedException e) {};
\r
try {
\r
Thread.sleep(5);
\r
} catch (InterruptedException e) {};
\r
+ }
\r
}
\r
}
\r
- if (passThru)
\r
+ if (passThru && manager!=null)
\r
pickHandler.handleMessage(message);
\r
}
\r
\r
pickHandler.handleMessage(message);
\r
}
\r
\r
@@
-72,8
+81,14
@@
public class SimplePickManager implements IPickManager {
public void setPassThru(boolean passThru) {
\r
this.passThru = passThru;
\r
}
\r
public void setPassThru(boolean passThru) {
\r
this.passThru = passThru;
\r
}
\r
-
\r
+ /**
\r
+ * shutdown the pickmanager and remove all references to it
\r
+ */
\r
public void shutdown() {
\r
public void shutdown() {
\r
- manager.shutdown();
\r
+ passThru=false;
\r
+ manager.registerMessageHandler(null);
\r
+ SocketManager dying = manager;
\r
+ manager=null;
\r
+ dying.shutdown();
\r
}
\r
}
\r
}
\r
}
\r