1 package org.argeo.eclipse.ui.rcp.internal.rwt;
2
3 import org.eclipse.rap.rwt.client.Client;
4 import org.eclipse.rap.rwt.client.service.BrowserNavigation;
5 import org.eclipse.rap.rwt.client.service.BrowserNavigationListener;
6 import org.eclipse.rap.rwt.client.service.ClientService;
7 import org.eclipse.rap.rwt.client.service.JavaScriptExecutor;
8
9 public class RcpClient implements Client {
10
11 @Override
12 public <T extends ClientService> T getService(Class<T> type) {
13 if (type.isAssignableFrom(JavaScriptExecutor.class))
14 return (T) javaScriptExecutor;
15 else if (type.isAssignableFrom(BrowserNavigation.class))
16 return (T) browserNavigation;
17 else
18 return null;
19 }
20
21 private JavaScriptExecutor javaScriptExecutor = new JavaScriptExecutor() {
22
23 @Override
24 public void execute(String code) {
25
26
27 }
28 };
29 private BrowserNavigation browserNavigation = new BrowserNavigation() {
30
31 @Override
32 public void pushState(String state, String title) {
33
34
35 }
36
37 @Override
38 public void addBrowserNavigationListener(
39 BrowserNavigationListener listener) {
40
41
42 }
43 };
44 }