From 6f7a0e57ce0650c9e91b15e75ec9a0bb85f6ddb6 Mon Sep 17 00:00:00 2001 From: Ruben Beltran del Rio Date: Sat, 6 Sep 2025 23:03:04 +0200 Subject: Make the provider functional --- QSBookmarkProvider.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 QSBookmarkProvider.h (limited to 'QSBookmarkProvider.h') diff --git a/QSBookmarkProvider.h b/QSBookmarkProvider.h new file mode 100644 index 0000000..735ae82 --- /dev/null +++ b/QSBookmarkProvider.h @@ -0,0 +1,48 @@ +// +// QSBookmarkProvider.h +// QSDeliciousPlugIn +// +// Protocol for social bookmark providers +// + +#import +#import "SocialSite.h" + +@class QSObject; + +@protocol QSBookmarkProvider + +@required +/** + * Check if this provider can handle the given site configuration + */ +- (BOOL)canHandleSite:(SocialSite)site username:(NSString *)username password:(NSString *)password host:(NSString *)host; + +/** + * Fetch bookmarks for the given configuration + * Returns an NSArray of QSObject instances + */ +- (NSArray *)fetchBookmarksForSite:(SocialSite)site username:(NSString *)username password:(NSString *)password host:(NSString *)host includeTags:(BOOL)includeTags; + +/** + * Get the supported site for this provider + */ +- (SocialSite)supportedSite; + +/** + * Get display name for this provider + */ +- (NSString *)providerName; + +@optional +/** + * Get bookmarks for a specific tag (used for child loading) + */ +- (NSArray *)fetchBookmarksForTag:(NSString *)tag site:(SocialSite)site username:(NSString *)username password:(NSString *)password host:(NSString *)host; + +/** + * Get the tag URL type identifier for this provider + */ +- (NSString *)tagURLType; + +@end \ No newline at end of file -- cgit