Esempio n. 1
0
 private static void CheckRename(DataBase old, DataBase @new, DatabaseMetaChange metaChange)
 {
     if (!old.Name.Equals(@new.Name))
     {
         metaChange.Set(DatabaseChanges.Rename);
     }
 }
Esempio n. 2
0
 private static void CheckAddition(DataBase old, DataBase @new, DatabaseMetaChange metaChange)
 {
     if (old == null)
     {
         metaChange.Set(DatabaseChanges.Addition);
     }
 }
Esempio n. 3
0
 private static void CheckDeletion(DataBase old, DataBase @new, DatabaseMetaChange metaChange)
 {
     if (@new == null)
     {
         metaChange.Set(DatabaseChanges.Deletion);
     }
 }
Esempio n. 4
0
        /// <summary>
        /// Check for metadata changes
        /// </summary>
        /// <param name="old">Old version</param>
        /// <param name="new">New version</param>
        /// <returns>DatabaseMetaChange object</returns>
        private static DatabaseMetaChange DetectChanges(DataBase old, DataBase @new)
        {
            var metaChange = new DatabaseMetaChange(old, @new);

            CheckAddition(old, @new, metaChange);
            CheckDeletion(old, @new, metaChange);

            // Check if added or removed. If that is the case, a rename wouldn't make any sense.
            if (!metaChange.IsSet(DatabaseChanges.Addition | DatabaseChanges.Deletion))
            {
                CheckRename(old, @new, metaChange);
            }

            return(metaChange);
        }