package studio.kdb;
public class ReloadQKeywords {
public ReloadQKeywords(final Server server) {
if (server != null) {
Runnable runner = new Runnable() {
public void run() {
kx.c c = null;
Object r = null;
try {
c = ConnectionPool.getInstance().leaseConnection(server);
ConnectionPool.getInstance().checkConnected(c);
c.k(new K.KCharacterVector("key`.q"));
r = c.getResponse();
}
catch (Throwable t) {
ConnectionPool.getInstance().purge(server);
c = null;
}
finally {
if (c != null)
ConnectionPool.getInstance().freeConnection(server,c);
}
if (r instanceof K.KSymbolVector)
Config.getInstance().saveQKeywords((String[]) ((K.KSymbolVector) r).getArray());
}
;
};
Thread t = new Thread(runner);
t.setName("QKeywordReloader");
t.setDaemon(true);
t.start();
}
}
}