From 216e4086520765fface77acd86a718dfb6e627e2 Mon Sep 17 00:00:00 2001 From: methodus Date: Sat, 15 Sep 2012 23:37:25 +0200 Subject: Anpassung der Plugin-Schnittstelle --- media/mediaManager.cpp | 32 +++++++++++++++++++++++++++++--- media/mediaManager.o | Bin 387416 -> 464328 bytes media/pluginManager.cpp | 6 ++++-- media/pluginManager.o | Bin 269696 -> 270936 bytes 4 files changed, 33 insertions(+), 5 deletions(-) (limited to 'media') diff --git a/media/mediaManager.cpp b/media/mediaManager.cpp index 9740a0b..ed07da7 100644 --- a/media/mediaManager.cpp +++ b/media/mediaManager.cpp @@ -10,6 +10,7 @@ #include "../include/server.h" #include #include +#include #include namespace upnp { @@ -43,23 +44,48 @@ void cMediaManager::OnContainerUpdate(string containerID, long updateID){ } StringList cMediaManager::GetSearchCapabilities() const { - // TODO: SearchCapabilities ermitteln und zurückgeben. StringList list; + list.push_back("dc:title"); + list.push_back("dc:creator"); + list.push_back("dc:description"); + list.push_back("upnp:longDescription"); + list.push_back("res@protocolInfo"); + list.push_back("upnp:class"); + list.push_back("dc:date"); + list.push_back("dc:language"); + return list; } StringList cMediaManager::GetSortCapabilities() const { - // TODO: SortCapabilities ermitteln und zurückgeben. StringList list; + list.push_back("dc:title"); + list.push_back("dc:creator"); + list.push_back("dc:description"); + list.push_back("upnp:longDescription"); + list.push_back("res@protocolInfo"); + list.push_back("upnp:class"); + list.push_back("dc:date"); + list.push_back("dc:language"); + return list; } StringList cMediaManager::GetSupportedProtocolInfos() const { - // TODO: ProtocolInfos ermitteln und zurückgeben. + tntdb::Connection conn = mConnection; + tntdb::Statement stmt = conn.prepare( + "SELECT DISTINCT protocolInfo FROM resources;" + ); + StringList list; + for(tntdb::Statement::const_iterator it = stmt.begin(); it != stmt.end(); ++it){ + tntdb::Row row = (*it); + list.push_back(row.getString("protocolInfo")); + } + return list; } diff --git a/media/mediaManager.o b/media/mediaManager.o index aae1479..171e839 100644 Binary files a/media/mediaManager.o and b/media/mediaManager.o differ diff --git a/media/pluginManager.cpp b/media/pluginManager.cpp index 232a9fe..e677d6a 100644 --- a/media/pluginManager.cpp +++ b/media/pluginManager.cpp @@ -182,8 +182,6 @@ bool cMetadata::Resource::SetResourceUri(string resourceUri){ } bool cMetadata::Resource::SetProtocolInfo(string protocolInfo){ - //TODO validiere protocolInfo. - this->protocolInfo = protocolInfo; return true; } @@ -254,6 +252,10 @@ size_t cUPnPResourceProvider::Read(char* buf, size_t bufLen){ return -1; } +bool cUPnPResourceProvider::Seek(size_t offset, int origin){ + return false; +} + void cUPnPResourceProvider::Close(){ } diff --git a/media/pluginManager.o b/media/pluginManager.o index ecfa185..3fb2f31 100644 Binary files a/media/pluginManager.o and b/media/pluginManager.o differ -- cgit v1.2.3