implement screenshot feature
[platform/core/uifw/aurum.git] / org.tizen.aurum-bootstrap / inc / AurumServiceImpl.h
1 #ifndef aurum_IMPL_H
2 #define aurum_IMPL_H
3
4 #include <grpcpp/grpcpp.h>
5 #include "Commands/Command.h"
6 #include <aurum.grpc.pb.h>
7
8 class aurumServiceImpl final : public aurum::Bootstrap::Service {
9 public:
10     aurumServiceImpl();
11     virtual ~aurumServiceImpl();
12
13 protected:
14     ::grpc::Status execute(Command *cmd);
15
16 public:
17     ::grpc::Status sync(::grpc::ServerContext *  context,
18                         const ::aurum::ReqEmpty *request,
19                         ::aurum::RspEmpty *      response) override;
20     ::grpc::Status killServer(::grpc::ServerContext *  context,
21                               const ::aurum::ReqEmpty *request,
22                               ::aurum::RspEmpty *      response) override;
23
24     ::grpc::Status findElement(::grpc::ServerContext *        context,
25                                const ::aurum::ReqFindElement *request,
26                                ::aurum::RspFindElement *response) override;
27
28     ::grpc::Status getValue(::grpc::ServerContext *     context,
29                             const ::aurum::ReqGetValue *request,
30                             ::aurum::RspGetValue *      response) override;
31     ::grpc::Status setValue(::grpc::ServerContext *     context,
32                             const ::aurum::ReqSetValue *request,
33                             ::aurum::RspSetValue *      response) override;
34     ::grpc::Status getAttribute(::grpc::ServerContext *         context,
35                                 const ::aurum::ReqGetAttribute *request,
36                                 ::aurum::RspGetAttribute *response) override;
37     ::grpc::Status getSize(::grpc::ServerContext *    context,
38                            const ::aurum::ReqGetSize *request,
39                            ::aurum::RspGetSize *      response) override;
40     ::grpc::Status clear(::grpc::ServerContext *  context,
41                          const ::aurum::ReqClear *request,
42                          ::aurum::RspClear *      response) override;
43     ::grpc::Status installApp(
44         ::grpc::ServerContext *                        context,
45         ::grpc::ServerReader< ::aurum::ReqInstallApp> *reader,
46         ::aurum::RspInstallApp *                       response) override;
47     ::grpc::Status removeApp(::grpc::ServerContext *      context,
48                              const ::aurum::ReqRemoveApp *request,
49                              ::aurum::RspRemoveApp *      response) override;
50     ::grpc::Status getAppInfo(::grpc::ServerContext *       context,
51                               const ::aurum::ReqGetAppInfo *request,
52                               ::aurum::RspGetAppInfo *      response) override;
53     ::grpc::Status launchApp(::grpc::ServerContext *      context,
54                              const ::aurum::ReqLaunchApp *request,
55                              ::aurum::RspLaunchApp *      response) override;
56     ::grpc::Status closeApp(::grpc::ServerContext *     context,
57                             const ::aurum::ReqCloseApp *request,
58                             ::aurum::RspCloseApp *      response) override;
59
60     ::grpc::Status click(::grpc::ServerContext *  context,
61                          const ::aurum::ReqClick *request,
62                          ::aurum::RspClick *      response) override;
63     ::grpc::Status longClick(::grpc::ServerContext *  context,
64                              const ::aurum::ReqClick *request,
65                              ::aurum::RspClick *      response) override;
66     ::grpc::Status flick(::grpc::ServerContext *  context,
67                          const ::aurum::ReqFlick *request,
68                          ::aurum::RspFlick *      response) override;
69
70     ::grpc::Status touchDown(::grpc::ServerContext *      context,
71                              const ::aurum::ReqTouchDown *request,
72                              ::aurum::RspTouchDown *      response) override;
73     ::grpc::Status touchUp(::grpc::ServerContext *    context,
74                            const ::aurum::ReqTouchUp *request,
75                            ::aurum::RspTouchUp *      response) override;
76     ::grpc::Status touchMove(::grpc::ServerContext *      context,
77                              const ::aurum::ReqTouchMove *request,
78                              ::aurum::RspTouchMove *      response) override;
79
80     ::grpc::Status getDeviceTime(::grpc::ServerContext *          context,
81                                  const ::aurum::ReqGetDeviceTime *request,
82                                  ::aurum::RspGetDeviceTime *response) override;
83     ::grpc::Status getLocation(::grpc::ServerContext *        context,
84                                const ::aurum::ReqGetLocation *request,
85                                ::aurum::RspGetLocation *response) override;
86     ::grpc::Status sendKey(::grpc::ServerContext *context,
87                            const ::aurum::ReqKey *request,
88                            ::aurum::RspKey *      response) override;
89     ::grpc::Status takeScreenshot(
90         ::grpc::ServerContext *context,
91         const ::aurum::ReqTakeScreenshot *                 request,
92         ::grpc::ServerWriter< ::aurum::RspTakeScreenshot>* writer) override;
93 };
94
95 #endif