summaryrefslogtreecommitdiff
path: root/Factories/QSBookmarkProviderFactory.h
blob: bc0ae7905523ba1156470bdefff36d1a925cd4da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//
//  QSBookmarkProviderFactory.h
//  QSDeliciousPlugIn
//
//  Factory for managing bookmark providers
//

#import "QSBookmarkProvider.h"
#import "SocialSite.h"
#import <Foundation/Foundation.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