From 1f3b20415c59ce08479d9291b92bbe5ffa8b2f6c Mon Sep 17 00:00:00 2001 From: deva Date: Mon, 7 Feb 2011 08:59:39 +0000 Subject: Added resource handler. --- server/src/admin_connection.cc | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'server/src/admin_connection.cc') diff --git a/server/src/admin_connection.cc b/server/src/admin_connection.cc index 32cc67e..21fe331 100644 --- a/server/src/admin_connection.cc +++ b/server/src/admin_connection.cc @@ -27,6 +27,8 @@ */ #include "admin_connection.h" +#include "admin_rc.h" + #include "debug.h" static std::string admin_sessionunlock(Environment &env, std::string id) @@ -44,6 +46,11 @@ static std::string admin_sessionunlock(Environment &env, std::string id) return "Session " + id + " does not exist or has been committed."; } +static std::string admin_favicon() +{ + return admin_rc("favicon"); +} + AdminConnection::AdminConnection(Environment &e, headers_t a, std::string u) : env(e), args(a), uri(u) {} @@ -52,13 +59,20 @@ AdminConnection::~AdminConnection() {} bool AdminConnection::handle(const char *data, size_t size) { if(data == NULL && size == 0) { + DEBUG(admin, "URI: %s\n", uri.c_str()); + if(uri == "/sessionunlock" && args.find("id") != args.end()) { reply = admin_sessionunlock(env, args["id"]); return true; } - reply = "Try something else..."; - return false; + if(uri == "/favicon.ico") { + reply = admin_favicon(); + return true; + } + + reply = "'" + uri + "' not recognised as a valid command."; + return true; } return true; @@ -72,6 +86,7 @@ std::string AdminConnection::getResponse() headers_t AdminConnection::getHeaders() { headers_t hdrs; + hdrs["Content-Type"] = "text/plain; charset=UTF-8"; return hdrs; } -- cgit v1.2.3