IQRF Gateway Daemon
ISerializer.h
Go to the documentation of this file.
1 /*
2  * Copyright 2016-2017 MICRORISC s.r.o.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #pragma once
18 
19 #include "ObjectFactory.h"
20 #include "DpaTask.h"
21 #include <memory>
22 #include <string>
23 
25 static const std::string CAT_CONF_STR("conf");
27 static const std::string CAT_DPA_STR("dpa");
28 
32 {
33 public:
34  // component
35  virtual const std::string& getName() const = 0;
36 
43  virtual std::string parseCategory(const std::string& request) = 0;
44 
51  virtual std::unique_ptr<DpaTask> parseRequest(const std::string& request) = 0;
52 
60  virtual std::string parseConfig(const std::string& request) = 0;
61 
68  virtual std::string encodeConfig(const std::string& request, const std::string& response) = 0;
69 
74  virtual std::string getLastError() const = 0;
75 
81  virtual std::string encodeAsyncAsDpaRaw(const DpaMessage& dpaMessage) const = 0;
82 
83  virtual ~ISerializer() {}
84 };
virtual std::unique_ptr< DpaTask > parseRequest(const std::string &request)=0
Parse DPA request.
virtual std::string parseCategory(const std::string &request)=0
Get category identification from request.
virtual ~ISerializer()
Definition: ISerializer.h:83
ISerializer interface.
Definition: ISerializer.h:31
virtual const std::string & getName() const =0
virtual std::string encodeAsyncAsDpaRaw(const DpaMessage &dpaMessage) const =0
Encode Asynchronous DPA message.
virtual std::string parseConfig(const std::string &request)=0
Parse confiquration request.
virtual std::string getLastError() const =0
Get last error string.
virtual std::string encodeConfig(const std::string &request, const std::string &response)=0
Encode confiquration response.