1 package org.simantics.document.server;
\r
3 import java.util.List;
\r
5 import org.simantics.db.procedure.Listener;
\r
6 import org.slf4j.Logger;
\r
7 import org.slf4j.LoggerFactory;
\r
9 public class DocumentHistoryListener implements Listener<List<JSONObject>> {
\r
10 private static final Logger LOGGER = LoggerFactory.getLogger(DocumentHistoryListener.class);
\r
12 final private DocumentHistory history;
\r
14 private boolean disposed = false;
\r
16 DocumentHistoryListener(DocumentHistory history) {
\r
17 this.history = history;
\r
21 public void execute(List<JSONObject> result) {
\r
23 synchronized(history) {
\r
25 history.refresh(result);
\r
26 if(!history.hasListeners()) {
\r
27 history.removeUpdater();
\r
36 public void exception(Throwable t) {
\r
37 LOGGER.warn("DocumentHistoryListener received an exception.", t);
\r
41 public boolean isDisposed() {
\r
43 synchronized(history) {
\r
44 if(!history.hasListeners()) {
\r
45 history.removeUpdater();
\r