private void Compose() { _logger.Info("Adapter Service is looking for a plugin"); CompositionContainer container = null; try { string codebase = AppDomain.CurrentDomain.BaseDirectory; var pluginAssembly = ConfigurationManager.AppSettings["pluginAssembly"]; var catalog = new SafeDirectoryCatalog(codebase, pluginAssembly); container = new CompositionContainer(catalog); container.ComposeParts(this); PlatformConnectorInstance = PlatformConnector; } catch (CompositionException ex) { foreach (var error in ex.Errors) { _logger.Fatal("Error when loading plugin", error.Exception); } } catch (ReflectionTypeLoadException ex) { foreach (var error in ex.LoaderExceptions) { _logger.Fatal("Error when searching for plugin", error); } } catch (Exception ex) { _logger.Fatal("Error when loading plugin", ex); } finally { if (container != null) { container.Dispose(); } } }
private void Compose() { _logger.Info("Adapter Service is looking for a plugin"); CompositionContainer container = null; try { string codebase = AppDomain.CurrentDomain.BaseDirectory; var pluginAssembly = ConfigurationManager.AppSettings["pluginAssembly"]; var catalog = new SafeDirectoryCatalog(codebase, pluginAssembly); container = new CompositionContainer(catalog); container.ComposeParts(this); } catch (CompositionException ex) { foreach (var error in ex.Errors) { _logger.Fatal("Error when loading plugin", error.Exception); } } catch (ReflectionTypeLoadException ex) { foreach (var error in ex.LoaderExceptions) { _logger.Fatal("Error when searching for plugin", error); } } catch (Exception ex) { _logger.Fatal("Error when loading plugin", ex); } finally { if (container != null) { container.Dispose(); } } }