From 3165ad78b177c8200264ce26ac18ad12545ec3de Mon Sep 17 00:00:00 2001 From: michael starke Date: Wed, 16 Dec 2015 12:53:18 +0100 Subject: [PATCH] More verbose error reporting in PluginManager --- MacPass/MPPluginManager.m | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/MacPass/MPPluginManager.m b/MacPass/MPPluginManager.m index ad7f7110..aa5d82c0 100644 --- a/MacPass/MPPluginManager.m +++ b/MacPass/MPPluginManager.m @@ -92,23 +92,34 @@ NSString *const MPPluginManagerPluginBundleIdentifiyerKey = @"MPPluginManagerPlu NSBundle *pluginBundle = [NSBundle bundleWithURL:pluginURL]; if(!pluginBundle) { + NSLog(@"Could not create bundle %@", pluginURL.path); continue; } NSError *error; if(![pluginBundle preflightAndReturnError:&error]) { - NSLog(@"%@", error.localizedDescription ); + NSLog(@"Preflight Error %@ %@", error.localizedDescription, error.localizedFailureReason ); continue; }; + + if(![pluginBundle loadAndReturnError:&error]) { + NSLog(@"Bunlde Loading Error %@ %@", error.localizedDescription, error.localizedFailureReason); + continue; + } if(![self _validateClass:pluginBundle.principalClass]) { + NSLog(@"Wrong principal Class."); continue; } MPPlugin *plugin = [[pluginBundle.principalClass alloc] initWithPluginManager:self]; if(plugin) { + NSLog(@"Loaded plugin instance %@", pluginBundle.principalClass); [[NSNotificationCenter defaultCenter] postNotificationName:MPPluginManagerWillLoadPlugin object:self userInfo:@{ MPPluginManagerPluginBundleIdentifiyerKey : plugin.identifier }]; [self.mutablePlugins addObject:plugin]; [[NSNotificationCenter defaultCenter] postNotificationName:MPPluginManagerDidLoadPlugin object:self userInfo:@{ MPPluginManagerPluginBundleIdentifiyerKey : plugin.identifier }]; } + else { + NSLog(@"Unable to instanciate instance of plugin class %@", pluginBundle.principalClass); + } } }