akregator/src

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 Qt, and distribute the resulting executable,
00022     without including the source code for Qt 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 QString& url, StorageDummyImpl* main);
00036         virtual ~FeedStorageDummyImpl();
00037         
00038         virtual void add(FeedStorage* source);
00039         virtual void copyArticle(const QString& 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 QStringList articles(const QString& tag=QString::null);
00049 
00050         virtual QStringList articles(const Category& cat);
00051 
00052 
00053         virtual bool contains(const QString& guid);
00054         virtual void addEntry(const QString& guid);
00055         virtual void deleteArticle(const QString& guid);
00056         virtual int comments(const QString& guid);
00057         virtual QString commentsLink(const QString& guid);
00058         virtual void setCommentsLink(const QString& guid, const QString& commentsLink);
00059         virtual void setComments(const QString& guid, int comments);
00060         virtual bool guidIsHash(const QString& guid);
00061         virtual void setGuidIsHash(const QString& guid, bool isHash);
00062         virtual bool guidIsPermaLink(const QString& guid);
00063         virtual void setGuidIsPermaLink(const QString& guid, bool isPermaLink);
00064         virtual uint hash(const QString& guid);
00065         virtual void setHash(const QString& guid, uint hash);
00066         virtual void setDeleted(const QString& guid);
00067         virtual QString link(const QString& guid);
00068         virtual void setLink(const QString& guid, const QString& link); 
00069         virtual uint pubDate(const QString& guid);
00070         virtual void setPubDate(const QString& guid, uint pubdate);
00071         virtual int status(const QString& guid);
00072         virtual void setStatus(const QString& guid, int status);
00073         virtual QString title(const QString& guid);
00074         virtual void setTitle(const QString& guid, const QString& title);
00075         virtual QString description(const QString& guid);
00076         virtual void setDescription(const QString& guid, const QString& description);
00077         virtual void addTag(const QString& guid, const QString& tag);
00078         virtual void removeTag(const QString& guid, const QString& tag);
00079         virtual QStringList tags(const QString& guid=QString::null);
00080 
00081         virtual void setEnclosure(const QString& guid, const QString& url, const QString& type, int length);
00082         virtual void removeEnclosure(const QString& guid);
00083         virtual void enclosure(const QString& guid, bool& hasEnclosure, QString& url, QString& type, int& length);
00084 
00085         virtual void addCategory(const QString& guid, const Category& category);
00086         virtual QValueList<Category> categories(const QString& guid=QString::null);
00087 
00088         virtual void setAuthor(const QString& guid, const QString& author);
00089         virtual QString author(const QString& 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 QString& guid);
00099         void setTotalCount(int total);
00100         class FeedStorageDummyImplPrivate;
00101         FeedStorageDummyImplPrivate* d;
00102 };
00103 
00104 }
00105 }
00106 #endif // AKREGATOR_FEEDSTORAGEDUMMYIMPL_H
KDE Home | KDE Accessibility Home | Description of Access Keys