X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.document.server%2Fsrc%2Forg%2Fsimantics%2Fdocument%2Fserver%2Fhandler%2FEventHandler.java;fp=bundles%2Forg.simantics.document.server%2Fsrc%2Forg%2Fsimantics%2Fdocument%2Fserver%2Fhandler%2FEventHandler.java;h=77719be3050aaac3e45b99dd9af94bc5a28c2770;hb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;hp=beb74608ed2d73eb26e5b5a728b7c37b58dc7549;hpb=24e2b34260f219f0d1644ca7a138894980e25b14;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.document.server/src/org/simantics/document/server/handler/EventHandler.java b/bundles/org.simantics.document.server/src/org/simantics/document/server/handler/EventHandler.java index beb74608e..77719be30 100644 --- a/bundles/org.simantics.document.server/src/org/simantics/document/server/handler/EventHandler.java +++ b/bundles/org.simantics.document.server/src/org/simantics/document/server/handler/EventHandler.java @@ -1,43 +1,43 @@ -package org.simantics.document.server.handler; - -import org.simantics.Simantics; -import org.simantics.db.ReadGraph; -import org.simantics.db.exception.DatabaseException; -import org.simantics.db.request.Read; -import org.simantics.document.server.io.CommandContext; -import org.simantics.document.server.io.CommandResult; -import org.simantics.document.server.serverResponse.Error; -import org.simantics.document.server.serverResponse.IDelayedResponse; -import org.simantics.document.server.serverResponse.ServerResponse; - -public abstract class EventHandler extends AbstractEventHandler { - - protected abstract ServerResponse handle(ReadGraph graph, CommandContext parameters) throws DatabaseException; - - public CommandResult handle(final CommandContext parameters) { - try { - ServerResponse response = Simantics.getSession().syncRequest(new Read() { - @Override - public ServerResponse perform(ReadGraph graph) throws DatabaseException { - return handle(graph, parameters); - } - }); - - if(response instanceof IDelayedResponse && !(((IDelayedResponse)response).hasRun())) { - try { - synchronized(response) { - response.wait(20000); - } - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - - return response; - } catch (DatabaseException e) { - e.printStackTrace(); - return new Error(e.getMessage()); // Return some error - } - } - -} +package org.simantics.document.server.handler; + +import org.simantics.Simantics; +import org.simantics.db.ReadGraph; +import org.simantics.db.exception.DatabaseException; +import org.simantics.db.request.Read; +import org.simantics.document.server.io.CommandContext; +import org.simantics.document.server.io.CommandResult; +import org.simantics.document.server.serverResponse.Error; +import org.simantics.document.server.serverResponse.IDelayedResponse; +import org.simantics.document.server.serverResponse.ServerResponse; + +public abstract class EventHandler extends AbstractEventHandler { + + protected abstract ServerResponse handle(ReadGraph graph, CommandContext parameters) throws DatabaseException; + + public CommandResult handle(final CommandContext parameters) { + try { + ServerResponse response = Simantics.getSession().syncRequest(new Read() { + @Override + public ServerResponse perform(ReadGraph graph) throws DatabaseException { + return handle(graph, parameters); + } + }); + + if(response instanceof IDelayedResponse && !(((IDelayedResponse)response).hasRun())) { + try { + synchronized(response) { + response.wait(20000); + } + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + + return response; + } catch (DatabaseException e) { + e.printStackTrace(); + return new Error(e.getMessage()); // Return some error + } + } + +}