示例#1
0
        /// <summary>
        /// Call this method first. This initializes everything that is
        /// necessary to run the application.
        /// </summary>
        /// <param name="MyMeta"></param>
        /// <param name="zeus"></param>
        public void Init(MyMeta.dbRoot MyMeta, Zeus.IZeusContext zeus, IZeusInput input, Dnp.Utils.Utils dnp, Dnp.Utils.ProgressDialog progressDialog)
        {
            // Initialize the ScriptSettings and save the input values from the MyGeneration form.
            try
            {
                _scriptSettings = ScriptSettings.InitInstance(input, MyMeta, dnp, _version);
                //_scriptSettings = new ScriptSettings(input, MyMeta, dnp, _version);
                _scriptSettings.SaveSettings();
            }
            catch (Exception ex)
            {
                if (ex.InnerException != null)
                {
                    throw new Exception("Error Saving ScriptSettings (inner): " + ex.InnerException.Message);
                }
                throw new Exception("Error Saving ScriptSettings: " + ex.Message + " - " + ex.StackTrace.ToString());
            }


            // Populate the RequestContext class with all the values
            // needed to be passed to every code generating class.
            RequestContext context = new RequestContext();

            context.Zeus           = zeus;                                           // Pass along the MyGeneration output context for saving files
            context.MyMeta         = MyMeta;                                         // Pass along the Database meta properties
            context.FileList       = _fileList;                                      // Start the ArrayList for printing the generated files
            context.ScriptSettings = _scriptSettings;                                // Store the saved form values
            context.Dialog         = new ProgressDialogWrapper(progressDialog);      // Get instance of Dialog wrapper
            context.Database       = MyMeta.Databases[_scriptSettings.DatabaseName]; // Get the selected database
            context.Utility        = new CommonUtility();                            // Get instance of helper utility

            _context = context;
        }
示例#2
0
 public ScriptSettings(IZeusInput input, MyMeta.dbRoot database, Dnp.Utils.Utils dnp, string version)
 {
     this._input = input;
     this._database = database;
     this._version = version;
     this._dnpUtils = dnp;
 }
示例#3
0
        private static void FillZeusInputRecursive(ZeusModule module, IZeusInput input, int depth)
        {
            if (!module.IsParentModule)
            {
                FillZeusInputRecursive(module.ParentModule, input, (depth + 1));
            }

            foreach (InputItem item in module.SavedItems)
            {
                input[item.VariableName] = item.DataObject;
            }

            if (depth == 0)
            {
                if (module.RootProject.DefaultSettingsOverride)
                {
                    Dictionary <string, string> ds = module.RootProject.GetDefaultSettings();

                    foreach (string key in ds.Keys)
                    {
                        input[key] = ds[key];
                    }
                }

                FillZeusInputWithUserOverridesRecursive(module, input);
            }
        }
示例#4
0
 protected void InitForm(dbRoot myMeta, IZeusInput input)
 {
     this.myMeta    = myMeta;
     this.zeusInput = input;
     InitializeComponent();
     this.GetSetting();
 }
		public _DotNetScriptTemplate(IZeusContext context)
		{
			this.context = context;
			this.input = context.Input;
			this.objects = context.Objects;
			this.output = context.Output;
		}
示例#6
0
 public _DotNetScriptTemplate(IZeusContext context)
 {
     this.context = context;
     this.input   = context.Input;
     this.objects = context.Objects;
     this.output  = context.Output;
 }
示例#7
0
 public ScriptSettings(IZeusInput input, MyMeta.dbRoot database, Dnp.Utils.Utils dnp, string version)
 {
     this._input    = input;
     this._database = database;
     this._version  = version;
     this._dnpUtils = dnp;
 }
