]> git.argeo.org Git - gpl/argeo-slc.git/blob - org.argeo.slc.detached/src/main/java/org/argeo/slc/detached/rmi/AutoUiServerImpl.java
fa102a227bf4760184bbc0633d71805c77e3c96d
[gpl/argeo-slc.git] / org.argeo.slc.detached / src / main / java / org / argeo / slc / detached / rmi / AutoUiServerImpl.java
1 package org.argeo.slc.detached.rmi;
2
3 import java.rmi.Naming;
4 import java.rmi.RemoteException;
5 import java.rmi.server.UnicastRemoteObject;
6 import java.util.Map;
7 import java.util.TreeMap;
8
9 public class AutoUiServerImpl extends UnicastRemoteObject implements
10 AutoUiServer, AutoUiContext {
11 private Map map = new TreeMap();
12
13 public AutoUiServerImpl() throws RemoteException {
14 super();
15 }
16
17 public Object executeTask(AutoUiTask task) throws RemoteException {
18 try {
19 return task.execute(this);
20 } catch (Exception e) {
21 throw new RemoteException("Coul not execute task.", e);
22 }
23 }
24
25 public Object getLocalRef(String key) {
26 return map.get(key);
27 }
28
29 public void setLocalRef(String key, Object ref) {
30 map.put(key, ref);
31 }
32
33 public static void main(String[] args) {
34 if (System.getSecurityManager() == null) {
35 System.setSecurityManager(new SecurityManager());
36 }
37 try {
38 String name = "AutoUiServer";
39 AutoUiServer engine = new AutoUiServerImpl();
40 // AutoUiServer stub = (AutoUiServer) UnicastRemoteObject
41 // .exportObject(engine, 0);
42 // Registry registry = LocateRegistry.getRegistry();
43 // registry.rebind(name, stub);
44 Naming.rebind(name, engine);
45 System.out.println("AutoUiServer bound");
46
47 } catch (Exception e) {
48 System.err.println("AutoUiServer exception:");
49 e.printStackTrace();
50 }
51
52 }
53 }