WebMessageHandler.h 935 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #pragma once
  2. #include <Atomic/Core/Object.h>
  3. namespace Atomic
  4. {
  5. class WebClient;
  6. class WebMessageHandlerPrivate;
  7. class WebMessageHandler : public Object
  8. {
  9. OBJECT(WebMessageHandler);
  10. public:
  11. /// Construct.
  12. WebMessageHandler(Context* context);
  13. /// Destruct.
  14. virtual ~WebMessageHandler();
  15. /// Success callback
  16. void Success(const String& response = String::EMPTY);
  17. /// Failure callback
  18. void Failure(int errorCode, const String& errorMessage);
  19. /// Get the WebClient associated with this WebMessageHandler
  20. WebClient* GetWebClient() { return client_; }
  21. /// Set the WebClient associated with this WebMessageHandler
  22. void SetWebClient(WebClient* client) { client_ = client; }
  23. /// Get the CefMessageRouterBrowserSide::Handler* as a opaque void*
  24. void* GetCefHandler() { return (void*) d_; }
  25. private:
  26. WeakPtr<WebClient> client_;
  27. WebMessageHandlerPrivate* d_;
  28. };
  29. }