[iOS] Namespace the public API of the feature invite
This commit is contained in:
parent
529e5e8938
commit
85612b9ae1
|
@ -18,6 +18,6 @@
|
|||
|
||||
#import <JitsiMeet/JitsiMeet.h>
|
||||
|
||||
@interface ViewController : UIViewController<JitsiMeetViewDelegate, InviteControllerDelegate>
|
||||
@interface ViewController : UIViewController<JitsiMeetViewDelegate, JMInviteControllerDelegate>
|
||||
|
||||
@end
|
||||
|
|
|
@ -31,9 +31,7 @@
|
|||
|
||||
view.delegate = self;
|
||||
|
||||
// inviteController
|
||||
InviteController *inviteController = view.inviteController;
|
||||
inviteController.delegate = self;
|
||||
view.inviteController.delegate = self;
|
||||
|
||||
#endif // #ifdef DEBUG
|
||||
|
||||
|
@ -78,13 +76,13 @@ void _onJitsiMeetViewDelegateEvent(NSString *name, NSDictionary *data) {
|
|||
_onJitsiMeetViewDelegateEvent(@"LOAD_CONFIG_ERROR", data);
|
||||
}
|
||||
|
||||
- (void)beginAddPeople:(AddPeopleController *)addPeopleController {
|
||||
- (void)beginAddPeople:(JMAddPeopleController *)addPeopleController {
|
||||
NSLog(
|
||||
@"[%s:%d] InviteControllerDelegate %s",
|
||||
@"[%s:%d] JMInviteControllerDelegate %s",
|
||||
__FILE__, __LINE__, __FUNCTION__);
|
||||
|
||||
// XXX Explicitly invoke endAddPeople on addPeopleController; otherwise, it
|
||||
// is going to be memory-leaked in the associated InviteController and no
|
||||
// is going to be memory-leaked in the associated JMInviteController and no
|
||||
// subsequent InviteButton clicks/taps will be delivered.
|
||||
[addPeopleController endAddPeople];
|
||||
}
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
|
||||
@property (nonatomic, nullable, weak) id<JitsiMeetViewDelegate> delegate;
|
||||
|
||||
@property (nonatomic, readonly, nonnull) InviteController *inviteController;
|
||||
@property (nonatomic, readonly, nonnull) JMInviteController *inviteController;
|
||||
|
||||
@property (nonatomic) BOOL pictureInPictureEnabled;
|
||||
|
||||
|
|
|
@ -413,8 +413,8 @@ static NSMapTable<NSString *, JitsiMeetView *> *views;
|
|||
|
||||
Invite *inviteModule = [bridgeWrapper.bridge moduleForName:@"Invite"];
|
||||
_inviteController
|
||||
= [[InviteController alloc] initWithExternalAPIScope:externalAPIScope
|
||||
andInviteModule:inviteModule];
|
||||
= [[JMInviteController alloc] initWithExternalAPIScope:externalAPIScope
|
||||
andInviteModule:inviteModule];
|
||||
|
||||
// Set a background color which is in accord with the JavaScript and Android
|
||||
// parts of the application and causes less perceived visual flicker than
|
||||
|
|
|
@ -17,13 +17,13 @@
|
|||
#import "AddPeopleController.h"
|
||||
#import "InviteController.h"
|
||||
|
||||
@interface AddPeopleController ()
|
||||
@interface JMAddPeopleController ()
|
||||
|
||||
@property (nonatomic, strong) NSMutableDictionary* _Nonnull items;
|
||||
@property (nonatomic, weak, nullable) InviteController *owner;
|
||||
@property (nonatomic, weak, nullable) JMInviteController *owner;
|
||||
@property (nonatomic, readonly) NSString* _Nonnull uuid;
|
||||
|
||||
- (instancetype _Nonnull)initWithOwner:(InviteController * _Nonnull)owner;
|
||||
- (instancetype _Nonnull)initWithOwner:(JMInviteController * _Nonnull)owner;
|
||||
|
||||
- (void)inviteSettled:(NSArray<NSDictionary *> * _Nonnull)failedInvitees;
|
||||
|
||||
|
|
|
@ -18,9 +18,9 @@
|
|||
|
||||
#import "AddPeopleControllerDelegate.h"
|
||||
|
||||
@interface AddPeopleController: NSObject
|
||||
@interface JMAddPeopleController: NSObject
|
||||
|
||||
@property (nonatomic, nullable, weak) id<AddPeopleControllerDelegate> delegate;
|
||||
@property (nonatomic, nullable, weak) id<JMAddPeopleControllerDelegate> delegate;
|
||||
|
||||
- (void)endAddPeople;
|
||||
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
#import "AddPeopleController+Private.h"
|
||||
#import "InviteController+Private.h"
|
||||
|
||||
@implementation AddPeopleController
|
||||
@implementation JMAddPeopleController
|
||||
|
||||
- (instancetype)initWithOwner:(InviteController *)owner {
|
||||
- (instancetype)initWithOwner:(JMInviteController *)owner {
|
||||
self = [super init];
|
||||
if (self) {
|
||||
_uuid = [[NSUUID UUID] UUIDString];
|
||||
|
|
|
@ -18,24 +18,24 @@
|
|||
|
||||
#import "AddPeopleController.h"
|
||||
|
||||
@class AddPeopleController;
|
||||
@class JMAddPeopleController;
|
||||
|
||||
@protocol AddPeopleControllerDelegate
|
||||
@protocol JMAddPeopleControllerDelegate
|
||||
|
||||
/**
|
||||
* Called when an AddPeopleController has results for a query that was
|
||||
* Called when a JMAddPeopleController has results for a query that was
|
||||
* previously provided.
|
||||
*/
|
||||
- (void)addPeopleController:(AddPeopleController * _Nonnull)controller
|
||||
- (void)addPeopleController:(JMAddPeopleController * _Nonnull)controller
|
||||
didReceiveResults:(NSArray<NSDictionary *> * _Nonnull)results
|
||||
forQuery:(NSString * _Nonnull)query;
|
||||
|
||||
/**
|
||||
* Called when an AddPeopleController has finished the inviting process, either
|
||||
* Called when a JMAddPeopleController has finished the inviting process, either
|
||||
* succesfully or not. In case of failure the failedInvitees array will contain
|
||||
* the items for which invitations failed.
|
||||
*/
|
||||
- (void)inviteSettled:(NSArray<NSDictionary *> * _Nonnull)failedInvitees
|
||||
fromSearchController:(AddPeopleController * _Nonnull)addPeopleController;
|
||||
- (void) inviteSettled:(NSArray<NSDictionary *> * _Nonnull)failedInvitees
|
||||
fromSearchController:(JMAddPeopleController * _Nonnull)addPeopleController;
|
||||
|
||||
@end
|
||||
|
|
|
@ -42,16 +42,17 @@ RCT_EXPORT_MODULE();
|
|||
|
||||
/**
|
||||
* Initiates the process to add people. This involves calling a delegate method
|
||||
* in the InviteControllerDelegate so the native host application can start
|
||||
* in the JMInviteControllerDelegate so the native host application can start
|
||||
* the query process.
|
||||
*
|
||||
* @param externalAPIScope - Scope identifying the JitsiMeetView where the
|
||||
* calling JS code is being executed.
|
||||
*/
|
||||
RCT_EXPORT_METHOD(beginAddPeople:(NSString *)externalAPIScope) {
|
||||
JitsiMeetView *view = [JitsiMeetView viewForExternalAPIScope:externalAPIScope];
|
||||
InviteController *controller = view.inviteController;
|
||||
[controller beginAddPeople];
|
||||
JitsiMeetView *view
|
||||
= [JitsiMeetView viewForExternalAPIScope:externalAPIScope];
|
||||
JMInviteController *inviteController = view.inviteController;
|
||||
[inviteController beginAddPeople];
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -59,7 +60,7 @@ RCT_EXPORT_METHOD(beginAddPeople:(NSString *)externalAPIScope) {
|
|||
*
|
||||
* @param externalAPIScope - Scope identifying the JitsiMeetView where the
|
||||
* calling JS code is being executed.
|
||||
* @param addPeopleControllerScope - Scope identifying the AddPeopleController
|
||||
* @param addPeopleControllerScope - Scope identifying the JMAddPeopleController
|
||||
* wich was settled.
|
||||
* @param failedInvitees - Array with the invitees which were not invited due
|
||||
* to a failure.
|
||||
|
@ -67,19 +68,21 @@ RCT_EXPORT_METHOD(beginAddPeople:(NSString *)externalAPIScope) {
|
|||
RCT_EXPORT_METHOD(inviteSettled:(NSString *)externalAPIScope
|
||||
addPeopleControllerScope:(NSString *)addPeopleControllerScope
|
||||
failedInvitees:(NSArray *)failedInvitees) {
|
||||
JitsiMeetView *view = [JitsiMeetView viewForExternalAPIScope:externalAPIScope];
|
||||
InviteController *controller = view.inviteController;
|
||||
[controller inviteSettled:addPeopleControllerScope failedInvitees:failedInvitees];
|
||||
JitsiMeetView *view
|
||||
= [JitsiMeetView viewForExternalAPIScope:externalAPIScope];
|
||||
JMInviteController *inviteController = view.inviteController;
|
||||
[inviteController inviteSettled:addPeopleControllerScope
|
||||
failedInvitees:failedInvitees];
|
||||
}
|
||||
|
||||
/**
|
||||
* Process results received for the given query. This involves calling a
|
||||
* delegate method in AddPeopleControllerDelegate so the native host application
|
||||
* is made aware of the query results.
|
||||
* delegate method in JMAddPeopleControllerDelegate so the native host
|
||||
* application is made aware of the query results.
|
||||
*
|
||||
* @param externalAPIScope - Scope identifying the JitsiMeetView where the
|
||||
* calling JS code is being executed.
|
||||
* @param addPeopleControllerScope - Scope identifying the AddPeopleController
|
||||
* @param addPeopleControllerScope - Scope identifying the JMAddPeopleController
|
||||
* for which the results were received.
|
||||
* @param query - The actual query for which the results were received.
|
||||
* @param results - The query results.
|
||||
|
@ -88,9 +91,12 @@ RCT_EXPORT_METHOD(receivedResults:(NSString *)externalAPIScope
|
|||
addPeopleControllerScope:(NSString *)addPeopleControllerScope
|
||||
query:(NSString *)query
|
||||
results:(NSArray *)results) {
|
||||
JitsiMeetView *view = [JitsiMeetView viewForExternalAPIScope:externalAPIScope];
|
||||
InviteController *controller = view.inviteController;
|
||||
[controller receivedResults:addPeopleControllerScope query:query results:results];
|
||||
JitsiMeetView *view
|
||||
= [JitsiMeetView viewForExternalAPIScope:externalAPIScope];
|
||||
JMInviteController *inviteController = view.inviteController;
|
||||
[inviteController receivedResults:addPeopleControllerScope
|
||||
query:query
|
||||
results:results];
|
||||
}
|
||||
|
||||
- (void) invite:(NSArray<NSDictionary *> * _Nonnull)invitees
|
||||
|
|
|
@ -19,9 +19,9 @@
|
|||
#import "AddPeopleController.h"
|
||||
#import "Invite+Private.h"
|
||||
|
||||
@interface InviteController ()
|
||||
@interface JMInviteController ()
|
||||
|
||||
@property (nonatomic, nullable) AddPeopleController *addPeopleController;
|
||||
@property (nonatomic, nullable) JMAddPeopleController *addPeopleController;
|
||||
|
||||
@property (nonatomic) NSString * _Nonnull externalAPIScope;
|
||||
|
||||
|
@ -32,16 +32,16 @@
|
|||
|
||||
- (void)beginAddPeople;
|
||||
|
||||
- (void)endAddPeopleForController:(AddPeopleController * _Nonnull)controller;
|
||||
- (void)endAddPeopleForController:(JMAddPeopleController * _Nonnull)controller;
|
||||
|
||||
- (void) invite:(NSArray * _Nonnull)invitees
|
||||
forController:(AddPeopleController * _Nonnull)controller;
|
||||
forController:(JMAddPeopleController * _Nonnull)controller;
|
||||
|
||||
- (void)inviteSettled:(NSString * _Nonnull)addPeopleControllerScope
|
||||
failedInvitees:(NSArray * _Nonnull)failedInvitees;
|
||||
|
||||
- (void)performQuery:(NSString * _Nonnull)query
|
||||
forController:(AddPeopleController * _Nonnull)controller;
|
||||
forController:(JMAddPeopleController * _Nonnull)controller;
|
||||
|
||||
- (void)receivedResults:(NSString * _Nonnull)addPeopleControllerScope
|
||||
query:(NSString * _Nonnull)query
|
||||
|
|
|
@ -18,13 +18,13 @@
|
|||
|
||||
#import "InviteControllerDelegate.h"
|
||||
|
||||
@interface InviteController : NSObject
|
||||
@interface JMInviteController : NSObject
|
||||
|
||||
@property (nonatomic) BOOL addPeopleEnabled;
|
||||
|
||||
@property (nonatomic) BOOL dialOutEnabled;
|
||||
|
||||
@property (nonatomic, nullable, weak) id<InviteControllerDelegate> delegate;
|
||||
@property (nonatomic, nullable, weak) id<JMInviteControllerDelegate> delegate;
|
||||
|
||||
- (void) invite:(NSArray * _Nonnull)invitees
|
||||
withCompletion:(void (^ _Nullable)(NSArray<NSDictionary *> * _Nonnull failedInvitees))completion;
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#import "InviteController+Private.h"
|
||||
#import "AddPeopleController+Private.h"
|
||||
|
||||
@implementation InviteController {
|
||||
@implementation JMInviteController {
|
||||
NSNumber *_addPeopleEnabled;
|
||||
NSNumber *_dialOutEnabled;
|
||||
}
|
||||
|
@ -49,7 +49,7 @@
|
|||
return;
|
||||
}
|
||||
|
||||
_addPeopleController = [[AddPeopleController alloc] initWithOwner:self];
|
||||
_addPeopleController = [[JMAddPeopleController alloc] initWithOwner:self];
|
||||
|
||||
@try {
|
||||
if (self.delegate
|
||||
|
@ -61,7 +61,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
-(void)endAddPeopleForController:(AddPeopleController *)controller {
|
||||
-(void)endAddPeopleForController:(JMAddPeopleController *)controller {
|
||||
if (self.addPeopleController == controller) {
|
||||
self.addPeopleController = nil;
|
||||
}
|
||||
|
@ -99,7 +99,7 @@
|
|||
|
||||
- (void)inviteSettled:(NSString *)addPeopleControllerScope
|
||||
failedInvitees:(NSArray *)failedInvitees {
|
||||
AddPeopleController *controller = self.addPeopleController;
|
||||
JMAddPeopleController *controller = self.addPeopleController;
|
||||
|
||||
if (controller != nil
|
||||
&& [controller.uuid isEqualToString:addPeopleControllerScope]) {
|
||||
|
@ -116,7 +116,7 @@
|
|||
- (void)receivedResults:(NSString *)addPeopleControllerScope
|
||||
query:(NSString *)query
|
||||
results:(NSArray *)results {
|
||||
AddPeopleController *controller = self.addPeopleController;
|
||||
JMAddPeopleController *controller = self.addPeopleController;
|
||||
|
||||
if (controller != nil
|
||||
&& [controller.uuid isEqualToString:addPeopleControllerScope]) {
|
||||
|
@ -127,7 +127,7 @@
|
|||
#pragma mark Use the Invite react-native module to emit the search / submission events
|
||||
|
||||
- (void) invite:(NSArray *)invitees
|
||||
forController:(AddPeopleController * _Nonnull)controller {
|
||||
forController:(JMAddPeopleController * _Nonnull)controller {
|
||||
[self invite:invitees
|
||||
forControllerScope:controller.uuid];
|
||||
}
|
||||
|
@ -147,7 +147,7 @@
|
|||
}
|
||||
|
||||
- (void)performQuery:(NSString * _Nonnull)query
|
||||
forController:(AddPeopleController * _Nonnull)controller {
|
||||
forController:(JMAddPeopleController * _Nonnull)controller {
|
||||
[self.inviteModule performQuery:query
|
||||
externalAPIScope:self.externalAPIScope
|
||||
addPeopleControllerScope:controller.uuid];
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
|
||||
#import "AddPeopleController.h"
|
||||
|
||||
@protocol InviteControllerDelegate <NSObject>
|
||||
@protocol JMInviteControllerDelegate <NSObject>
|
||||
|
||||
/**
|
||||
* Called when the invite button in the conference is tapped.
|
||||
|
@ -24,6 +24,6 @@
|
|||
* The search controller provided can be used to query user search within the
|
||||
* conference.
|
||||
*/
|
||||
- (void)beginAddPeople:(AddPeopleController *)addPeopleController;
|
||||
- (void)beginAddPeople:(JMAddPeopleController *)addPeopleController;
|
||||
|
||||
@end
|
||||
|
|
Loading…
Reference in New Issue