chat/server/src/main/java/org/apidesign/demo/chat/server/ChatServerResource.java
branchNewChat
changeset 241 6a59fdb91011
parent 240 2d0750864a98
child 242 58596208d06d
     1.1 --- a/chat/server/src/main/java/org/apidesign/demo/chat/server/ChatServerResource.java	Fri Apr 22 08:53:13 2016 +0200
     1.2 +++ b/chat/server/src/main/java/org/apidesign/demo/chat/server/ChatServerResource.java	Fri Apr 22 08:58:08 2016 +0200
     1.3 @@ -23,10 +23,15 @@
     1.4   */
     1.5  package org.apidesign.demo.chat.server;
     1.6  
     1.7 +import java.io.ByteArrayInputStream;
     1.8 +import java.io.IOException;
     1.9  import java.util.ArrayList;
    1.10  import java.util.List;
    1.11  import java.util.logging.Logger;
    1.12 +import net.java.html.BrwsrCtx;
    1.13 +import net.java.html.json.Models;
    1.14  import org.apidesign.demo.chat.shared.Message;
    1.15 +import org.apidesign.demo.chat.shared.Query;
    1.16  import org.glassfish.grizzly.websockets.WebSocket;
    1.17  import org.glassfish.grizzly.websockets.WebSocketApplication;
    1.18  
    1.19 @@ -93,6 +98,12 @@
    1.20  
    1.21      @Override
    1.22      public void onMessage(WebSocket socket, String text) {
    1.23 -        super.onMessage(socket, text);
    1.24 +        try {
    1.25 +            ByteArrayInputStream is = new ByteArrayInputStream(text.getBytes("UTF-8"));
    1.26 +            Query q = Models.parse(BrwsrCtx.findDefault(ChatServerResource.class), Query.class, is);
    1.27 +            super.onMessage(socket, text);
    1.28 +        } catch (IOException ex) {
    1.29 +            throw new IllegalStateException(ex);
    1.30 +        }
    1.31      }
    1.32  }