diff options
Diffstat (limited to 'kresources/tvanytime/service.cpp')
-rw-r--r-- | kresources/tvanytime/service.cpp | 224 |
1 files changed, 0 insertions, 224 deletions
diff --git a/kresources/tvanytime/service.cpp b/kresources/tvanytime/service.cpp deleted file mode 100644 index f713f7b18..000000000 --- a/kresources/tvanytime/service.cpp +++ /dev/null @@ -1,224 +0,0 @@ -/*************************************************************************** - * Copyright (C) 2005 by Will Stephenson * - * wstephenson@kde.org * - * * - * This program is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the * - * Free Software Foundation, Inc., * - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * - ***************************************************************************/ - -#include "service.h" - -Service::Service() : mActive( true ) -{ - -} - -Service::Service( bool active, const TQString & name, const TQString & owner, const KURL & serviceUrl, const KURL & logo, const TQStringList & genres ) -: mActive( active ), mName( name ), mOwner( owner ), mServiceUrl( serviceUrl ), mLogo( logo ), mGenres( genres ) -{ -} - -void Service::setActive( bool active ) -{ - mActive = active; -} - -void Service::setName( const TQString & name ) -{ - mName = name; -} - -void Service::setProgramInformation( const ProgramInformationMap & map ) -{ - mProgInfo = map; -} - -bool Service::active() const -{ - return mActive; -} - -TQString Service::name() const -{ - return mName; -} - -bool Service::loadXML( const TQDomElement & top ) -{ - if ( top.tagName() != "ServiceInformation" ) { - tqWarning( "XML error: Top tag was %s instead of the expected service information", - top.tagName().ascii() ); - return false; - } - - setId( top.attribute( "serviceId" ) ); - - for ( TQDomNode n = top.firstChild(); !n.isNull(); n = n.nextSibling() ) { - if ( n.isComment() ) - continue; - if ( n.isElement() ) { - TQDomElement e = n.toElement(); - loadAttribute( e ); - } else - tqWarning( "Node is not a comment or an element???" ); - } - return true; -} - -bool Service::loadAttribute( const TQDomElement& element ) -{ - TQString tagName = element.tagName(); - if ( tagName == "Name" ) { - TQDomNode cn = element.firstChild(); - TQDomText t = cn.toText(); - mName = t.data(); - } - else if ( tagName == "Owner" ) { - TQDomNode cn = element.firstChild(); - TQDomText t = cn.toText(); - mOwner = t.data(); - } - else if ( tagName == "ServiceURL" ) { - TQDomNode cn = element.firstChild(); - TQDomText t = cn.toText(); - mServiceUrl = t.data(); - } - // TODO: parse logo data - // TODO: parse genre data - return true; -} - -TQRegExp ScheduleEvent::sRegExp( "PT(\\d{2})H(\\d{2})M(\\d{2})S" ); - -bool ScheduleEvent::loadXML( const TQDomElement & top ) -{ - if ( top.tagName() != "ScheduleEvent" ) { - tqWarning( "XML error: Top tag was %s instead of the expected event", - top.tagName().ascii() ); - return false; - } - - mCrid = top.attribute( "serviceId" ); - - for ( TQDomNode n = top.firstChild(); !n.isNull(); n = n.nextSibling() ) { - if ( n.isComment() ) - continue; - if ( n.isElement() ) { - TQDomElement e = n.toElement(); - loadAttribute( e ); - } else - tqWarning( "Node is not a comment or an element???" ); - } - return true; -} - -bool ScheduleEvent::loadAttribute( const TQDomElement& element ) -{ - TQString tagName = element.tagName(); - if ( tagName == "ProgramURL" ) { - TQDomNode cn = element.firstChild(); - TQDomText t = cn.toText(); - mUrl = t.data(); - } - else if ( tagName == "Program" ) { - mCrid = element.attribute( "crid" ); - } - else if ( tagName == "PublishedStartTime" ) { - TQDomNode cn = element.firstChild(); - TQDomText t = cn.toText(); - mStartTime = TQDateTime::fromString( t.data(), TQt::ISODate ); - } - else if ( tagName == "PublishedDuration" ) { - TQDomNode cn = element.firstChild(); - TQDomText t = cn.toText(); - TQString duration = t.data(); - if ( sRegExp.search( duration ) != -1 ) - { - mDuration = 0; - mDuration += 60 * 60 * sRegExp.cap( 1 ).toUInt(); - mDuration += 60 * sRegExp.cap( 2 ).toUInt(); - mDuration += sRegExp.cap( 3 ).toUInt(); - } - } - return true; -} - -ProgramInformationMap Service::programmeInformation() const -{ - return mProgInfo; -} - -ProgramInformation::ProgramInformation( const TQString & title, const TQString &synopsis ) -: mTitle( title ), mSynopsis( synopsis ) -{ - -} - -bool ProgramInformation::loadXML( const TQDomElement & top ) -{ - if ( top.tagName() != "ProgramInformation" ) { - tqWarning( "XML error: Top tag was %s instead of the expected program information", - top.tagName().ascii() ); - return false; - } - - setId( top.attribute( "programId" ) ); - - for ( TQDomNode n = top.firstChild(); !n.isNull(); n = n.nextSibling() ) { - if ( n.isComment() ) - continue; - if ( n.isElement() ) { - TQDomElement e = n.toElement(); - if ( e.tagName() == "BasicDescription" ) - { - for ( TQDomNode n = e.firstChild(); !n.isNull(); n = n.nextSibling() ) { - if ( n.isComment() ) - continue; - if ( n.isElement() ) { - TQDomElement e = n.toElement(); - loadAttribute( e ); - } - } - } - } else - tqWarning( "Node is not a comment or an element???" ); - } - return true; -} - -bool ProgramInformation::loadAttribute( const TQDomElement& element ) -{ - TQString tagName = element.tagName(); - if ( tagName == "Title" ) { - TQDomNode cn = element.firstChild(); - TQDomText t = cn.toText(); - mTitle = t.data(); - } - else if ( tagName == "Synopsis" ) { - TQDomNode cn = element.firstChild(); - TQDomText t = cn.toText(); - mSynopsis = t.data(); - } - else if ( tagName == "Genre" ) { - TQDomNode name = element.firstChild(); - TQDomElement nameElem = name.toElement(); - if ( nameElem.tagName() == "Name" ) { - TQDomNode cn = nameElem.firstChild(); - TQDomText t = cn.toText(); - mGenres.append( t.data() ); - } - } - return true; -} |