HiveMindBridge
UserCallRequestHandler.h
Go to the documentation of this file.
1 #ifndef HIVEMINDBRIDGE_USERCALLREQUESTHANDLER_H
2 #define HIVEMINDBRIDGE_USERCALLREQUESTHANDLER_H
3 
5 #include "IUserCallbackMap.h"
8 #include <cpp-common/ILogger.h>
9 
11  public:
12  UserCallRequestHandler(ILogger& logger, IUserCallbackMap& callbackMap);
13 
14  std::variant<std::monostate, InboundRequestHandle, InboundResponseHandle> handleMessage(
15  const MessageDTO& message, const UserCallRequestDTO& ucRequest);
16 
17  private:
18  std::optional<CallbackReturn> callbackWrapper(const CallbackArgs& args,
19  const std::string& functionName);
20 
21  ILogger& m_logger;
23 
24  FunctionListLengthResponseDTO handleFunctionListLengthRequest(
25  MessageDTO message, FunctionListLengthRequestDTO fcRequest);
26  FunctionDescriptionResponseDTO handleFunctionDescriptionRequest(
27  MessageDTO message, FunctionDescriptionRequestDTO fcRequest);
28  FunctionCallResponseDTO handleFunctionCallRequest(MessageDTO message,
29  FunctionCallRequestDTO fcRequest,
30  InboundRequestHandle* result);
31 };
32 
33 #endif // HIVEMINDBRIDGE_USERCALLREQUESTHANDLER_H
IUserCallbackMap
Definition: IUserCallbackMap.h:6
UserCallRequestHandler::handleMessage
std::variant< std::monostate, InboundRequestHandle, InboundResponseHandle > handleMessage(const MessageDTO &message, const UserCallRequestDTO &ucRequest)
Definition: UserCallRequestHandler.cpp:7
UserCallRequestHandler
Definition: UserCallRequestHandler.h:10
UserCallRequestHandler::m_logger
ILogger & m_logger
Definition: UserCallRequestHandler.h:21
UserCallRequestHandler::handleFunctionListLengthRequest
FunctionListLengthResponseDTO handleFunctionListLengthRequest(MessageDTO message, FunctionListLengthRequestDTO fcRequest)
Definition: UserCallRequestHandler.cpp:50
InboundRequestHandle
Definition: InboundRequestHandle.h:13
UserCallRequestHandler::handleFunctionDescriptionRequest
FunctionDescriptionResponseDTO handleFunctionDescriptionRequest(MessageDTO message, FunctionDescriptionRequestDTO fcRequest)
Definition: UserCallRequestHandler.cpp:58
MessageUtils.h
CallbackArgs
std::vector< FunctionCallArgumentDTO > CallbackArgs
Definition: Callback.h:9
UserCallRequestHandler::handleFunctionCallRequest
FunctionCallResponseDTO handleFunctionCallRequest(MessageDTO message, FunctionCallRequestDTO fcRequest, InboundRequestHandle *result)
Definition: UserCallRequestHandler.cpp:82
IUserCallRequestHandler.h
IUserCallbackMap.h
UserCallRequestHandler::m_callbackMap
IUserCallbackMap & m_callbackMap
Definition: UserCallRequestHandler.h:22
UserCallRequestHandler::callbackWrapper
std::optional< CallbackReturn > callbackWrapper(const CallbackArgs &args, const std::string &functionName)
Definition: UserCallRequestHandler.cpp:108
IUserCallRequestHandler
Definition: IUserCallRequestHandler.h:7
IMessageHandler.h
UserCallRequestHandler::UserCallRequestHandler
UserCallRequestHandler(ILogger &logger, IUserCallbackMap &callbackMap)
Definition: UserCallRequestHandler.cpp:3