summaryrefslogtreecommitdiff
path: root/PVideo.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'PVideo.cpp')
-rw-r--r--PVideo.cpp59
1 files changed, 59 insertions, 0 deletions
diff --git a/PVideo.cpp b/PVideo.cpp
new file mode 100644
index 0000000..b22bb66
--- /dev/null
+++ b/PVideo.cpp
@@ -0,0 +1,59 @@
+#include "PVideo.h"
+
+namespace plexclient
+{
+
+Video::Video(Poco::XML::Node* pNode)
+{
+
+ NodeIterator it(pNode, Poco::XML::NodeFilter::SHOW_ALL);
+ Poco::XML::Node* pChildNode = it.nextNode();
+
+ while(pChildNode) {
+ if(Poco::icompare(pChildNode->nodeName(), "Video") == 0) {
+
+ Poco::XML::AutoPtr<Poco::XML::NamedNodeMap> pAttribs = pNode->attributes();
+
+ m_iRatingKey = GetNodeValueAsInt(pAttribs->getNamedItem("ratingKey"));
+ m_sStudio = GetNodeValue(pAttribs->getNamedItem("studio"));
+ m_tType = GetNodeValueAsMediaType(pAttribs->getNamedItem("type"));
+ m_sTitle = GetNodeValue(pAttribs->getNamedItem("title"));
+ m_sOriginalTitle = GetNodeValue(pAttribs->getNamedItem("originalTitle"));
+ m_sContentRating = GetNodeValue(pAttribs->getNamedItem("contentRating"));
+ m_sSummary = GetNodeValue(pAttribs->getNamedItem("summary"));
+ m_lViewoffset = GetNodeValueAsLong(pAttribs->getNamedItem("viewOffset"));
+ m_tLastViewedAt = GetNodeValueAsTimeStamp(pAttribs->getNamedItem("lastViewedAt"));
+ m_iYear = GetNodeValueAsInt(pAttribs->getNamedItem("year"));
+ m_sThumb = GetNodeValue(pAttribs->getNamedItem("thumb"));
+ m_sArt = GetNodeValue(pAttribs->getNamedItem("art"));
+ m_iDuration = GetNodeValueAsLong(pAttribs->getNamedItem("duration"));
+ m_tAddedAt = GetNodeValueAsTimeStamp(pAttribs->getNamedItem("addedAt"));
+ m_tUpdatedAt = GetNodeValueAsTimeStamp(pAttribs->getNamedItem("updatedAt"));
+
+ pAttribs->release();
+
+ } else if(Poco::icompare(pChildNode->nodeName(), "Media") == 0) {
+ m_pMedia = new Media(pChildNode);
+ } else if(Poco::icompare(pChildNode->nodeName(), "Genre") == 0) {
+ m_vGenre.push_back(GetNodeValue(pChildNode));
+ } else if(Poco::icompare(pChildNode->nodeName(), "Writer") == 0) {
+ m_vWriter.push_back(GetNodeValue(pChildNode));
+ } else if(Poco::icompare(pChildNode->nodeName(), "Director") == 0) {
+ m_vDirector.push_back(GetNodeValue(pChildNode));
+ } else if(Poco::icompare(pChildNode->nodeName(), "Country") == 0) {
+ m_vCountry.push_back(GetNodeValue(pChildNode));
+ } else if(Poco::icompare(pChildNode->nodeName(), "Role") == 0) {
+ m_vRole.push_back(GetNodeValue(pChildNode));
+ } else if(Poco::icompare(pChildNode->nodeName(), "Collection") == 0) {
+ m_sCollection = GetNodeValue(pChildNode);
+ }
+ pChildNode = it.nextNode();
+ }
+}
+
+Video::~Video()
+{
+}
+
+
+}