![]()  | 
  
    MySQL 9.5.0
    
   Source Code Documentation 
   | 
 
#include <rest_handler.h>
Classes | |
| class | Configuration | 
Public Types | |
| enum class | Authorization { kNotNeeded , kRequires , kCheck } | 
| using | SqlSession = mysqlrouter::MySQLSession | 
| using | RequestContext = mrs::rest::RequestContext | 
| using | Parameters = mrs::interface::Parameters | 
| using | HttpResult = mrs::interface::HttpResult | 
Public Member Functions | |
| virtual | ~RestHandler ()=default | 
| virtual void | initialize (const Configuration &configuration)=0 | 
| virtual bool | may_check_access () const =0 | 
| virtual Authorization | requires_authentication () const =0 | 
| virtual const std::string & | get_url_host () const =0 | 
| virtual const std::string & | get_protocol () const =0 | 
| virtual const std::string & | get_service_path () const =0 | 
| virtual const std::string & | get_schema_path () const =0 | 
| virtual const std::string & | get_db_object_path () const =0 | 
| virtual UniversalId | get_service_id () const =0 | 
| virtual UniversalId | get_db_object_id () const =0 | 
| virtual UniversalId | get_schema_id () const =0 | 
| virtual uint32_t | get_access_rights () const =0 | 
| virtual const Options & | get_options () const =0 | 
| virtual void | authorization (RequestContext *ctxt)=0 | 
| virtual bool | request_begin (RequestContext *ctxt)=0 | 
| virtual void | request_end (RequestContext *ctxt)=0 | 
| virtual bool | request_error (RequestContext *ctxt, const http::Error &e)=0 | 
| virtual HttpResult | handle_get (RequestContext *ctxt)=0 | 
| virtual HttpResult | handle_post (RequestContext *ctxt, const std::vector< uint8_t > &document)=0 | 
| virtual HttpResult | handle_delete (RequestContext *ctxt)=0 | 
| virtual HttpResult | handle_put (RequestContext *ctxt)=0 | 
      
  | 
  strong | 
      
  | 
  virtualdefault | 
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeUser, mrs::rest::Handler, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerAuthorizeUser, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectFunction, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectScript, mrs::endpoint::handler::HandlerDbObjectSP, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::rest::Handler.
      
  | 
  pure virtual | 
Implemented in mrs::rest::Handler.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::rest::Handler.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectFunction, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectScript, mrs::endpoint::handler::HandlerDbObjectSP, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectFunction, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectScript, mrs::endpoint::handler::HandlerDbObjectSP, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectFunction, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectScript, mrs::endpoint::handler::HandlerDbObjectSP, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerAuthorizeUser, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectFunction, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectScript, mrs::endpoint::handler::HandlerDbObjectSP, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.
      
  | 
  pure virtual | 
      
  | 
  pure virtual | 
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeLogin, and mrs::rest::Handler.
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeBase, and mrs::rest::Handler.
      
  | 
  pure virtual | 
      
  | 
  pure virtual | 
Implemented in mrs::endpoint::handler::HandlerAuthorizeAuthApps, mrs::endpoint::handler::HandlerAuthorizeCompleted, mrs::endpoint::handler::HandlerAuthorizeLogin, mrs::endpoint::handler::HandlerAuthorizeLogout, mrs::endpoint::handler::HandlerAuthorizeStatus, mrs::endpoint::handler::HandlerContentFile, mrs::endpoint::handler::HandlerDbObjectMetadata, mrs::endpoint::handler::HandlerDbObjectOpenAPI, mrs::endpoint::handler::HandlerDbObjectTable, mrs::endpoint::handler::HandlerDbSchemaMetadata, mrs::endpoint::handler::HandlerDbSchemaMetadataCatalog, mrs::endpoint::handler::HandlerDbSchemaOpenAPI, mrs::endpoint::handler::HandlerDbServiceDebug, mrs::endpoint::handler::HandlerDbServiceMetadata, mrs::endpoint::handler::HandlerDbServiceOpenAPI, mrs::endpoint::handler::HandlerDebug, mrs::endpoint::handler::HandlerRedirection, and mrs::endpoint::handler::HandlerString.