#include <unordered_map>
#include "hs-helper.h"
#include "hs-client.h"
+#include "hs-apprecover.h"
typedef struct HS_ClientCtxt
{
int handleRequest(afb_req_t request, const char *verb, const char *appid = nullptr);
int pushEvent(const char *event, struct json_object *param, std::string appid = "");
void removeClientCtxt(void *data); // don't use, internal only
+ void setAppRecover(HS_AppRecover *recover) {app_recover = recover;}
private:
HS_ClientCtxt* createClientCtxt(afb_req_t req, std::string appid);
HS_Client* addClient(afb_req_t req, std::string appid);
void removeClient(std::string appid);
+ void registerApplication(std::string appid);
private:
static HS_ClientManager* me;
std::unordered_map<std::string, HS_Client*> client_list;
std::unordered_map<std::string, HS_ClientCtxt*> appid2ctxt;
std::mutex mtx;
+ HS_AppRecover *app_recover;
};
#endif // HOMESCREEN_CLIENTMANAGER_H
\ No newline at end of file