mirror of https://github.com/oxen-io/session-ios
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.1 KiB
C
41 lines
1.1 KiB
C
5 years ago
|
//
|
||
|
// Copyright (c) 2018 Open Whisper Systems. All rights reserved.
|
||
|
//
|
||
|
|
||
|
#import <Foundation/Foundation.h>
|
||
|
|
||
|
NS_ASSUME_NONNULL_BEGIN
|
||
|
|
||
|
@class OWSPrimaryStorage;
|
||
|
@class OWSStorage;
|
||
|
@class SSKProtoEnvelope;
|
||
|
@class YapDatabaseReadWriteTransaction;
|
||
|
|
||
|
@interface OWSMessageContentQueue : NSObject
|
||
|
|
||
|
- (dispatch_queue_t)serialQueue;
|
||
|
|
||
|
@end
|
||
|
|
||
|
// This class is used to write incoming (decrypted, unprocessed)
|
||
|
// messages to a durable queue and then process them in batches,
|
||
|
// in the order in which they were received.
|
||
|
@interface OWSBatchMessageProcessor : NSObject
|
||
|
|
||
|
@property (nonatomic, readonly) OWSMessageContentQueue *processingQueue;
|
||
|
|
||
|
- (instancetype)init NS_UNAVAILABLE;
|
||
|
- (instancetype)initWithPrimaryStorage:(OWSPrimaryStorage *)primaryStorage NS_DESIGNATED_INITIALIZER;
|
||
|
|
||
|
+ (NSString *)databaseExtensionName;
|
||
|
+ (void)asyncRegisterDatabaseExtension:(OWSStorage *)storage;
|
||
|
|
||
|
- (void)enqueueEnvelopeData:(NSData *)envelopeData
|
||
|
plaintextData:(NSData *_Nullable)plaintextData
|
||
|
wasReceivedByUD:(BOOL)wasReceivedByUD
|
||
|
transaction:(YapDatabaseReadWriteTransaction *)transaction;
|
||
|
|
||
|
@end
|
||
|
|
||
|
NS_ASSUME_NONNULL_END
|