Woman, Life, Freedom


Adaptive AUTOSAR
ARA public interface header documentation
execution_server.h
1#ifndef EXECUTION_SERVER_H
2#define EXECUTION_SERVER_H
3
4#include <map>
5#include <mutex>
6#include <string>
7#include "./execution_client.h"
8#include "../com/someip/rpc/rpc_server.h"
9
10namespace ara
11{
12 namespace exec
13 {
18 {
19 private:
20 const uint16_t cService{1};
21 const uint16_t cMethodId{1};
22
23 std::mutex mMutex;
24 com::someip::rpc::RpcServer *const mRpcServer;
25 std::map<std::string, ExecutionState> mExecutionStates;
26
27 static void injectErrorCode(
28 std::vector<uint8_t> &payload, ExecErrc errorCode);
29
30 bool handleExecutionStateReport(
31 const std::vector<uint8_t> &rpcRequestPayload,
32 std::vector<uint8_t> &rpcResponsePayload);
33
34 public:
37 explicit ExecutionServer(
39
46 std::string id, ExecutionState &state);
47 };
48 }
49}
50
51#endif
SOME/IP RPC server.
Definition: rpc_server.h:23
A class to handle the execution client requests at the EM side.
Definition: execution_server.h:18
ExecutionServer(com::someip::rpc::RpcServer *rpcServer)
Constructor.
Definition: execution_server.cpp:7
bool TryGetExecutionState(std::string id, ExecutionState &state)
Try to get the execution state of an instance specfier.
Definition: execution_server.cpp:86
ExecutionState
Adaptive application internal state.
Definition: execution_client.h:16
ExecErrc
Execution Management error codes.
Definition: exec_error_domain.h:13