コード例 #1
0
        /// <summary>
        /// Populates the module specific mount expanders from modules in the module configurations
        /// </summary>
        /// <param name="modules">the module configurations</param>
        /// <param name="moduleMountTables">the module mounts tables</param>
        /// <returns>true if the operations were performed successfully</returns>
        public bool PopulateModuleMounts(IEnumerable <IModuleConfiguration> modules, out IDictionary <ModuleId, MountsTable> moduleMountTables)
        {
            moduleMountTables = new Dictionary <ModuleId, MountsTable>();
            bool success = true;

            foreach (var module in modules)
            {
                if (module.Mounts.Count != 0)
                {
                    MountsTable moduleMountsTable = new MountsTable(this, module.ModuleId);
                    foreach (var mount in module.Mounts)
                    {
                        moduleMountsTable.AddResolvedMount(mount);
                    }

                    moduleMountTables[module.ModuleId] = moduleMountsTable;
                    success &= moduleMountsTable.CompleteInitialization();
                }
            }

            if (!success)
            {
                moduleMountTables = null;
            }

            return(success);
        }
コード例 #2
0
 private void AddConfigurationMounts(MountsTable mountsTable)
 {
     // Add configuration mounts
     foreach (var mount in Configuration.Mounts)
     {
         mountsTable.AddResolvedMount(mount, new LocationData(Configuration.Layout.PrimaryConfigFile, 0, 0));
     }
 }
コード例 #3
0
        private bool AddConfigurationMountsAndCompleteInitialization(LoggingContext loggingContext, MountsTable mountsTable)
        {
            // Add configuration mounts
            foreach (var mount in Configuration.Mounts)
            {
                mountsTable.AddResolvedMount(mount, new LocationData(Configuration.Layout.PrimaryConfigFile, 0, 0));
            }

            if (!mountsTable.CompleteInitialization())
            {
                Contract.Assume(loggingContext.ErrorWasLogged, "An error should have been logged after MountTable.CompleteInitialization()");
                return(false);
            }

            return(true);
        }