DUNE: Uniform Navigational Environment  2.3.0
Transports::HTTP::Task Struct Reference

Public Member Functions

 Task (const std::string &name, Tasks::Context &ctx)
 
 ~Task (void)
 
void onResourceAcquisition (void)
 
void onResourceRelease (void)
 
void onEntityResolution (void)
 
void onUpdateParameters (void)
 
void consume (const IMC::Message *msg)
 
void handleGET (TCPSocket *sock, TupleList &headers, const char *uri)
 
void handlePOST (TCPSocket *sock, TupleList &headers, const char *uri)
 
void handlePUT (TCPSocket *sock, TupleList &headers, const char *uri)
 
void sendStaticFile (TCPSocket *sock, TupleList &headers, const Path &file)
 
void getMessage (TCPSocket *sock, TupleList &headers, const char *uri)
 
void setTime (TCPSocket *sock, TupleList &headers, const char *uri)
 
void showMessages (TCPSocket *sock, TupleList &headers, const char *uri)
 
void sendVersionJSON (TCPSocket *sock, TupleList &headers, const char *uri)
 
void sendAgentJSON (TCPSocket *sock, TupleList &headers, const char *uri)
 
void handlePowerChannel (TCPSocket *sock, TupleList &headers, const char *uri)
 
void onMain (void)
 

Static Public Member Functions

static bool isSpecialURI (const char *uri)
 
static bool matchURL (const char *url, const char *str, bool fragment=false)
 

Public Attributes

HTTPServer * m_server
 
std::string m_cfg_dir
 
std::string m_agent
 
MessageMonitor m_msg_mon
 
Arguments m_args
 

Constructor & Destructor Documentation

Transports::HTTP::Task::Task ( const std::string &  name,
Tasks::Context &  ctx 
)
inline
Transports::HTTP::Task::~Task ( void  )
inline

References onResourceRelease().

Member Function Documentation

void Transports::HTTP::Task::consume ( const IMC::Message *  msg)
inline
void Transports::HTTP::Task::getMessage ( TCPSocket *  sock,
TupleList &  headers,
const char *  uri 
)
inline

Referenced by handlePOST().

void Transports::HTTP::Task::handleGET ( TCPSocket *  sock,
TupleList &  headers,
const char *  uri 
)
inline
void Transports::HTTP::Task::handlePOST ( TCPSocket *  sock,
TupleList &  headers,
const char *  uri 
)
inline
void Transports::HTTP::Task::handlePowerChannel ( TCPSocket *  sock,
TupleList &  headers,
const char *  uri 
)
inline

Referenced by handleGET().

void Transports::HTTP::Task::handlePUT ( TCPSocket *  sock,
TupleList &  headers,
const char *  uri 
)
inline

References isSpecialURI().

static bool Transports::HTTP::Task::isSpecialURI ( const char *  uri)
inlinestatic

Referenced by handleGET(), handlePOST(), and handlePUT().

static bool Transports::HTTP::Task::matchURL ( const char *  url,
const char *  str,
bool  fragment = false 
)
inlinestatic

Referenced by handleGET(), and handlePOST().

void Transports::HTTP::Task::onEntityResolution ( void  )
inline
void Transports::HTTP::Task::onMain ( void  )
inline

References m_server.

void Transports::HTTP::Task::onResourceAcquisition ( void  )
inline
void Transports::HTTP::Task::onResourceRelease ( void  )
inline

References m_server.

Referenced by ~Task().

void Transports::HTTP::Task::onUpdateParameters ( void  )
inline
void Transports::HTTP::Task::sendAgentJSON ( TCPSocket *  sock,
TupleList &  headers,
const char *  uri 
)
inline

References m_agent.

Referenced by handleGET().

void Transports::HTTP::Task::sendStaticFile ( TCPSocket *  sock,
TupleList &  headers,
const Path &  file 
)
inline

Referenced by handleGET().

void Transports::HTTP::Task::sendVersionJSON ( TCPSocket *  sock,
TupleList &  headers,
const char *  uri 
)
inline

Referenced by handleGET().

void Transports::HTTP::Task::setTime ( TCPSocket *  sock,
TupleList &  headers,
const char *  uri 
)
inline

Referenced by handleGET().

void Transports::HTTP::Task::showMessages ( TCPSocket *  sock,
TupleList &  headers,
const char *  uri 
)
inline

Member Data Documentation

std::string Transports::HTTP::Task::m_agent

Agent name.

Referenced by sendAgentJSON(), and Task().

Arguments Transports::HTTP::Task::m_args

Task arguments.

Referenced by onResourceAcquisition(), onUpdateParameters(), and Task().

std::string Transports::HTTP::Task::m_cfg_dir

Configuration directory.

Referenced by Task().

MessageMonitor Transports::HTTP::Task::m_msg_mon

Message Monitor.

Referenced by consume(), onEntityResolution(), and showMessages().

HTTPServer* Transports::HTTP::Task::m_server
Collaboration diagram for Transports::HTTP::Task:
Collaboration graph