1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.universAAL.ri.gateway.eimanager.impl.exporting;
22
23 import java.io.IOException;
24
25 import org.universAAL.middleware.container.ModuleContext;
26 import org.universAAL.middleware.context.ContextEvent;
27 import org.universAAL.middleware.context.ContextEventPattern;
28 import org.universAAL.middleware.context.ContextSubscriber;
29 import org.universAAL.ri.gateway.eimanager.impl.ProxyBusMember;
30
31 public class ProxyContextSubscriber extends ProxyBusMember {
32
33 private ContextSubscriber subscriber;
34
35 public ProxyContextSubscriber(ExportedProxyManager manager, ModuleContext mc, ContextEventPattern[] subscriptions) {
36 super(manager,"","", mc);
37 subscriber = new ProxiedContextSubscriber(mc, subscriptions);
38 }
39
40 class ProxiedContextSubscriber extends ContextSubscriber {
41
42 protected ProxiedContextSubscriber(ModuleContext context,
43 ContextEventPattern[] initialSubscriptions) {
44 super(context, initialSubscriptions);
45 }
46
47 public void communicationChannelBroken() {
48 }
49
50 public void handleContextEvent(ContextEvent event) {
51 try {
52 ((ExportedProxyManager)getManager()).handleContextEvent(subscriber.getMyID(), event);
53 } catch (IOException e) {
54
55 e.printStackTrace();
56 }
57 }
58
59 }
60
61 public void removeProxy() {
62 subscriber.close();
63 }
64
65 public String getId() {
66 return subscriber.getMyID();
67 }
68 }