/// <summary> /// Generates default setting files in directory. /// </summary> /// <param name="directory">Directory to use for creating new files.</param> public static void Create(string directory) { var altitudeMapRules = new AltitudeMapRules(); altitudeMapRules.Default(); RulesIO.Save(directory + "\\GenerateAltitudeRules", altitudeMapRules); var erosionMapRules = new ErosionMapRules(); erosionMapRules.Default(); RulesIO.Save(directory + "\\GenerateErosionRules", erosionMapRules); var generateRules = new GenerateRules(); generateRules.Default(); RulesIO.Save(directory + "\\GenerationRules", generateRules); var moveRules = new MoveRules(); moveRules.Default(); RulesIO.Save(directory + "\\MoveRules", moveRules); var rainfallMapRules = new RainfallMapRules(); rainfallMapRules.Default(); RulesIO.Save(directory + "\\RainfallMapRules", rainfallMapRules); var plateData = new PlateData(); plateData.Default(); PlateIO.Save(directory + "\\PlateData", plateData); }
/// <summary> /// Genera el schema de la base de datos seleccionada y devuelve un objeto Database. /// </summary> public Database Process(SqlOption filters) { string error = ""; try { Database databaseSchema = new Database(); //tables.OnTableProgress += new Progress.ProgressHandler(tables_OnTableProgress); databaseSchema.Options = filters; databaseSchema.Name = this.Name; databaseSchema.Info = (new GenerateDatabase(connectionString, filters)).Get(databaseSchema); Thread t1 = new Thread(delegate() { try { GenerateRules.Fill(databaseSchema, connectionString); GenerateTables.Fill(databaseSchema, connectionString, messages); GenerateUserDataTypes.Fill(databaseSchema, connectionString, messages); GenerateXMLSchemas.Fill(databaseSchema, connectionString); GenerateSchemas.Fill(databaseSchema, connectionString); GenerateUsers.Fill(databaseSchema, connectionString); } catch (Exception ex) { error = ex.StackTrace; } }); Thread t2 = new Thread(delegate() { try { GeneratePartionFunctions.Fill(databaseSchema, connectionString); GenerateFileGroups.Fill(databaseSchema, connectionString); GenerateDDLTriggers.Fill(databaseSchema, connectionString); GenerateSynonyms.Fill(databaseSchema, connectionString); GenerateAssemblies.Fill(databaseSchema, connectionString); } catch (Exception ex) { error = ex.StackTrace; } }); Thread t3 = new Thread(delegate() { try { GenerateStoreProcedures.Fill(databaseSchema, connectionString); GenerateViews.Fill(databaseSchema, connectionString); GenerateFunctions.Fill(databaseSchema, connectionString); } catch (Exception ex) { error = ex.StackTrace; } }); t1.Start(); t2.Start(); t3.Start(); t1.Join(); t2.Join(); t3.Join(); if (String.IsNullOrEmpty(error)) { /*Las propiedades extendidas deben ir despues de haber capturado el resto de los objetos de la base*/ GenerateExtendedProperties.Fill(databaseSchema, connectionString, messages); databaseSchema.BuildDependency(); return(databaseSchema); } else { throw new SchemaException(error); } } catch { throw; } }