public async Task StartMigration() { try { if (!IsExistTransactionLogFile()) { await GetRootFromSource(); if (rootDirectory != null) { await CopyFilesFromCloudToLocal(); await cloud.DeleteAllFiles("root"); await Task.Delay(10000); await RevertToCloudFromLocal(); } } } catch (Exception e) { Console.WriteLine(e.StackTrace); throw new Exception(e.Message); } }