2019-11-04 00:01:55 +03:00
|
|
|
/*
|
2019-03-08 12:07:49 +03:00
|
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
2016-03-24 13:38:41 +03:00
|
|
|
*
|
2019-03-08 12:07:49 +03:00
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
|
* LICENSE file in the root directory of this source tree.
|
2016-03-24 13:38:41 +03:00
|
|
|
*/
|
|
|
|
|
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
|
2016-04-01 12:32:40 +03:00
|
|
|
@class FBWeakFramework;
|
2016-03-24 13:38:41 +03:00
|
|
|
@protocol FBControlCoreLogger;
|
|
|
|
|
2016-09-20 13:48:40 +03:00
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
|
2016-03-24 13:38:41 +03:00
|
|
|
/**
|
|
|
|
A Utility Class for loading weak-linked Frameworks at runtime.
|
|
|
|
*/
|
|
|
|
@interface FBWeakFrameworkLoader : NSObject
|
|
|
|
|
|
|
|
/**
|
2016-04-01 12:32:40 +03:00
|
|
|
Loads a list of Frameworks.
|
|
|
|
Will avoid re-loading already loaded Frameworks.
|
2016-06-06 20:38:20 +03:00
|
|
|
Will also completely bypass loading of user plugins to prevent compatability issues.
|
2016-03-24 13:38:41 +03:00
|
|
|
|
2016-04-01 12:32:40 +03:00
|
|
|
@param weakFrameworks a list of frameworks to load
|
2016-03-24 13:38:41 +03:00
|
|
|
@param logger a logger for logging framework loading activities.
|
|
|
|
@param error an error out for any error that occurs.
|
|
|
|
@return YES if successful, NO otherwise.
|
|
|
|
*/
|
2016-04-01 12:32:40 +03:00
|
|
|
+ (BOOL)loadPrivateFrameworks:(NSArray<FBWeakFramework *> *)weakFrameworks logger:(id<FBControlCoreLogger>)logger error:(NSError **)error;
|
2016-03-24 13:38:41 +03:00
|
|
|
|
|
|
|
@end
|
2016-09-20 13:48:40 +03:00
|
|
|
|
|
|
|
NS_ASSUME_NONNULL_END
|