|
25 | 25 | #import "OCLogTemplate.h" |
26 | 26 | #import "TyphoonBlockComponentFactory.h" |
27 | 27 | #import "TyphoonCollaboratingAssembliesCollector.h" |
| 28 | +#import "TyphoonConfigPostProcessor.h" |
28 | 29 |
|
29 | 30 | static NSMutableSet *reservedSelectorsAsStrings; |
30 | 31 |
|
@@ -243,7 +244,19 @@ - (instancetype)activate { |
243 | 244 | return [self activateWithCollaboratingAssemblies:nil]; |
244 | 245 | } |
245 | 246 |
|
| 247 | +- (instancetype)activateWithConfigResourceName:(NSString *)resourceName { |
| 248 | + TyphoonConfigPostProcessor *processor = [TyphoonConfigPostProcessor processor]; |
| 249 | + [processor useResourceWithName:resourceName]; |
| 250 | + return [self activateWithCollaboratingAssemblies:nil postProcessors:@[processor]]; |
| 251 | +} |
| 252 | + |
246 | 253 | - (instancetype)activateWithCollaboratingAssemblies:(NSArray *)assemblies { |
| 254 | + return [self activateWithCollaboratingAssemblies:assemblies postProcessors:nil]; |
| 255 | +} |
| 256 | + |
| 257 | +- (instancetype)activateWithCollaboratingAssemblies:(NSArray *)assemblies postProcessors:(NSArray *)postProcessors { |
| 258 | + [self attachProcessors:postProcessors]; |
| 259 | + |
247 | 260 | NSMutableSet *reconciledAssemblies = [NSMutableSet setWithArray:[@[self] arrayByAddingObjectsFromArray:assemblies]]; |
248 | 261 | NSMutableSet *assembliesToRemove = [[NSMutableSet alloc] init]; |
249 | 262 |
|
@@ -278,11 +291,16 @@ - (instancetype)activateWithCollaboratingAssemblies:(NSArray *)assemblies { |
278 | 291 | } |
279 | 292 |
|
280 | 293 |
|
281 | | - |
282 | 294 | //------------------------------------------------------------------------------------------- |
283 | 295 | #pragma mark - Private Methods |
284 | 296 | //------------------------------------------------------------------------------------------- |
285 | 297 |
|
| 298 | +- (void)attachProcessors:(NSArray *)postProcessors { |
| 299 | + for (id<TyphoonDefinitionPostProcessor> processor in postProcessors) { |
| 300 | + [self attachDefinitionPostProcessor:processor]; |
| 301 | + } |
| 302 | +} |
| 303 | + |
286 | 304 | - (void)proxyCollaboratingAssembliesPriorToActivation { |
287 | 305 | TyphoonCollaboratingAssemblyPropertyEnumerator *enumerator = [[TyphoonCollaboratingAssemblyPropertyEnumerator alloc] |
288 | 306 | initWithAssembly:self]; |
|
0 commit comments