/// <summary> /// Trata el final del proceso /// </summary> private void TreatEndProcess(AbstractTask processor, EventArguments.EndProcessEventArgs evntArgs) { // Elimina el procesador de la cola Queue.Remove(processor); // Lanza el evento de fin de proceso EndProcess?.Invoke(processor, evntArgs); }
/// <summary> /// Genera un sitio Web a partir de los datos de un archivo de proyecto /// </summary> public void Generate() { Steps.CompilerData compilerData = new Steps.CompilerData(this); // Limpia el directorio de salida LibCommonHelper.Files.HelperFiles.KillPath(PathTarget); // 1.- Ejecuta el paso de carga de los archivos RaiseEventProgress(1, MaxSteps, "Cargando archivos"); new Steps.FilesSteps.StepLoadFilesProcessor(this, compilerData).Process(); // 2.- Ejecuta el paso de copia inicial de los archivos RaiseEventProgress(2, MaxSteps, "Copiando archivos"); new Steps.FilesSteps.StepCopyProcessor(this, compilerData).Process(); // 3.- Ejecuta el paso de compilación de archivos SmallCss RaiseEventProgress(3, MaxSteps, "Compilando SmallCss"); new Steps.AdditionalSteps.StepCompileScssProcessor(this, compilerData).Process(); // 4.- Ejecuta el paso de compilación corta de los documentos RaiseEventProgress(4, MaxSteps, "Compilando contenido corto de las páginas"); new Steps.PagesSteps.StepPagesPrecompileProcessor(this, compilerData).Process(); // 5.- Ejecuta el paso de carga secciones y plantilla RaiseEventProgress(5, MaxSteps, "Cargando secciones y plantillas"); new Steps.SectionSteps.StepLoadSectionsProcessor(this, compilerData).Process(); // 6.- Ejecuta el paso de compilación de las secciones Rss RaiseEventProgress(6, MaxSteps, "Compilando secciones de noticias"); new Steps.SectionSteps.StepSectionsNewsProcessor(this, compilerData).Process(); // 7.- Ejecuta el paso de compilación de las secciones Web RaiseEventProgress(7, MaxSteps, "Compilando secciones del sitio"); new Steps.SectionSteps.StepSectionsWebProcessor(this, compilerData).Process(); // 8.- Ejecuta el paso de compilación de las categorías RaiseEventProgress(8, MaxSteps, "Compilando páginas de categorías"); new Steps.CategoriesSteps.StepCategoriesCompileProcessor(this, compilerData).Process(); // 9.- Ejecuta el paso de compilación de los mapas del sitio RaiseEventProgress(9, MaxSteps, "Compilando mapas del sitio"); new Steps.CategoriesSteps.StepSitemapCompileProcessor(this, compilerData).Process(); // 10.- Ejecuta el paso de compilación de las etiquetas RaiseEventProgress(10, MaxSteps, "Compilando etiquetas"); new Steps.CategoriesSteps.StepTagsCompileProcessor(this, compilerData).Process(); // 11.- Ejecuta el paso de compilación de las páginas RaiseEventProgress(11, MaxSteps, "Compilando páginas"); new Steps.PagesSteps.StepPagesCompileProcessor(this, compilerData).Process(); // 12.- Ejecuta el paso de creación de Rss (antes del postproceso porque // utiliza los archivos compilados en corto que se borran en el siguiente paso) RaiseEventProgress(12, MaxSteps, "Creando archivos RSS"); new Steps.RssSteps.StepRssProcessor(this, compilerData).Process(); // 13.- Ejecuta el paso de postproceso RaiseEventProgress(13, MaxSteps, "Postproceso de páginas"); new Steps.PagesSteps.StepPagesPostCompileProcessor(this, compilerData).Process(); // 14.- Ejecuta el paso de creación de SiteMap RaiseEventProgress(14, MaxSteps, "Creando sitemap"); new Steps.SitemapSteps.StepSitemapProcessor(this, compilerData).Process(); // Lanza el evento de fin de proceso EndProcess?.Invoke(this, EventArgs.Empty); }
/// <summary> /// Lanza un evento de fin de proceso /// </summary> protected void RaiseEventEndProcess(string message, System.Collections.Generic.List <string> errors) { EndProcess?.Invoke(this, new EventArguments.EndProcessEventArgs(message, errors)); }