Apache Mesos
Classes | Namespaces | Functions | Variables
http.hpp File Reference
#include <vector>
#include <mesos/http.hpp>
#include <mesos/mesos.hpp>
#include <mesos/authorizer/authorizer.hpp>
#include <mesos/quota/quota.hpp>
#include <process/authenticator.hpp>
#include <process/future.hpp>
#include <process/http.hpp>
#include <process/owned.hpp>
#include <stout/hashmap.hpp>
#include <stout/hashset.hpp>
#include <stout/json.hpp>
#include <stout/jsonify.hpp>
#include <stout/protobuf.hpp>
#include <stout/unreachable.hpp>

Go to the source code of this file.

Classes

struct  std::hash< mesos::authorization::Action >
 
struct  mesos::internal::RequestMediaTypes
 
class  mesos::AcceptingObjectApprover
 
class  mesos::ObjectApprovers
 
class  mesos::IDAcceptor< T >
 Used to filter results for API handlers. More...
 

Namespaces

 std
 
 mesos
 
 mesos::internal
 
 mesos::authorization
 

Functions

std::string mesos::internal::serialize (ContentType contentType, const google::protobuf::Message &message)
 
template<typename Message >
Try< Message > mesos::internal::deserialize (ContentType contentType, const std::string &body)
 
bool mesos::internal::streamingMediaType (ContentType contentType)
 
JSON::Object mesos::internal::model (const Resources &resources)
 
JSON::Object mesos::internal::model (const hashmap< std::string, Resources > &roleResources)
 
JSON::Object mesos::internal::model (const Attributes &attributes)
 
JSON::Object mesos::internal::model (const CommandInfo &command)
 
JSON::Object mesos::internal::model (const ExecutorInfo &executorInfo)
 
JSON::Array mesos::internal::model (const Labels &labels)
 
JSON::Object mesos::internal::model (const Task &task)
 
JSON::Object mesos::internal::model (const FileInfo &fileInfo)
 
JSON::Object mesos::internal::model (const quota::QuotaInfo &quotaInfo)
 
void mesos::internal::json (JSON::ObjectWriter *writer, const Task &task)
 
void mesos::json (JSON::ObjectWriter *writer, const Attributes &attributes)
 
void mesos::json (JSON::ObjectWriter *writer, const CommandInfo &command)
 
void mesos::json (JSON::ObjectWriter *writer, const ExecutorInfo &executorInfo)
 
void mesos::json (JSON::ArrayWriter *writer, const Labels &labels)
 
void mesos::json (JSON::ObjectWriter *writer, const Resources &resources)
 
void mesos::json (JSON::ObjectWriter *writer, const Task &task)
 
void mesos::json (JSON::ObjectWriter *writer, const TaskStatus &status)
 
void mesos::json (JSON::ObjectWriter *writer, const DomainInfo &domainInfo)
 
const Option< authorization::Subject > mesos::authorization::createSubject (const Option< process::http::authentication::Principal > &principal)
 
const process::http::authorization::AuthorizationCallbacks mesos::createAuthorizationCallbacks (Authorizer *authorizer)
 
template<>
bool mesos::ObjectApprovers::approved< authorization::VIEW_ROLE > (const Resource &resource)
 
process::Future< bool > mesos::authorizeEndpoint (const std::string &endpoint, const std::string &method, const Option< Authorizer * > &authorizer, const Option< process::http::authentication::Principal > &principal)
 
Try< Nothingmesos::initializeHttpAuthenticators (const std::string &realm, const std::vector< std::string > &httpAuthenticatorNames, const Option< Credentials > &credentials=None(), const Option< std::string > &jwtSecretKey=None())
 Helper function to create HTTP authenticators for a given realm and register in libprocess. More...
 
void mesos::logRequest (const process::http::Request &request)
 

Variables

constexpr char mesos::internal::DEFAULT_BASIC_HTTP_AUTHENTICATOR [] = "basic"
 
constexpr char mesos::internal::DEFAULT_BASIC_HTTP_AUTHENTICATEE [] = "basic"
 
constexpr char mesos::internal::DEFAULT_JWT_HTTP_AUTHENTICATOR [] = "jwt"
 
hashset< std::string > mesos::internal::AUTHORIZABLE_ENDPOINTS