Exemple #1
0
        public static bool Rename(this DirectoryInfo self, string newName)
        {
            var target = self.Parent.GetChildDir(newName);

            AssertV2.IsFalse(target.IsNotNullAndExists(), "Already exists: target=" + target.FullPath());
            return(self.MoveToV2(target));
        }
Exemple #2
0
 private static bool DeleteV2(FileSystemEntry self, Func <bool> deleteAction)
 {
     if (self.IsNotNullAndExists())
     {
         var res = deleteAction();
         AssertV2.IsFalse(!res || self.Exists, "Still exists: " + self);
         return(res);
     }
     return(false);
 }
Exemple #3
0
 private static bool DeleteV2(FileSystemInfo self, Func <bool> deleteAction)
 {
     if (self != null && self.ExistsV2())
     {
         var res = deleteAction();
         self.Refresh();
         AssertV2.IsFalse(!res || self.ExistsV2(), "Still exists: " + self.FullName);
         return(res);
     }
     return(false);
 }
Exemple #4
0
 private static bool DeleteV2(FileSystemInfo self, Action deleteAction)
 {
     if (self != null && self.Exists)
     {
         deleteAction();
         self.Refresh();
         AssertV2.IsFalse(self.Exists, "Still exists: " + self.FullName);
         return(true);
     }
     return(false);
 }
Exemple #5
0
 private static object MapViaJsonInto(object objectToDeepCopy, Type targetType)
 {
     AssertV2.IsFalse(objectToDeepCopy is Task, "Tried to serialize a Task, missing (await ..)?!");
     if (objectToDeepCopy == null || objectToDeepCopy.GetType().IsPrimitiveOrSimple())
     {
         return(objectToDeepCopy);
     }
     using (var stream = new MemoryStream()) {
         using (var writer = new StreamWriter(stream, encoding: Encoding.UTF8, bufferSize: 1024, leaveOpen: true)) {
             var serializer = JsonSerializer.Create(JsonNetSettings.defaultSettings);
             serializer.Serialize(writer, objectToDeepCopy);
             writer.Flush();
             stream.Seek(0, SeekOrigin.Begin);
             using (var sr = new StreamReader(stream)) {
                 using (var jtr = new JsonTextReader(sr)) {
                     return(serializer.Deserialize(jtr, targetType));
                 }
             }
         }
     }
 }