aboutsummaryrefslogtreecommitdiffstats
path: root/src/db/upnp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* db/upnp/Object: add attribute "tag"Max Kellermann2014-01-142-45/+23
| | | | Replaces "m_title" and "m_props". More bloat removed.
* db/upnp: move upnp_tags to Tags.cxxMax Kellermann2014-01-142-0/+61
|
* db/upnp/Object: disallow copying, always moveMax Kellermann2014-01-143-3/+7
| | | | Reduce bloat.
* db/upnp/Directory: merge m_containers and m_itemsMax Kellermann2014-01-142-11/+14
| | | | | There is no use in duplicating these containers. It only means that we have to search both, duplicating the code.
* db/upnp/Directory: eliminate one std::string copy with std::move()Max Kellermann2014-01-141-2/+2
|
* db/upnp/Object: add attribute "name"Max Kellermann2014-01-142-5/+28
| | | | Call titleToPathElt() only once for each object.
* db/upnp/WorkQueue: remove unused attributes "high", "low"Max Kellermann2014-01-141-17/+3
|
* db/upnp/WorkQueue: initialize "ok" to false, eliminate redundant checksMax Kellermann2014-01-141-21/+10
|
* db/upnp/WorkQueue: remove IsOK() check from put()Max Kellermann2014-01-141-6/+0
| | | | Not necessary, not worth the check.
* db/upnp/WorkQueue: remove redundant n_workers_exited check from IsOK()Max Kellermann2014-01-141-1/+1
|
* db/upnp/WorkQueue: include cleanupMax Kellermann2014-01-141-3/+0
|
* db/upnp/WorkQueue: remove unnecessary "waiting" attributesMax Kellermann2014-01-141-24/+9
|
* db/upnp/WorkQueue: remove unused method waitIdle()Max Kellermann2014-01-141-42/+0
| | | | | Contrary to setTerminateAndWait()'s documentation, the method does wait for worker threads to exit via pthread_join().
* db/upnp/WorkQueue: use array instead of std::listMax Kellermann2014-01-141-15/+19
| | | | Reduce bloat further.
* db/upnp/WorkQueue: use std::list instead of std::unordered_mapMax Kellermann2014-01-141-18/+6
| | | | Reduce bloat.
* db/upnp/WorkQueue: rename attributesMax Kellermann2014-01-141-78/+78
|
* db/upnp/WorkQueue: pass reference to take()Max Kellermann2014-01-142-3/+3
|
* db/upnp/WorkQueue: remove unused method qsize()Max Kellermann2014-01-141-8/+0
|
* db/upnp/WorkQueue: remove unused "szp" parameter from take()Max Kellermann2014-01-142-5/+2
|
* db/upnp/WorkQueue: remove unused statisticsMax Kellermann2014-01-141-17/+2
|
* copyright year 2014Max Kellermann2014-01-132-2/+2
|
* db/upnp: add fallback for emplace()Max Kellermann2014-01-131-0/+4
| | | | | The method emplace() was added in gcc 4.8. This commit restores compatibility with gcc 4.7.
* db/upnp: use std::function for the libupnp callbackMax Kellermann2014-01-133-31/+16
| | | | Replaces the bloated std::map.
* db/upnp: fix "upnp:class" parserMax Kellermann2014-01-131-7/+7
| | | | | "upnp:class" is an element, not an attribute of element "item". This fixes a regression from commit 65ebfb16
* db/upnp/Directory: parse item_class in StartElementMax Kellermann2014-01-111-12/+8
| | | | Don't add to the std::map.
* db/upnp/Object: add attribute "url"Max Kellermann2014-01-112-1/+3
| | | | Don't store in the std::map.
* db/upnp/Directory: parse durationMax Kellermann2014-01-112-15/+20
| | | | | | Don't put all <res/> attributes to the attributes map; parse the "duration" attribute as soon as we receive it, and store it in an integer attribute. This reduces bloat.
* db/upnp: move stringToTokens() to Util.cxxMax Kellermann2014-01-112-0/+43
|
* db/upnp/discovery: convert std::strings to const char *Max Kellermann2014-01-111-11/+13
| | | | Reduce bloat.
* db/upnp: remove unnecessary MutexMax Kellermann2014-01-112-4/+0
|
* db/upnp: remove unused method setMaxContentLength()Max Kellermann2014-01-102-10/+1
|
* db/upnp: remove "upnplog" optionMax Kellermann2014-01-102-38/+1
| | | | | We have removed all libupnp logging calls, and we don't need to debug libupnp.
* db/upnp: remove unused macro PLOGINF()Max Kellermann2014-01-101-9/+0
|
* db/upnp: remove unused method errAsString()Max Kellermann2014-01-102-12/+0
|
* db/upnp/Device: remove unused attribute "m_tabs"Max Kellermann2014-01-101-4/+1
|
* db/upnp: remove unnecessary empty string checks from CharacterData()Max Kellermann2014-01-102-5/+0
|
* db/upnp/Directory: simplify checkobjok()Max Kellermann2014-01-101-9/+9
|
* db/upnp/Directory: don't log unknown itemsMax Kellermann2014-01-101-8/+0
|
* db/upnp/Directory: eliminate the "attributes" std::mapMax Kellermann2014-01-101-11/+19
| | | | Look up attributes in the "atts" array. Reduce bloat.
* db/upnp/Directory: move "res" attributes to arrayMax Kellermann2014-01-101-7/+15
| | | | Reduce bloat.
* db/upnp: use nullptr-terminated arrayMax Kellermann2014-01-101-6/+4
| | | | Reduce bloat.
* db/upnp/Directory: eliminate struct StackEl, use std::stringMax Kellermann2014-01-101-11/+6
| | | | Reduces bloat.
* db/upnp/Directory: make "attributes" a local variableMax Kellermann2014-01-101-14/+14
| | | | We only need it inside StartElement(). Reduces bloat.
* db/upnp/Directory: move "res" tag handler to StartElement()Max Kellermann2014-01-101-12/+16
| | | | | No need to handle this in EndElement() - in StartElement(), we already have all we need.
* db/upnp/Directory: don't use std::map to parse upnp:classMax Kellermann2014-01-101-9/+18
| | | | Reduce excessive bloat.
* db/upnp/Object: use strictly-typed enumsMax Kellermann2014-01-102-12/+21
| | | | | At the same time, rename the enum types and the class attributes, and add an "UNKNOWN" type/class. The latter avoids the "-1" hack.
* db/upnp: getprop() returns const char *Max Kellermann2014-01-101-5/+3
| | | | | Return the return value, instead returning it in a reference parameter. Reduces bloat by reducing unnecessary std::string usage.
* UPnP database pluginJean-Francois Dockes2014-01-0918-0/+2282
[mk: renamed source files, applied coding style, reduced bloat, using MPD's threading library, using MPD's error reporting and logging library and refactoring, fixed lots of bugs]