Пример #1
0
        public IZeusSavedInput ExecuteTemplateAndCollectInput(IZeusContext context, string templatePath)
        {
            var template       = new ZeusTemplate(templatePath);
            var collectedInput = new ZeusSavedInput();

            DefaultSettings.Instance.PopulateZeusContext(context);
            template.ExecuteAndCollect(context, DefaultSettings.Instance.ScriptTimeout, collectedInput.InputData.InputItems);
            collectedInput.Save();

            return(collectedInput);
        }
Пример #2
0
        public IZeusSavedInput ExecuteTemplateAndCollectInput(IZeusContext context, string templatePath)
        {
            ZeusTemplate template = new ZeusTemplate(templatePath);
            ZeusSavedInput collectedInput = new ZeusSavedInput();
            DefaultSettings settings = DefaultSettings.Instance;

            settings.PopulateZeusContext(context);
            template.ExecuteAndCollect(context, settings.ScriptTimeout, collectedInput.InputData.InputItems);
            collectedInput.Save();

            return collectedInput;
        }
Пример #3
0
        private void _ProcessTemplate()
        {
            ZeusTemplate   template       = this._argmgr.Template;
            ZeusSavedInput savedInput     = this._argmgr.SavedInput;
            ZeusSavedInput collectedInput = this._argmgr.InputToSave;
            ZeusContext    context        = new ZeusContext();

            context.Log = _log;
            DefaultSettings settings;

            this._log.Write("Executing: " + template.Title);
            try
            {
                if (savedInput != null)
                {
                    context.Input.AddItems(savedInput.InputData.InputItems);
                    template.Execute(context, this._argmgr.Timeout, true);
                }
                else if (collectedInput != null)
                {
                    settings = DefaultSettings.Instance;
                    settings.PopulateZeusContext(context);
                    template.ExecuteAndCollect(context, this._argmgr.Timeout, collectedInput.InputData.InputItems);
                    collectedInput.Save();
                }
                else
                {
                    settings = DefaultSettings.Instance;
                    settings.PopulateZeusContext(context);
                    template.Execute(context, this._argmgr.Timeout, false);
                }

                if (this._argmgr.PathOutput != null)
                {
                    StreamWriter writer = File.CreateText(this._argmgr.PathOutput);
                    writer.Write(context.Output.text);
                    writer.Flush();
                    writer.Close();
                }
                else
                {
                    if (!_argmgr.IsSilent)
                    {
                        Console.WriteLine(context.Output.text);
                    }
                }
            }
            catch (Exception ex)
            {
                this._log.Write(ex);
                this._log.Write("Template execution failed.");
            }

            if (context != null && this._argmgr.InternalUseOnly)
            {
                foreach (string file in context.Output.SavedFiles)
                {
                    this._log.Write("[GENERATED_FILE]" + file);
                }
            }
        }