Subversion Repository Public Repository

litesoft

Diff Revisions 588 vs 589 for /trunk/GWT_Sandbox/CS_IDEA/src/org/litesoft/sandbox/csapp/server/CSappServiceImpl.java

Diff revisions: vs.
  @@ -1,14 +1,54 @@
1 1 package org.litesoft.sandbox.csapp.server;
2 2
3 - import com.google.gwt.user.server.rpc.RemoteServiceServlet;
3 + import java.util.*;
4 4
5 - import org.litesoft.sandbox.csapp.client.CSappService;
5 + import org.litesoft.sandbox.csapp.client.*;
6 + import org.litesoft.sandbox.csapp.client.dtos.*;
7 +
8 + import com.google.gwt.user.server.rpc.*;
6 9
7 10 public class CSappServiceImpl extends RemoteServiceServlet implements CSappService
8 11 {
9 12 @Override
10 - public String getMessage( String msg )
13 + public Response1 getMessage1( Request1 request )
14 + {
15 + List<String> zFilters = request.getFilters();
16 + String[] rv = new String[zFilters.size()];
17 + for ( int i = 0; i < zFilters.size(); i++ )
18 + {
19 + rv[i] = "SS1: " + zFilters.get(i);
20 + }
21 + return new Response1( rv );
22 + }
23 +
24 + @Override
25 + public Response2 getMessage2( Request2 request )
26 + {
27 + String[] zFilters = request.getFilters();
28 + String[] rv = new String[zFilters.length];
29 + for ( int i = 0; i < zFilters.length; i++ )
30 + {
31 + rv[i] = "SS2: " + zFilters[i];
32 + }
33 + return new Response2( rv );
34 + }
35 +
36 + // @Override
37 + public <Req extends Request, Resp extends Response> Resp getMessage( Req request )
38 + {
39 + if ( request instanceof Request1 )
40 + {
41 + return cast( getMessage1( (Request1) request ) );
42 + }
43 + if ( request instanceof Request2 )
44 + {
45 + return cast( getMessage2( (Request2) request ) );
46 + }
47 + return null;
48 + }
49 +
50 + @SuppressWarnings({"unchecked"}) private static <Resp extends Response> Resp cast( Response response )
11 51 {
12 - return "Client said: \"" + msg + "\"<br>Server answered: \"Hi!\"";
52 + return (Resp) response;
13 53 }
14 54 }