public Guid Id { get; set; }
+ //[Property(Unique = true, UniqueKey = "IX_FileState_ObjectID")]
+ [Property]
+ public string ObjectID { get; set; }
+
[Property(Unique = true, UniqueKey = "IX_FileState_FilePath")]
public string FilePath { get; set; }
[Property]
public FileStatus FileStatus { get; set; }
+ [Property]
+ public string ConflictReason { get; set; }
+
private string _checksum;
/// <summary>
}, null);
}
- public static FileState CreateFor(FileSystemInfo info)
+ public static FileState CreateFor(FileSystemInfo info,IStatusNotification notification)
{
- Contract.Requires(info!=null);
+ if(info==null)
+ throw new ArgumentNullException("info");
Contract.EndContractBlock();
if (info is DirectoryInfo)
Id = Guid.NewGuid()
};
-
- var shortHash = ((FileInfo)info).ComputeShortHash();
+
+ var shortHash = ((FileInfo)info).ComputeShortHash(notification);
var fileState = new FileState
{
FilePath = info.FullName,