21#ifndef __FG_URI_HANDLER_HXX
22#define __FG_URI_HANDLER_HXX
26#include <simgear/structure/SGReferenced.hxx>
27#include <simgear/structure/SGSharedPtr.hxx>
42 void put(
const std::string & key, SGSharedPtr<ConnectionData> value ) {
43 connectionData[key] = value;
45 SGSharedPtr<ConnectionData>
get(
const std::string & key ) {
46 return connectionData[key];
49 void remove(
const std::string & key ) {
50 connectionData.erase(key);
53 virtual void write(
const char * data,
size_t len) = 0;
56 std::map<std::string,SGSharedPtr<ConnectionData> > connectionData;
118 const std::string &
getUri()
const {
return _uri; }
virtual ~ConnectionData()
SGSharedPtr< ConnectionData > get(const std::string &key)
virtual void write(const char *data, size_t len)=0
void put(const std::string &key, SGSharedPtr< ConnectionData > value)
void remove(const std::string &key)
virtual bool poll(Connection *connection)
This method gets called from the httpd if the preceding handleRequest() or poll() method returned fal...
virtual bool handleRequest(const HTTPRequest &request, HTTPResponse &response, Connection *connection=NULL)
This method gets called from the httpd if a request has been detected on the connection.
const std::string & getUri() const
Getter for the URI this handler serves.
virtual bool handlePutRequest(const HTTPRequest &request, HTTPResponse &response, Connection *connection)
Convenience method for PUT Requests, gets called by handleRequest if not overridden.
URIHandler(const std::string &uri)
virtual bool handleGetRequest(const HTTPRequest &request, HTTPResponse &response, Connection *connection)
Convenience method for GET Requests, gets called by handleRequest if not overridden.
FlightPlan.hxx - defines a full flight-plan object, including departure, cruise, arrival information ...