Statistics
| Branch: | Tag: | Revision:

root / Classes / OpenStackRequest.h @ ef74c42f

History | View | Annotate | Download (4 kB)

1
//
2
//  OpenStackRequest.h
3
//  OpenStack
4
//
5
//  Created by Mike Mayo on 10/8/10.
6
//  The OpenStack project is provided under the Apache 2.0 license.
7
//
8

    
9
#import "ASIHTTPRequest.h"
10

    
11
@class OpenStackAccount, Container, StorageObject, APICallback, ErrorAlerter;
12

    
13
@interface OpenStackRequest : ASIHTTPRequest <NSCopying> {
14
    OpenStackAccount *account;
15
    ASIBasicBlock backupCompletionBlock;
16
    ASIBasicBlock backupFailureBlock;
17
    APICallback *callback;
18
    BOOL retryWithUpdatedURL;
19
    NSString *followUpSelectorString;
20
    NSURL *notificationURL;
21
}
22

    
23
@property (nonatomic, retain) OpenStackAccount *account;
24
@property (nonatomic, retain) APICallback *callback;
25
@property (nonatomic, retain) ErrorAlerter *errorAlerter;
26
@property (nonatomic, assign) BOOL retryWithUpdatedURL;
27
@property (nonatomic, retain) NSString *followUpSelectorString;
28
@property (nonatomic, retain) NSURL *notificationURL;
29

    
30
+ (id)requestWithoutToken:(OpenStackAccount *)account method:(NSString *)method url:(NSURL *)url;
31
+ (id)request:(OpenStackAccount *)account method:(NSString *)method url:(NSURL *)url;
32
+ (id)filesRequest:(OpenStackAccount *)account method:(NSString *)method path:(NSString *)path;
33

    
34
+ (id)serviceCatalogRequest:(OpenStackAccount *)account;
35
- (NSDictionary *)access;
36
- (NSDictionary *)token;
37
- (NSArray *)serviceCatalog;
38
- (NSDictionary *)user;
39

    
40
+ (id)userCatalogRequest:(OpenStackAccount *)account displaynames:(NSArray *)displaynames UUIDs:(NSArray *)UUIDs;
41
- (NSDictionary *)catalogs;
42
- (NSDictionary *)displaynameCatalog;
43
- (NSDictionary *)UUIDCatalog;
44

    
45
+ (id)authenticationRequest:(OpenStackAccount *)account;
46
+ (id)getSharingAccountsRequest:(OpenStackAccount *)account
47
                         marker:(NSString *)marker sharingAccountsBuffer:(NSMutableDictionary *)sharingAccountsBuffer;
48
+ (id)getSharingAccountsRequest:(OpenStackAccount *)account;
49
- (NSArray *)jsonSharingAccounts;
50

    
51
+ (id)getStorageAccountInfoRequest:(OpenStackAccount *)account;
52
+ (id)getContainersRequest:(OpenStackAccount *)account
53
                    marker:(NSString *)marker containersBuffer:(NSMutableDictionary *)containersBuffer;
54
+ (id)getContainersRequest:(OpenStackAccount *)account;
55
- (NSArray *)jsonContainers;
56
+ (id)writeAccountMetadataRequest:(OpenStackAccount *)account withAccountInfo:(NSDictionary *)accountInfo;
57

    
58
+ (id)getContainerInfoRequest:(OpenStackAccount *)account container:(Container *)container;
59
+ (id)createContainerRequest:(OpenStackAccount *)account container:(Container *)container;
60
+ (id)deleteContainerRequest:(OpenStackAccount *)account container:(Container *)container;
61
+ (id)getObjectsRequest:(OpenStackAccount *)account container:(Container *)container
62
                 marker:(NSString *)marker objectsBuffer:(NSMutableDictionary *)objectsBuffer;
63
+ (id)getObjectsRequest:(OpenStackAccount *)account container:(Container *)container;
64
- (NSArray *)jsonObjects;
65
+ (id)writeContainerPolicyRequest:(OpenStackAccount *)account container:(Container *)container;
66

    
67
+ (id)getObjectInfoRequest:(OpenStackAccount *)account container:(Container *)container object:(StorageObject *)object;
68
+ (id)getObjectInfoRequest:(OpenStackAccount *)account container:(Container *)container object:(StorageObject *)object version:(NSString *)version;
69
+ (id)getObjectVersionsRequest:(OpenStackAccount *)account container:(Container *)container object:(StorageObject *)object;
70
- (NSMutableArray *)versions;
71
+ (id)getObjectRequest:(OpenStackAccount *)account container:(Container *)container object:(StorageObject *)object;
72
+ (id)getObjectRequest:(OpenStackAccount *)account container:(Container *)container object:(StorageObject *)object version:(NSString *)version;
73
+ (id)writeObjectRequest:(OpenStackAccount *)account container:(Container *)container object:(StorageObject *)object;
74
+ (id)writeObjectMetadataRequest:(OpenStackAccount *)account container:(Container *)container object:(StorageObject *)object;
75
+ (id)deleteObjectRequest:(OpenStackAccount *)account container:(Container *)container object:(StorageObject *)object;
76

    
77
- (BOOL)isSuccess;
78

    
79
- (void)notify;
80
- (void)notify:(NSString *)name;
81

    
82
@end