示例#8
0
        public static ScriptSettings InitInstance(IZeusInput input, MyMeta.dbRoot database, Dnp.Utils.Utils dnp, string version)
        {
            if (_instance == null)
            {
                if (input == null)
                {
                    throw new ApplicationException("InitInstance input");
                }

                if (database == null)
                {
                    throw new ApplicationException("InitInstance database");
                }

                if (dnp == null)
                {
                    throw new ApplicationException("InitInstance dnp");
                }

                if (string.IsNullOrEmpty(version))
                {
                    throw new ApplicationException("InitInstance version");
                }

                _instance = new ScriptSettings(input, database, dnp, version);
            }
            return(_instance);
        }
示例#9
0
        /// <summary>
        /// Creates a new ZeusGuiContext object.
        /// </summary>
        public ZeusTemplateContext()
        {
            this._input   = new ZeusInput();
            this._output  = new ZeusOutput();
            this._gui     = new GuiController(this);
            this._objects = new Hashtable();

            this._objects["ui"] = _gui;
        }
示例#10
0
        /// <summary>
        /// Creates a new ZeusGuiContext object and defaults it's properties to the passed in objects.
        /// </summary>
        /// <param name="input">The ZeusInput object to pass into the template inteface segment.</param>
        /// <param name="gui">The GuiController object to use in the template inteface segment.</param>
        /// <param name="objects">A HashTable containing any other objects that need to be included in the template context.</param>
        public ZeusTemplateContext(IZeusInput input, /*IGuiController gui,*/ Hashtable objects)
        {
            this._input = input;
            //this._gui = gui;
            this._gui     = new GuiController(this);
            this._objects = objects;
            this._output  = new ZeusOutput();

            this._objects["ui"] = _gui;
        }
        private void ApplyOverrideData(IZeusInput input)
        {
            if (_applyOverrideDataDelegate != null)
            {
                _applyOverrideDataDelegate(input);
            }
#if DEBUG
            else
            {
                throw new Exception("ERROR - ApplyOverrideData not set!!");
            }
#endif
        }
示例#12
0
        private void ApplyOverrideData(IZeusInput input)
        {
            if (_applyOverrideDataDelegate != null)
            {
                _applyOverrideDataDelegate(input);
            }
#if DEBUG
            else
            {
                throw new Exception("ERROR - ApplyOverrideData not set!!");
            }
#endif
        }
示例#13
0
        private static void FillZeusInputRuntimeRecursive(ZeusModule module, IZeusInput input)
        {
            if (module.RootProject.DefaultSettingsOverride)
            {
                Dictionary <string, string> ds = module.RootProject.GetDefaultSettings();

                foreach (string key in ds.Keys)
                {
                    input[key] = ds[key];
                }
            }

            FillZeusInputWithUserOverridesRecursive(module, input);
        }
        public UIGenerationForm(dbRoot myMeta, IZeusInput zeusInput)
        {
            this.myMeta    = myMeta;
            this.zeusInput = zeusInput;

            InitializeComponent();
            UICodeGenerationConfig cg = this.Uiconfig;
            ArrayList al = new ArrayList();

            foreach (InputUIControl inputUIControl in cg.UIControlConfigs)
            {
                al.Add(inputUIControl.Name);
            }
            this.colInputType.Items.AddRange(al.ToArray());

            this.GetSetting();
        }
		public void Add(IZeusInput input) 
		{
			foreach (string varName in input.Keys) 
			{
				InputItem item;
				try 
				{
					item = new InputItem(varName, input[varName]);
					_hash[varName] = new InputItem(varName, input[varName]);
				}
				catch (Exception ex)
				{
					// This will happen if an unserializable type is in the input collection. 
					_hash[varName] = ex.Message;
				}
			}
		}
示例#16
0
 public void Add(IZeusInput input)
 {
     foreach (string varName in input.Keys)
     {
         InputItem item;
         try
         {
             item           = new InputItem(varName, input[varName]);
             _hash[varName] = new InputItem(varName, input[varName]);
         }
         catch (Exception ex)
         {
             // This will happen if an unserializable type is in the input collection.
             _hash[varName] = ex.Message;
         }
     }
 }
