using OpenDBDiff.Schema.Model; using OpenDBDiff.Schema.SQLServer.Generates.Model; namespace OpenDBDiff.Schema.SQLServer.Generates.Compare { internal class CompareTableType : CompareBase { protected override void DoUpdate(SchemaList originFields, TableType node) { if (node.Status != ObjectStatus.Drop) { TableType tablaOriginal = originFields[node.FullName]; (new CompareColumns()).GenerateDifferences(tablaOriginal.Columns, node.Columns); (new CompareConstraints()).GenerateDifferences(tablaOriginal.Constraints, node.Constraints); (new CompareIndexes()).GenerateDifferences(tablaOriginal.Indexes, node.Indexes); } } /*public static void GenerateDifferences(SchemaList originTables, SchemaList destinationTables) { MarkDrop(originTables, destinationTables); foreach (TableType node in destinationTables) { if (!originTables.Exists(node.FullName)) { node.Status = ObjectStatusType.CreateStatus; node.Parent = originTables.Parent; originTables.Add(node); } else { if (node.Status != ObjectStatusType.DropStatus) { TableType tablaOriginal = originTables[node.FullName]; CompareColumns.GenerateDifferences(tablaOriginal.Columns, node.Columns); CompareConstraints.GenerateDifferences(tablaOriginal.Constraints, node.Constraints); CompareIndexes.GenerateDifferences(tablaOriginal.Indexes, node.Indexes); } } } }*/ } }