RSSKit  0.6.1
RSSFeedProtocol.h
1 /* -*-objc-*-
2  *
3  * GNUstep RSS Kit
4  * Copyright (C) 2010-2011 The Free Software Foundation, Inc.
5  * 2006 Guenther Noack
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation, in version 2.1
10  * of the License
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20  */
21 
22 #import <Foundation/Foundation.h>
23 
24 // --- Notifications ---
25 
30 extern NSString *const RSSFeedFetchedNotification;
31 
38 extern NSString *const RSSFeedFetchFailedNotification;
39 
44 extern NSString *const RSSFeedWillFetchNotification;
45 
46 // ---------------------
47 
51 enum RSSFeedError
52  {
53  RSSFeedErrorNoError = 0,
54  RSSFeedErrorNoFetcherError,
55  RSSFeedErrorMalformedURL,
56  RSSFeedErrorDomainNotKnown,
57  RSSFeedErrorServerNotReachable,
58  RSSFeedErrorDocumentNotPresent,
59  RSSFeedErrorMalformedRSS
60  };
61 
62 
67 @protocol RSSFeed
68 
69 // Article access
70 
74 - (NSEnumerator*) articleEnumerator;
75 
79 - (NSSet*) articleSet;
80 
84 - (int) articleCount;
85 
89 - (BOOL)isFetching;
90 
94 - (NSString*) feedName;
95 
100 - (NSURL*) feedURL;
101 
109 - (enum RSSFeedError) fetch;
110 
118 - (void) fetchInBackground;
119 
123 - (enum RSSFeedError) lastError;
124 
129 - (BOOL) autoClear;
130 
131 
132 @end
133 
134 @protocol RSSMutableFeed <RSSFeed>
140 - (void) removeArticle: (id) article;
141 
142 
146 - (void) setFeedName: (NSString*) aFeedName;
147 
148 
156 - (void) setAutoClear: (BOOL) autoClear;
157 
158 
159 @end
160 
NSString * feedName()
Definition: RSSFeed.m:179
int articleCount()
void fetchInBackground()
Definition: RSSFeed+Fetching.m:334
NSURL * feedURL()
Definition: RSSFeed.m:191
BOOL autoClear()
Definition: RSSFeed.h:85
BOOL isFetching()
Definition: RSSFeed.m:99
enum RSSFeedError lastError()
Definition: RSSFeed+Fetching.m:304
enum RSSFeedError fetch()
Definition: RSSFeed+Fetching.m:314
NSEnumerator * articleEnumerator()
Definition: RSSFeed.m:138
NSSet * articleSet()