示例#17
0
        protected void InitForm(dbRoot myMeta, IZeusInput input)
        {
            try
            {
                this.myMeta = myMeta;

                zeusInput = input;

                InitializeComponent();


                GetSetting();

                InitInputType();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
示例#18
0
 public WebUIGenerateForm(dbRoot myMeta, IZeusInput input)
 {
     InitForm(myMeta, input);
 }
示例#19
0
		/// <summary>
		/// Creates a new ZeusGuiContext object.
		/// </summary>
		public ZeusTemplateContext() 
		{
			this._input = new ZeusInput();
			this._output = new ZeusOutput();
			this._gui = new GuiController(this);
			this._objects = new Hashtable();

			this._objects["ui"] = _gui;
		}
示例#20
0
 private static void FillZeusInputRecursive(ZeusModule module, IZeusInput input)
 {
     FillZeusInputRecursive(module, input, 0);
 }
示例#21
0
 public SavedTemplateInput(string objectName, IZeusTemplate template, IZeusInput input) : this(objectName, template)
 {
     _inputItems = new InputItemCollection(input);
 }
示例#22
0
		/// <summary>
		/// Creates a new ZeusGuiContext object and defaults it's properties to the passed in objects.
		/// </summary>
		/// <param name="input">The ZeusInput object to pass into the template inteface segment.</param>
		/// <param name="gui">The GuiController object to use in the template inteface segment.</param>
		/// <param name="objects">A HashTable containing any other objects that need to be included in the template context.</param>
		public ZeusTemplateContext(IZeusInput input, /*IGuiController gui,*/ Hashtable objects)
		{
			this._input = input;
            //this._gui = gui;
            this._gui = new GuiController(this);
			this._objects = objects;
			this._output = new ZeusOutput();

			this._objects["ui"] = _gui;
		}
示例#23
0
        private static void FillZeusInputWithUserOverridesRecursive(ZeusModule module, IZeusInput input)
        {
            if (!module.IsParentModule)
            {
                FillZeusInputWithUserOverridesRecursive(module.ParentModule, input);
            }

            foreach (InputItem item in module.UserSavedItems)
            {
                input[item.VariableName] = item.DataObject;
            }
        }
示例#24
0
        private static void FillZeusInputRuntimeRecursive(ZeusModule module, IZeusInput input)
        {
            if (module.RootProject.DefaultSettingsOverride)
            {
                Dictionary<string, string> ds = module.RootProject.GetDefaultSettings();

                foreach (string key in ds.Keys)
                {
                    input[key] = ds[key];
                }
            }

            FillZeusInputWithUserOverridesRecursive(module, input);
        }
        public void PopulateZeusContext(IZeusContext context)
        {
            DefaultSettings settings = new DefaultSettings();
            IZeusInput      input    = context.Input;

            if (!input.Contains("__version"))
            {
                Assembly ver = System.Reflection.Assembly.GetEntryAssembly();
                input["__version"] = ver.GetName().Version.ToString();
            }

            //-- BEGIN LEGACY VARIABLE SUPPORT -----
            if (!input.Contains("defaultTemplatePath"))
            {
                input["defaultTemplatePath"] = settings.DefaultTemplateDirectory;
            }
            if (!input.Contains("defaultOutputPath"))
            {
                input["defaultOutputPath"] = settings.DefaultOutputDirectory;
            }
            //-- END LEGACY VARIABLE SUPPORT -------

            if (!input.Contains("__defaultTemplatePath"))
            {
                input["__defaultTemplatePath"] = settings.DefaultTemplateDirectory;
            }

            if (!input.Contains("__defaultOutputPath"))
            {
                input["__defaultOutputPath"] = settings.DefaultOutputDirectory;
            }

            if (settings.DbDriver != string.Empty)
            {
                //-- BEGIN LEGACY VARIABLE SUPPORT -----
                if (!input.Contains("dbDriver"))
                {
                    input["dbDriver"] = settings.DbDriver;
                }
                if (!input.Contains("dbConnectionString"))
                {
                    input["dbConnectionString"] = settings.DomainOverride;
                }
                //-- END LEGACY VARIABLE SUPPORT -------

                if (!input.Contains("__dbDriver"))
                {
                    input["__dbDriver"] = settings.DbDriver;
                }

                if (!input.Contains("__dbConnectionString"))
                {
                    input["__dbConnectionString"] = settings.ConnectionString;
                }

                if (!input.Contains("__domainOverride"))
                {
                    input["__domainOverride"] = settings.DomainOverride;
                }

                if ((settings.DbTarget != string.Empty) && (!input.Contains("__dbTarget")))
                {
                    input["__dbTarget"] = settings.DbTarget;
                }

                if ((settings.DbTargetMappingFile != string.Empty) && (!input.Contains("__dbTargetMappingFileName")))
                {
                    input["__dbTargetMappingFileName"] = settings.DbTargetMappingFile;
                }

                if ((settings.LanguageMappingFile != string.Empty) && (!input.Contains("__dbLanguageMappingFileName")))
                {
                    input["__dbLanguageMappingFileName"] = settings.LanguageMappingFile;
                }

                if ((settings.Language != string.Empty) && (!input.Contains("__language")))
                {
                    input["__language"] = settings.Language;
                }

                if ((settings.UserMetaDataFileName != string.Empty) && (!input.Contains("__userMetaDataFileName")))
                {
                    input["__userMetaDataFileName"] = settings.UserMetaDataFileName;
                }
            }
        }
示例#26
0
 public void ApplyRuntimeOverrides(IZeusInput input)
 {
     FillZeusInputRuntimeRecursive(this, input);
 }
示例#27
0
 public bool Execute(IZeusInput input, IZeusOutput output, string code)
 {
     return(false);
 }
示例#28
0
 public _DotNetScriptGui(IZeusContext context)
 {
     this.context = context;
     this.input   = context.Input;
     this.objects = context.Objects;
 }
示例#29
0
        private void _ProcessMyMeta(IZeusContext context)
        {
            IZeusInput input  = context.Input;
            dbRoot     myMeta = null;

            if (context.Objects.Contains("MyMeta"))
            {
                myMeta = context.Objects["MyMeta"] as dbRoot;
            }

            if (myMeta != null)
            {
                if (!myMeta.IsConnected)
                {
                    string driver = null, connectionString = null;

                    if (input.Contains("__dbDriver"))
                    {
                        driver = input["__dbDriver"].ToString();
                    }

                    if (input.Contains("__dbConnectionString"))
                    {
                        connectionString = input["__dbConnectionString"].ToString();
                    }

                    if ((driver != null) && (connectionString != null))
                    {
                        myMeta.Connect(driver, connectionString);

                        if (input.Contains("__showDefaultDatabaseOnly"))
                        {
                            myMeta.ShowDefaultDatabaseOnly = ((string)input["__showDefaultDatabaseOnly"] == bool.TrueString);
                        }

                        if (input.Contains("__dbTargetMappingFileName"))
                        {
                            myMeta.DbTargetMappingFileName = (string)input["__dbTargetMappingFileName"];
                        }

                        if (input.Contains("__dbLanguageMappingFileName"))
                        {
                            myMeta.LanguageMappingFileName = (string)input["__dbLanguageMappingFileName"];
                        }

                        if (input.Contains("__userMetaDataFileName"))
                        {
                            myMeta.UserMetaDataFileName = (string)input["__userMetaDataFileName"];
                        }

                        if (input.Contains("__dbTarget"))
                        {
                            myMeta.DbTarget = (string)input["__dbTarget"];
                        }

                        if (input.Contains("__language"))
                        {
                            myMeta.Language = (string)input["__language"];
                        }

                        if (input.Contains("__domainOverride"))
                        {
                            myMeta.DomainOverride = (bool)input["__domainOverride"];
                        }
                    }
                }
            }
        }
 public BaseDatabaseSelectForm(dbRoot myMeta, IZeusInput input)
 {
     this.myMeta    = myMeta;
     this.zeusInput = input;
     InitializeComponent();
 }
示例#31
0
		public ZeusContext(IZeusInput input, /*IGuiController gui,*/ Hashtable objects) : base(input, /*gui,*/ objects) {}
示例#32
0
        private static void FillZeusInputRecursive(ZeusModule module, IZeusInput input, int depth)
        {
            if (!module.IsParentModule)
            {
                FillZeusInputRecursive(module.ParentModule, input, (depth + 1));
            }

            foreach (InputItem item in module.SavedItems)
            {
                input[item.VariableName] = item.DataObject;
            }

            if (depth == 0) 
            {
                if (module.RootProject.DefaultSettingsOverride)
                {
                    Dictionary<string, string> ds = module.RootProject.GetDefaultSettings();

                    foreach (string key in ds.Keys)
                    {
                        input[key] = ds[key];
                    }
                }

                FillZeusInputWithUserOverridesRecursive(module, input);
            }
        }
示例#33
0
 public InputItemCollection(IZeusInput input)
 {
     this.Add(input);
 }
		public bool Execute(IZeusInput input, IZeusOutput output, string code)
		{
			return false;
		}
示例#35
0
 private static void FillZeusInputRecursive(ZeusModule module, IZeusInput input)
 {
     FillZeusInputRecursive(module, input, 0);
 }
示例#36
0
        public static ScriptSettings InitInstance(IZeusInput input, MyMeta.dbRoot database, Dnp.Utils.Utils dnp, string version)
        {
            if (_instance == null)
            {
                if (input == null)
                    throw new ApplicationException("InitInstance input");

                if (database == null)
                    throw new ApplicationException("InitInstance database");

                if (dnp == null)
                    throw new ApplicationException("InitInstance dnp");

                if (string.IsNullOrEmpty(version))
                    throw new ApplicationException("InitInstance version");

                _instance = new ScriptSettings(input, database, dnp, version);
            }
            return _instance;
        }
示例#37
0
        private static void FillZeusInputWithUserOverridesRecursive(ZeusModule module, IZeusInput input)
        {
            if (!module.IsParentModule)
            {
                FillZeusInputWithUserOverridesRecursive(module.ParentModule, input);
            }

            foreach (InputItem item in module.UserSavedItems)
            {
                input[item.VariableName] = item.DataObject;
            }
        }
示例#38
0
 public ZeusContext(IZeusInput input, /*IGuiController gui,*/ Hashtable objects) : base(input, /*gui,*/ objects)
 {
 }
示例#39
0
 public void ApplyRuntimeOverrides(IZeusInput input)
 {
     FillZeusInputRuntimeRecursive(this, input);
 }
		public _DotNetScriptGui(IZeusContext context)
		{
			this.context = context;
			this.input = context.Input;
			this.objects = context.Objects;
		}
		public SavedTemplateInput(string objectName, IZeusTemplate template, IZeusInput input) : this(objectName, template)
		{
			_inputItems = new InputItemCollection(input);
		}
示例#42
0
 public NHibernateFrameworkTableCodeGenerateForm(dbRoot myMeta, IZeusInput input)
 {
     InitForm(myMeta, input);
     this.propertyGridSetting.CollapseAllGridItems();
 }
 public NHibernateFrameworkWebUIGenerateForm(dbRoot myMeta, IZeusInput input)
 {
     InitForm(myMeta, input);
 }
		public InputItemCollection(IZeusInput input) 
		{
			this.Add(input);
		}