public XsdResolveLinksComponent(BuildAssemblerCore assembler)
     : base(assembler)
 {
     var versionInfo = GetVersionInfo();
     var message = string.Format(CultureInfo.CurrentCulture, Resources.ComponentLogoFormatted, versionInfo.ProductName, versionInfo.ProductVersion, versionInfo.LegalCopyright);
     WriteMessage(MessageLevel.Info, message);
 }
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected MultiFormatOutputComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 3
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected IntelliSenseComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 4
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected ForEachComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 5
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected ShowMissingComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 6
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        /// <param name="copyComponentFactories">The list of available copy component factory components</param>
        protected CopyFromIndexComponent(BuildAssemblerCore buildAssembler,
          List<Lazy<ICopyComponentFactory, ICopyComponentMetadata>> copyComponentFactories) : base(buildAssembler)
        {
            this.copyComponentFactories = copyComponentFactories;
        }
Exemplo n.º 7
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected CopyFromFilesComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 8
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected SaveComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
            // No bounded capacity by default
            documentList = new BlockingCollection<KeyValuePair<string, XmlDocument>>();
        }
Exemplo n.º 9
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        /// <param name="generatorFactories">The list of available syntax generator factory components</param>
        protected SyntaxComponent(BuildAssemblerCore buildAssembler,
          List<Lazy<ISyntaxGeneratorFactory, ISyntaxGeneratorMetadata>> generatorFactories) : base(buildAssembler)
        {
            this.generatorFactories = generatorFactories;

            generatorLanguages = new HashSet<string>(StringComparer.OrdinalIgnoreCase);
            languageSet = new List<ISyntaxGeneratorMetadata>();
            languageOrder = new Dictionary<string, int>();

            // Generate a list of all possible language IDs for code snippets from the available generators
            codeSnippetLanguages = new Dictionary<string, ISyntaxGeneratorMetadata>(StringComparer.OrdinalIgnoreCase);

            foreach(var factory in generatorFactories)
            {
                codeSnippetLanguages[factory.Metadata.Id] = factory.Metadata;

                foreach(string alternateId in (factory.Metadata.AlternateIds ?? String.Empty).Split(
                  new[] { ',', ' ', '\t' }, StringSplitOptions.RemoveEmptyEntries))
                {
                    codeSnippetLanguages[alternateId] = factory.Metadata;
                }
            }
        }
Exemplo n.º 10
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected MSHCComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 11
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected $safeprojectname$Component(BuildAssemblerCore buildAssembler) : base(buildAssembler)
Exemplo n.º 12
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected SharedContentComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected LanguageSpecificTextComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 14
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected ExampleComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 15
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected IfThenComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 16
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected ResolveArtLinksComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected ResolveConceptualLinksComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected AdditionalHeaderResourcesComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 19
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected TransformComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 20
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected CodeBlockComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 21
0
        /// <summary>
        /// Main program entry point
        /// </summary>
        /// <param name="args">The command line arguments</param>
        /// <returns>Zero on success or one on failure</returns>
        public static int Main(string[] args)
        {
            int exitCode = 0;

            ConsoleApplication.WriteBanner();

            #region Read command line arguments, and setup config

            // Specify options
            OptionCollection options = new OptionCollection();
            options.Add(new SwitchOption("?", "Show this help page."));
            options.Add(new StringOption("config", "Specify a configuration file.", "configFilePath"));

            // Process options
            ParseArgumentsResult results = options.ParseArguments(args);

            // Process help option
            if(results.Options["?"].IsPresent)
            {
                Console.WriteLine("BuildAssembler [options] manifestFilename");
                options.WriteOptionSummary(Console.Out);
                return 1;
            }

            // check for invalid options
            if(!results.Success)
            {
                results.WriteParseErrors(Console.Out);
                return 1;
            }

            // Check for manifest
            if(results.UnusedArguments.Count != 1)
            {
                Console.WriteLine("You must supply exactly one manifest file.");
                return 1;
            }

            string manifest = results.UnusedArguments[0];

            // Load the configuration file
            XPathDocument configuration;

            try
            {
                if(results.Options["config"].IsPresent)
                    configuration = ConsoleApplication.GetConfigurationFile((string)results.Options["config"].Value);
                else
                    configuration = ConsoleApplication.GetConfigurationFile();
            }
            catch(IOException e)
            {
                ConsoleApplication.WriteMessage(LogLevel.Error, "The specified configuration file could not " +
                    "be loaded. The error message is: {0}", e.Message);
                return 1;
            }
            catch(XmlException e)
            {
                ConsoleApplication.WriteMessage(LogLevel.Error, "The specified configuration file is not " +
                    "well-formed. The error message is: {0}", e.Message);
                return 1;
            }
            #endregion

            // Create a build assembler instance to do the work.  Messages are logged to the console logger.
            BuildAssembler = new BuildAssemblerCore((lvl, msg) => ConsoleApplication.WriteMessage(lvl, msg));

            try
            {
                // Execute it using the given configuration and manifest
                BuildAssembler.Execute(configuration, manifest);
            }
            catch(Exception ex)
            {
                // Ignore aggregate exceptions where the inner exception is OperationCanceledException.
                // These are the result of logging an error message.
                if(!(ex is AggregateException) || !(ex.InnerException is OperationCanceledException))
                {
                    System.Diagnostics.Debug.WriteLine(ex);
                    ConsoleApplication.WriteMessage(LogLevel.Error, ex.GetExceptionMessage());
                }

                exitCode = 1;
            }
            finally
            {
                BuildAssembler.Dispose();
            }

            return exitCode;
        }
Exemplo n.º 22
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected BrandingComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 23
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected HxfGeneratorComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 24
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected SwitchComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 25
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected CloneComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 26
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="buildAssembler">A reference to the build assembler</param>
 protected PlatformsComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
 {
 }
Exemplo n.º 27
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected ValidateComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 28
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected SqlCopyFromIndexComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler, null)
        {
        }
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected SqlResolveReferenceLinksComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }
Exemplo n.º 30
0
        //=====================================================================

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="buildAssembler">A reference to the build assembler</param>
        protected DisplayComponent(BuildAssemblerCore buildAssembler) : base(buildAssembler)
        {
        }