2014-11-19 21:17:53 +01:00
|
|
|
//
|
|
|
|
// TSStorageManager.h
|
|
|
|
// TextSecureKit
|
|
|
|
//
|
|
|
|
// Created by Frederic Jacobs on 27/10/14.
|
|
|
|
// Copyright (c) 2014 Open Whisper Systems. All rights reserved.
|
|
|
|
//
|
|
|
|
|
|
|
|
#import "TSStorageKeys.h"
|
|
|
|
|
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
#import <YapDatabase/YapDatabase.h>
|
|
|
|
|
|
|
|
@class ECKeyPair;
|
|
|
|
@class PreKeyRecord;
|
|
|
|
@class SignedPreKeyRecord;
|
|
|
|
|
2014-11-21 14:38:37 +01:00
|
|
|
extern NSString *const TSUIDatabaseConnectionDidUpdateNotification;
|
|
|
|
|
2014-11-19 21:17:53 +01:00
|
|
|
@interface TSStorageManager : NSObject
|
|
|
|
|
|
|
|
+ (instancetype)sharedManager;
|
2014-11-21 14:38:37 +01:00
|
|
|
- (void)setupDatabase;
|
2014-12-27 01:08:05 +01:00
|
|
|
- (void)deleteThreadsAndMessages;
|
2015-02-20 17:02:31 +01:00
|
|
|
- (void)wipeSignalStorage;
|
2014-11-19 21:17:53 +01:00
|
|
|
|
|
|
|
- (YapDatabase*)database;
|
2014-11-21 14:38:37 +01:00
|
|
|
- (YapDatabaseConnection*)newDatabaseConnection;
|
2014-11-19 21:17:53 +01:00
|
|
|
|
2015-02-20 17:02:31 +01:00
|
|
|
|
|
|
|
|
2014-11-19 21:17:53 +01:00
|
|
|
- (void)setObject:(id)object forKey:(NSString*)key inCollection:(NSString*)collection;
|
|
|
|
- (void)removeObjectForKey:(NSString*)string inCollection:(NSString *)collection;
|
|
|
|
|
|
|
|
|
|
|
|
- (BOOL)boolForKey:(NSString*)key inCollection:(NSString*)collection;
|
|
|
|
- (int)intForKey:(NSString*)key inCollection:(NSString*)collection;
|
|
|
|
- (void)setInt:(int)integer forKey:(NSString*)key inCollection:(NSString*)collection;
|
|
|
|
- (id)objectForKey:(NSString*)key inCollection:(NSString *)collection;
|
|
|
|
- (NSDictionary*)dictionaryForKey:(NSString*)key inCollection:(NSString *)collection;
|
|
|
|
- (NSString*)stringForKey:(NSString*)key inCollection:(NSString*)collection;
|
|
|
|
- (NSData*)dataForKey:(NSString*)key inCollection:(NSString*)collection;
|
|
|
|
- (ECKeyPair*)keyPairForKey:(NSString*)key inCollection:(NSString*)collection;
|
|
|
|
- (PreKeyRecord*)preKeyRecordForKey:(NSString*)key inCollection:(NSString*)collection;
|
|
|
|
- (SignedPreKeyRecord*)signedPreKeyRecordForKey:(NSString*)key inCollection:(NSString*)collection;
|
|
|
|
- (void)purgeCollection:(NSString*)collection;
|
|
|
|
|
2014-11-21 14:38:37 +01:00
|
|
|
@property (nonatomic, readonly) YapDatabaseConnection *dbConnection;
|
|
|
|
|
2014-11-19 21:17:53 +01:00
|
|
|
@end
|