public FormsManager(IPluginFinder pluginFinder, Func<IViewNavigator> regionNavigatorSupplier, FormExceptionHandler formExceptionHandler) { _RegionNavigatorSupplier = regionNavigatorSupplier; _FormExceptionHandler = formExceptionHandler; pluginFinder.RegisterCreatePluginsCallBack<IFormsProvider>(RegisterForms); }
public StoreConnectionStringProvider(IPluginFinder pluginFinder) { pluginFinder.RegisterCreatePluginsCallBack<IDataStoreRegistration>(registrations => { _StoreConnectionNames = registrations.ToDictionary(r => r.Type, r => r.ConnectionDetails); }); }
public MenuNavigator(IInfrastructureEventAggregator eventAggregator, IPluginFinder pluginFinder, IFormsManager formsManager) { _UnattachedMenus = new HashSet<KeyValuePair<string, IMenu>>(); _FormsManager = formsManager; pluginFinder.RegisterCreatePluginsCallBack<IEndPointProvider>(ProcessPlugins); eventAggregator.Subscribe<IApplicationInitializedEvent>((args) => ApplicationInitialized()); }
public PluginDataStoresManager(IPluginFinder plugInFinder, Func<Type, IDataStore> storeSupplier, Func<IModelViewStoresManager> modelViewStoresManagerFactory) : base(storeSupplier, modelViewStoresManagerFactory) { plugInFinder.RegisterCreatePluginsCallBack<IDataStoreRegistration>( (instances) => { DataStoreTypes = new List<Type>(instances.Select(plugIn => plugIn.Type)); }); }
public EndPointInitialization(IPluginFinder pluginFinder) { pluginFinder.RegisterCreatePluginsCallBack<IEndPointValidation>(plugins => { var validators = plugins .Where(p => (plugins.Count() == 1 || p.GetType() != typeof(NoEndPointValidation))); if (validators.Count() != 1) { throw new InvalidOperationException("Exactly one IEndPointValidation must be defined per application"); } _Validation = validators.First(); TryInitialize(); }); pluginFinder.RegisterCreatePluginsCallBack<IEndPointProvider>(plugins => { _Providers = plugins; TryInitialize(); }); }