public Assembly GetDaoAssembly(DirectoryInfo rootDir, string schemaName, string fileExtension = "*.yaml") { YamlSchema yamlSchema = YamlSchemaGenerator.GenerateYamlSchema(rootDir, fileExtension); this.DeserializationFailures = yamlSchema.Failures; Subscribe(yamlSchema); DynamicYamlTypes = yamlSchema.GetDynamicTypes(); AddTypes(DynamicYamlTypes.ToArray()); return(GetDaoAssembly()); }
public YamlSchema GenerateYamlSchema(DirectoryInfo yamlRoot, string fileExtension = "*.yaml") { YamlSchema yamlSchema = new YamlSchema(yamlRoot); this.Subscribe(yamlSchema); FileInfo[] yamlFiles = yamlRoot.GetFiles(fileExtension, SearchOption.AllDirectories); if (yamlFiles.Length > 0) { FireEvent(FilesFound, new YamlEventArgs { Files = yamlFiles }); yamlSchema.AddFiles(yamlFiles.ToList()); FireEvent(SchemaGenerationComplete, new YamlEventArgs { Schema = yamlSchema, Files = yamlFiles }); } return(yamlSchema); }