Ejemplo n.º 1
0
        /// <summary>
        /// Static failure resolution constructor.
        /// </summary>
        public YodiiEngineResult(IConfigurationSolver solver, List <PluginData> blockingPlugins, List <ServiceData> blockingServices, YodiiEngine engine)
        {
            Debug.Assert(blockingPlugins != null || blockingServices != null, "At least one must not be null.");
            Debug.Assert(solver != null);
            Debug.Assert(engine != null);

            var allP = solver.AllPlugins.Select(p => new SolvedPluginSnapshot(p)).ToDictionary(p => p.PluginInfo);
            var allS = solver.AllServices.Select(s => new SolvedServiceSnapshot(s)).ToDictionary(s => s.ServiceInfo.ServiceFullName);

            _staticOnlyResultConfiguration = new StaticSolvedConfiguration(allP.Values.ToReadOnlyList(), allS.Values.ToReadOnlyList());

            var blkP = blockingPlugins == null
                            ? CKReadOnlyListEmpty <IStaticSolvedPlugin> .Empty
                            : blockingPlugins.Select(p => allP[p.PluginInfo]).ToReadOnlyList();

            _pluginCulprits = blkP.Select(ps => ps.PluginInfo).ToReadOnlyList();

            var blkS = blockingServices == null
                            ? CKReadOnlyListEmpty <IStaticSolvedService> .Empty
                            : blockingServices.Select(s => allS[s.ServiceInfo.ServiceFullName]).ToReadOnlyList();

            _serviceCulprits = blkS.Select(ss => ss.ServiceInfo).ToReadOnlyList();

            _engine = engine;
            _staticFailureResult = new StaticFailureResult(_staticOnlyResultConfiguration, blkP, blkS);
        }
Ejemplo n.º 2
0
        internal StaticFailureResult(IStaticSolvedConfiguration solvedConfiguration, IReadOnlyList <IStaticSolvedPlugin> blockedPlugins, IReadOnlyList <IStaticSolvedService> blockedServices)
        {
            Debug.Assert(solvedConfiguration != null && blockedPlugins != null && blockedServices != null);
            _blockingPlugins  = blockedPlugins;
            _blockingServices = blockedServices;
            _blockingItems    = _blockingServices.Cast <IStaticSolvedYodiiItem>().Concat(_blockingPlugins).ToReadOnlyList();

            _solvedConfiguration = solvedConfiguration;
        }
Ejemplo n.º 3
0
        internal StaticFailureResult( IStaticSolvedConfiguration solvedConfiguration, IReadOnlyList<IStaticSolvedPlugin> blockedPlugins, IReadOnlyList<IStaticSolvedService> blockedServices )
        {
            Debug.Assert( solvedConfiguration != null && blockedPlugins != null && blockedServices != null );
            _blockingPlugins = blockedPlugins;
            _blockingServices = blockedServices;
            _blockingItems = _blockingServices.Cast<IStaticSolvedYodiiItem>().Concat( _blockingPlugins ).ToReadOnlyList();

            _solvedConfiguration = solvedConfiguration;
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Static only success resolution constructor.
        /// </summary>
        public YodiiEngineResult( IConfigurationSolver solver, YodiiEngine engine )
        {
            Debug.Assert( solver != null );
            Debug.Assert( engine != null );

            var allP = solver.AllPlugins.Select( p => new SolvedPluginSnapshot( p ) ).ToDictionary( p => p.PluginInfo );
            var allS = solver.AllServices.Select( s => new SolvedServiceSnapshot( s ) ).ToDictionary( s => s.ServiceInfo.ServiceFullName );
            _staticOnlyResultConfiguration = new StaticSolvedConfiguration( allP.Values.ToReadOnlyList(), allS.Values.ToReadOnlyList() );
            _pluginCulprits = CKReadOnlyListEmpty<IPluginInfo>.Empty;
            _serviceCulprits = CKReadOnlyListEmpty<IServiceInfo>.Empty;
            _engine = engine;
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Static only success resolution constructor.
        /// </summary>
        public YodiiEngineResult(IConfigurationSolver solver, YodiiEngine engine)
        {
            Debug.Assert(solver != null);
            Debug.Assert(engine != null);

            var allP = solver.AllPlugins.Select(p => new SolvedPluginSnapshot(p)).ToDictionary(p => p.PluginInfo);
            var allS = solver.AllServices.Select(s => new SolvedServiceSnapshot(s)).ToDictionary(s => s.ServiceInfo.ServiceFullName);

            _staticOnlyResultConfiguration = new StaticSolvedConfiguration(allP.Values.ToReadOnlyList(), allS.Values.ToReadOnlyList());
            _pluginCulprits  = CKReadOnlyListEmpty <IPluginInfo> .Empty;
            _serviceCulprits = CKReadOnlyListEmpty <IServiceInfo> .Empty;
            _engine          = engine;
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Static failure resolution constructor.
        /// </summary>
        public YodiiEngineResult( IConfigurationSolver solver, List<PluginData> blockingPlugins, List<ServiceData> blockingServices, YodiiEngine engine )
        {
            Debug.Assert( blockingPlugins != null || blockingServices != null, "At least one must not be null." );
            Debug.Assert( solver != null );
            Debug.Assert( engine != null );

            var allP = solver.AllPlugins.Select( p => new SolvedPluginSnapshot( p ) ).ToDictionary( p => p.PluginInfo );
            var allS = solver.AllServices.Select( s => new SolvedServiceSnapshot( s ) ).ToDictionary( s => s.ServiceInfo.ServiceFullName );
            _staticOnlyResultConfiguration = new StaticSolvedConfiguration( allP.Values.ToReadOnlyList(), allS.Values.ToReadOnlyList() );

            var blkP = blockingPlugins == null
                            ? CKReadOnlyListEmpty<IStaticSolvedPlugin>.Empty
                            : blockingPlugins.Select( p => allP[p.PluginInfo] ).ToReadOnlyList();
            _pluginCulprits = blkP.Select( ps => ps.PluginInfo ).ToReadOnlyList();

            var blkS = blockingServices == null
                            ? CKReadOnlyListEmpty<IStaticSolvedService>.Empty
                            : blockingServices.Select( s => allS[s.ServiceInfo.ServiceFullName] ).ToReadOnlyList();
            _serviceCulprits = blkS.Select( ss => ss.ServiceInfo ).ToReadOnlyList();

            _engine = engine;
            _staticFailureResult = new StaticFailureResult( _staticOnlyResultConfiguration, blkP, blkS );
        }