feedstoragedummyimpl.h
00001 /* 00002 This file is part of Akregator. 00003 00004 Copyright (C) 2005 Frank Osterfeld <frank.osterfeld@kdemail.net> 00005 00006 This program is free software; you can redistribute it and/or modify 00007 it under the terms of the GNU General Public License as published by 00008 the Free Software Foundation; either version 2 of the License, or 00009 (at your option) any later version. 00010 00011 This program is distributed in the hope that it will be useful, 00012 but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 GNU General Public License for more details. 00015 00016 You should have received a copy of the GNU General Public License 00017 along with this program; if not, write to the Free Software 00018 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00019 00020 As a special exception, permission is given to link this program 00021 with any edition of TQt, and distribute the resulting executable, 00022 without including the source code for TQt in the source distribution. 00023 */ 00024 #ifndef AKREGATOR_BACKEND_FEEDSTORAGEDUMMYIMPL_H 00025 #define AKREGATOR_BACKEND_FEEDSTORAGEDUMMYIMPL_H 00026 00027 #include "feedstorage.h" 00028 namespace Akregator { 00029 namespace Backend { 00030 00031 class StorageDummyImpl; 00032 class FeedStorageDummyImpl : public FeedStorage 00033 { 00034 public: 00035 FeedStorageDummyImpl(const TQString& url, StorageDummyImpl* main); 00036 virtual ~FeedStorageDummyImpl(); 00037 00038 virtual void add(FeedStorage* source); 00039 virtual void copyArticle(const TQString& guid, FeedStorage* source); 00040 00041 virtual void clear(); 00042 virtual int unread(); 00043 virtual void setUnread(int unread); 00044 virtual int totalCount(); 00045 virtual int lastFetch(); 00046 virtual void setLastFetch(int lastFetch); 00047 00048 virtual TQStringList articles(const TQString& tag=TQString()); 00049 00050 virtual TQStringList articles(const Category& cat); 00051 00052 00053 virtual bool contains(const TQString& guid); 00054 virtual void addEntry(const TQString& guid); 00055 virtual void deleteArticle(const TQString& guid); 00056 virtual int comments(const TQString& guid); 00057 virtual TQString commentsLink(const TQString& guid); 00058 virtual void setCommentsLink(const TQString& guid, const TQString& commentsLink); 00059 virtual void setComments(const TQString& guid, int comments); 00060 virtual bool guidIsHash(const TQString& guid); 00061 virtual void setGuidIsHash(const TQString& guid, bool isHash); 00062 virtual bool guidIsPermaLink(const TQString& guid); 00063 virtual void setGuidIsPermaLink(const TQString& guid, bool isPermaLink); 00064 virtual uint hash(const TQString& guid); 00065 virtual void setHash(const TQString& guid, uint hash); 00066 virtual void setDeleted(const TQString& guid); 00067 virtual TQString link(const TQString& guid); 00068 virtual void setLink(const TQString& guid, const TQString& link); 00069 virtual uint pubDate(const TQString& guid); 00070 virtual void setPubDate(const TQString& guid, uint pubdate); 00071 virtual int status(const TQString& guid); 00072 virtual void setStatus(const TQString& guid, int status); 00073 virtual TQString title(const TQString& guid); 00074 virtual void setTitle(const TQString& guid, const TQString& title); 00075 virtual TQString description(const TQString& guid); 00076 virtual void setDescription(const TQString& guid, const TQString& description); 00077 virtual void addTag(const TQString& guid, const TQString& tag); 00078 virtual void removeTag(const TQString& guid, const TQString& tag); 00079 virtual TQStringList tags(const TQString& guid=TQString()); 00080 00081 virtual void setEnclosure(const TQString& guid, const TQString& url, const TQString& type, int length); 00082 virtual void removeEnclosure(const TQString& guid); 00083 virtual void enclosure(const TQString& guid, bool& hasEnclosure, TQString& url, TQString& type, int& length); 00084 00085 virtual void addCategory(const TQString& guid, const Category& category); 00086 virtual TQValueList<Category> categories(const TQString& guid=TQString()); 00087 00088 virtual void setAuthor(const TQString& guid, const TQString& author); 00089 virtual TQString author(const TQString& guid); 00090 00091 virtual void close(); 00092 virtual void commit(); 00093 virtual void rollback(); 00094 00095 virtual void convertOldArchive(); 00096 private: 00098 int findArticle(const TQString& guid); 00099 void setTotalCount(int total); 00100 class FeedStorageDummyImplPrivate; 00101 FeedStorageDummyImplPrivate* d; 00102 }; 00103 00104 } 00105 } 00106 #endif // AKREGATOR_FEEDSTORAGEDUMMYIMPL_H