a8d963c4dc2404cc0b039982948fc8b97c7c095a
[test/tct/csharp/api.git] /
1 using System;\r
2 using Tizen;\r
3 using Tizen.Applications;\r
4 using Tizen.Applications.RPCPort;\r
5 \r
6 namespace RpcPortStub\r
7 {\r
8     class App : ServiceApplication\r
9     {\r
10         private Stub _stub;\r
11 \r
12         private class Stub : StubBase\r
13         {\r
14             public Stub(string portName) : base(portName)\r
15             {\r
16                 Listen();\r
17             }\r
18 \r
19             protected override void OnConnectedEvent(string sender, string instance)\r
20             {\r
21                 Log.Debug("RPCPortStub", "OnConnectedEvent: sender::" + sender + " instance::" + instance);\r
22             }\r
23 \r
24             protected override void OnDisconnectedEvent(string sender, string instance)\r
25             {\r
26                 Log.Debug("RPCPortStub", "OnDisconnectedEvent: sender::" + sender + " instance::" + instance);\r
27             }\r
28 \r
29             protected override bool OnReceivedEvent(string sender, string instance, Port port)\r
30             {\r
31                 Log.Debug("RPCPortStub", "OnReceivedEvent: sender::" + sender + " instance::" + instance);\r
32                 try\r
33                 {\r
34                     using (Parcel p = new Parcel(port))\r
35                     {\r
36                         string str = p.ReadString();\r
37                         using (Parcel ret = new Parcel())\r
38                         {\r
39                             ret.WriteString(str);\r
40                             ret.Send(GetPort(Port.Type.Callback, instance));\r
41                         }\r
42                     }\r
43                 }\r
44                 catch (Exception)\r
45                 {\r
46                     Log.Error("RPCPortStub", "Exception happens");\r
47                     return false;\r
48                 }\r
49 \r
50                 return true;\r
51             }\r
52 \r
53             protected override void OnTerminatedEvent()\r
54             {\r
55                 Log.Debug("RPCPortStub", "OnTerminatedEvent");\r
56             }\r
57         }\r
58 \r
59         protected override void OnCreate()\r
60         {\r
61             base.OnCreate();\r
62             _stub = new Stub("Test");\r
63         }\r
64 \r
65         protected override void OnAppControlReceived(AppControlReceivedEventArgs e)\r
66         {\r
67             base.OnAppControlReceived(e);\r
68             if (e.ReceivedAppControl.ExtraData.TryGet("Test", out string val))\r
69             {\r
70                 if (val.Equals("finish")) {\r
71                     Log.Debug("RPCPortStub", "Finish");\r
72                     Exit();\r
73                 }\r
74             }\r
75         }\r
76 \r
77         protected override void OnDeviceOrientationChanged(DeviceOrientationEventArgs e)\r
78         {\r
79             base.OnDeviceOrientationChanged(e);\r
80         }\r
81 \r
82         protected override void OnLocaleChanged(LocaleChangedEventArgs e)\r
83         {\r
84             base.OnLocaleChanged(e);\r
85         }\r
86 \r
87         protected override void OnLowBattery(LowBatteryEventArgs e)\r
88         {\r
89             base.OnLowBattery(e);\r
90         }\r
91 \r
92         protected override void OnLowMemory(LowMemoryEventArgs e)\r
93         {\r
94             base.OnLowMemory(e);\r
95         }\r
96 \r
97         protected override void OnRegionFormatChanged(RegionFormatChangedEventArgs e)\r
98         {\r
99             base.OnRegionFormatChanged(e);\r
100         }\r
101 \r
102         protected override void OnTerminate()\r
103         {\r
104             base.OnTerminate();\r
105             _stub?.Dispose();\r
106         }\r
107 \r
108         static void Main(string[] args)\r
109         {\r
110             App app = new App();\r
111             app.Run(args);\r
112         }\r
113     }\r
114 }\r