summaryrefslogtreecommitdiff
path: root/Factories/QSBookmarkProviderFactory.h
diff options
context:
space:
mode:
authorRuben Beltran del Rio <git@r.bdr.sh>2025-09-08 10:38:39 +0200
committerRuben Beltran del Rio <git@r.bdr.sh>2025-09-08 10:38:39 +0200
commita5e25cc05e5e33e114331cc826211c89adbcfa6a (patch)
tree2ea647b5117e5c3b530ec66d4caafd04969e0fbe /Factories/QSBookmarkProviderFactory.h
parent0f26c5c3b3e606c89724067d4785323de3fee751 (diff)
Reorganize code, WIP save for tag handling
Diffstat (limited to 'Factories/QSBookmarkProviderFactory.h')
-rw-r--r--Factories/QSBookmarkProviderFactory.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/Factories/QSBookmarkProviderFactory.h b/Factories/QSBookmarkProviderFactory.h
new file mode 100644
index 0000000..e2e694b
--- /dev/null
+++ b/Factories/QSBookmarkProviderFactory.h
@@ -0,0 +1,28 @@
+//
+// QSBookmarkProviderFactory.h
+// QSDeliciousPlugIn
+//
+// Factory for managing bookmark providers
+//
+
+#import <Foundation/Foundation.h>
+#import "QSBookmarkProvider.h"
+#import "SocialSite.h"
+
+@interface QSBookmarkProviderFactory : NSObject
+
+@property (nonatomic, strong, readonly) NSArray<id<QSBookmarkProvider>> *providers;
+
++ (instancetype)sharedFactory;
+
+/**
+ * Get the appropriate provider for the given site configuration
+ */
+- (id<QSBookmarkProvider>)providerForSite:(SocialSite)site username:(NSString *)username password:(NSString *)password host:(NSString *)host;
+
+/**
+ * Get all available providers
+ */
+- (NSArray<id<QSBookmarkProvider>> *)allProviders;
+
+@end \ No newline at end of file