From 9b25495fffec4be843e8540c115dd5d9e9e4c7a0 Mon Sep 17 00:00:00 2001 From: methodus Date: Sun, 4 Nov 2012 17:01:56 +0100 Subject: Added check if there are active streams ongoing. --- httptnt/resourceStreamer.ecpp | 4 ++++ include/tools.h | 2 ++ upnp.cpp | 11 +++++++++++ upnp.h | 1 + 4 files changed, 18 insertions(+) diff --git a/httptnt/resourceStreamer.ecpp b/httptnt/resourceStreamer.ecpp index 3af5768..1854916 100644 --- a/httptnt/resourceStreamer.ecpp +++ b/httptnt/resourceStreamer.ecpp @@ -10,13 +10,17 @@ int resourceID = 0; #include "../include/tools.h" #include "../include/media/mediaManager.h" #include "../include/server.h" +#include "../include/media/requestCounter.h" using namespace upnp; <%request> boost::shared_ptr streamer; + request_counter_t counter; <%cpp> + _unused(counter); + if(objectID.empty()){ reply.out() << "Object ID missing"; return HTTP_BAD_REQUEST; diff --git a/include/tools.h b/include/tools.h index 4c6908d..966040d 100644 --- a/include/tools.h +++ b/include/tools.h @@ -30,6 +30,8 @@ using namespace std; #define MAX_METADATA_LENGTH_L 1024 #define MAX_METADATA_LENGTH_S 256 +#define _unused(x) ((void)x) + namespace upnp { typedef std::list StringList; diff --git a/upnp.cpp b/upnp.cpp index f634b5e..bf585d7 100644 --- a/upnp.cpp +++ b/upnp.cpp @@ -10,10 +10,13 @@ #include #include "upnp.h" #include "include/setup.h" +#include "include/media/requestCounter.h" using namespace std; using namespace upnp; +int request_counter_t::OPEN_REQUESTS = 0; + cPluginUpnp::cPluginUpnp(void) { mMediaServer = cMediaServer::GetInstance(); @@ -78,6 +81,14 @@ void cPluginUpnp::Stop(void) mMediaServer->Stop(); } +cString cPluginUpnp::Active(void) +{ + if(request_counter_t::OPEN_REQUESTS > 0){ + return cString::sprintf(tr("There are %d requests active."), request_counter_t::OPEN_REQUESTS); + } + return NULL; +} + void cPluginUpnp::Housekeeping(void) { // Perform any cleanup or other regular tasks. diff --git a/upnp.h b/upnp.h index d952384..ca87653 100644 --- a/upnp.h +++ b/upnp.h @@ -30,6 +30,7 @@ public: virtual bool Initialize(void); virtual bool Start(void); virtual void Stop(void); + virtual cString Active(void); virtual void Housekeeping(void); virtual void MainThreadHook(void); virtual cMenuSetupPage *SetupMenu(void); -- cgit v1.2.3