Adds immediate migration results
This commit is contained in:
2395 files changed
+357322
-2524
No files matched your search
@@ -0,0 +1,157 @@
|
||||
/*
|
||||
* (c) Copyright, Real-Time Innovations, 2022.
|
||||
* All rights reserved.
|
||||
*
|
||||
* No duplications, whole or partial, manual or electronic, may be made
|
||||
* without express written permission. Any such copies, or
|
||||
* revisions thereof, must display this notice unaltered.
|
||||
* This code contains trade secrets of Real-Time Innovations, Inc.
|
||||
*/
|
||||
|
||||
#ifndef HTTP_SERVER_REQUEST_HANDLER_HPP
|
||||
#define HTTP_SERVER_REQUEST_HANDLER_HPP
|
||||
|
||||
#include <functional>
|
||||
|
||||
|
||||
#include "rti/apputils/http/common/Method.hpp"
|
||||
#include "rti/apputils/http/common/HttpUtils.hpp"
|
||||
|
||||
#include "Connection.hpp"
|
||||
#include "ServerProperty.hpp"
|
||||
|
||||
namespace rti { namespace apputils { namespace http { namespace server {
|
||||
|
||||
// Forward declaration
|
||||
class Server;
|
||||
|
||||
/**
|
||||
* @brief This class defines a generic interface to be implemented by each
|
||||
* RequestHandler. This implies implementing a set or methods to handle
|
||||
* different types of requests (e.g., POST, PUT, GET, DELETE, OPTIONS, HEAD and
|
||||
* PATCH).
|
||||
*/
|
||||
class RequestHandler {
|
||||
public:
|
||||
/**
|
||||
* @brief Virtual destructor of the RequestHandler class.
|
||||
*/
|
||||
virtual ~RequestHandler()
|
||||
{ }
|
||||
|
||||
/**
|
||||
* @brief The POST request handler is an interface to implement a method
|
||||
* that addresses POST requests and generates responses.
|
||||
*
|
||||
* @param server Reference to the wrapper of the internal server API.
|
||||
* @param connection
|
||||
* @param web_server_property Reference to the web server properties.
|
||||
*/
|
||||
virtual void handle_post(
|
||||
Server&,
|
||||
Connection& connection,
|
||||
const ServerProperty&)
|
||||
{
|
||||
connection.send_not_implemented();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief The PUT request handler is an interface to implement a method that
|
||||
* addresses PUT requests and generates responses.
|
||||
*
|
||||
* @param server Reference to the wrapper of the internal server API.
|
||||
* @param connection
|
||||
* @param web_server_property Reference to the service properties.
|
||||
*/
|
||||
virtual void handle_put(
|
||||
Server&,
|
||||
Connection& connection,
|
||||
const ServerProperty&)
|
||||
{
|
||||
connection.send_not_implemented();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief The GET request handler is an interface to implement a method that
|
||||
* addresses GET requests and generates responses.
|
||||
*
|
||||
* @param server Reference to the wrapper of the internal server API.
|
||||
* @param connection
|
||||
* @param web_server_property Reference to the service properties.
|
||||
*/
|
||||
virtual void handle_get(
|
||||
Server&,
|
||||
Connection& connection,
|
||||
const ServerProperty&)
|
||||
{
|
||||
connection.send_not_implemented();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief The DELETE request handler is an interface to implement a method
|
||||
* that addresses DELETE requests and generates responses.
|
||||
*
|
||||
* @param server Reference to the wrapper of the internal server API.
|
||||
* @param connection
|
||||
* @param web_server_property Reference to the web server properties.
|
||||
*/
|
||||
virtual void handle_delete(
|
||||
Server&,
|
||||
Connection& connection,
|
||||
const ServerProperty&)
|
||||
{
|
||||
connection.send_not_implemented();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief The OPTIONS request handler is an interface to implement a method
|
||||
* that addresses OPTIONS requests and generates responses.
|
||||
*
|
||||
* @param server Reference to the wrapper of the internal server API.
|
||||
* @param connection
|
||||
* @param web_server_property Reference to the web server properties.
|
||||
*/
|
||||
virtual void handle_options(
|
||||
Server&,
|
||||
Connection& connection,
|
||||
const ServerProperty&)
|
||||
{
|
||||
connection.send_not_implemented();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief The HEAD request handler is an interface to implement a method
|
||||
* that addresses HEAD requests and generates responses.
|
||||
*
|
||||
* @param server Reference to the wrapper of the internal server API.
|
||||
* @param connection
|
||||
* @param web_server_property Reference to the web server properties.
|
||||
*/
|
||||
virtual void handle_head(
|
||||
Server&,
|
||||
Connection& connection,
|
||||
const ServerProperty&)
|
||||
{
|
||||
connection.send_not_implemented();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief The PATCH request handler is an interface to implement a method
|
||||
* that addresses PATCH requests and generates responses.
|
||||
*
|
||||
* @param server Reference to the wrapper of the internal server API.
|
||||
* @param connection
|
||||
* @param web_server_property Reference to the web server properties.
|
||||
*/
|
||||
virtual void handle_patch(
|
||||
Server&,
|
||||
Connection& connection,
|
||||
const ServerProperty&)
|
||||
{
|
||||
connection.send_not_implemented();
|
||||
}
|
||||
};
|
||||
|
||||
}}}} // namespace rti::apputils::http::server
|
||||
|
||||
#endif // HTTP_SERVER_REQUEST_HANDLER_HPP
|
||||
Reference in new issue
Block a user