You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
738 B
C++
34 lines
738 B
C++
#ifndef CSOAP_HTTP_REQUEST_HANDLER_H_
|
|
#define CSOAP_HTTP_REQUEST_HANDLER_H_
|
|
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
#include "csoap/soap_service.h"
|
|
|
|
namespace csoap {
|
|
|
|
class HttpRequest;
|
|
class HttpResponse;
|
|
|
|
// The common handler for all incoming requests.
|
|
class HttpRequestHandler {
|
|
public:
|
|
HttpRequestHandler(const HttpRequestHandler&) = delete;
|
|
HttpRequestHandler& operator=(const HttpRequestHandler&) = delete;
|
|
|
|
HttpRequestHandler();
|
|
|
|
bool RegisterService(SoapServicePtr soap_service);
|
|
|
|
// Handle a request and produce a reply.
|
|
void HandleRequest(const HttpRequest& request, HttpResponse& response);
|
|
|
|
private:
|
|
std::vector<SoapServicePtr> soap_services_;
|
|
};
|
|
|
|
} // namespace csoap
|
|
|
|
#endif // CSOAP_HTTP_REQUEST_HANDLER_H_
|