in transaction-client/src/main/java/org/apache/omid/tso/client/TSOClient.java [322:352]
public TSOFuture<Void> close() {
final CloseEvent closeEvent = new CloseEvent();
fsm.sendEvent(closeEvent);
closeEvent.addListener(new Runnable() {
@Override
public void run() {
try {
closeEvent.get();
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
} finally {
fsmExecutor.shutdown();
if (currentTSOZNode != null) {
try {
currentTSOZNode.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (zkClient != null) {
zkClient.close();
}
}
}
}, fsmExecutor);
return new ForwardingTSOFuture<>(closeEvent);
}