X-Git-Url: https://code.grnet.gr/git/pithos-ms-client/blobdiff_plain/0af3141d74dcd7b7a75fcaa51414e52691c1f5fe..273614040943b8a64f711607b14be028245889ab:/trunk/Pithos.Core/IStatusKeeper.cs?ds=sidebyside diff --git a/trunk/Pithos.Core/IStatusKeeper.cs b/trunk/Pithos.Core/IStatusKeeper.cs index 080d898..b4f2163 100644 --- a/trunk/Pithos.Core/IStatusKeeper.cs +++ b/trunk/Pithos.Core/IStatusKeeper.cs @@ -13,7 +13,6 @@ namespace Pithos.Core { void SetFileOverlayStatus(string path,FileOverlayStatus status); void UpdateFileChecksum(string path, string checksum); - void RemoveFileOverlayStatus(string path); void SetFileStatus(string path, FileStatus status); FileStatus GetFileStatus(string path); void ClearFileStatus(string path); @@ -30,6 +29,7 @@ namespace Pithos.Core string BlockHash { get; set; } int BlockSize { get; set; } + void ChangeRoots(string oldPath, string newPath); } [ContractClassFor(typeof(IStatusKeeper))] @@ -38,34 +38,41 @@ namespace Pithos.Core public void SetFileOverlayStatus(string path, FileOverlayStatus status) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); + Contract.Requires(Path.IsPathRooted(path)); } public void UpdateFileChecksum(string path, string checksum) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); Contract.Requires(checksum!=null); + Contract.Requires(Path.IsPathRooted(path)); } - public void RemoveFileOverlayStatus(string path) + /* public void RemoveFileOverlayStatus(string path) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); - } + Contract.Requires(Path.IsPathRooted(path)); + }*/ public void RenameFileOverlayStatus(string oldPath, string newPath) { Contract.Requires(!String.IsNullOrWhiteSpace(oldPath)); + Contract.Requires(Path.IsPathRooted(oldPath)); Contract.Requires(!String.IsNullOrWhiteSpace(newPath)); + Contract.Requires(Path.IsPathRooted(newPath)); } public void SetFileStatus(string path, FileStatus status) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); + Contract.Requires(Path.IsPathRooted(path)); } public FileStatus GetFileStatus(string path) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); + Contract.Requires(Path.IsPathRooted(path)); return default(FileStatus); } @@ -73,6 +80,7 @@ namespace Pithos.Core public FileOverlayStatus GetFileOverlayStatus(string path) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); + Contract.Requires(Path.IsPathRooted(path)); return default(FileOverlayStatus); } @@ -80,7 +88,6 @@ namespace Pithos.Core public void ProcessExistingFiles(IEnumerable paths) { Contract.Requires(paths!=null); - } public void Stop() @@ -91,18 +98,21 @@ namespace Pithos.Core public void SetFileState(string path, FileStatus fileStatus, FileOverlayStatus overlayStatus) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); + Contract.Requires(Path.IsPathRooted(path)); } public void StoreInfo(string path, ObjectInfo objectInfo) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); - Contract.Requires(objectInfo!=null); + Contract.Requires(objectInfo!=null); + Contract.Requires(Path.IsPathRooted(path)); } public T GetStatus(string path, Func getter, T defaultValue) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); Contract.Requires(getter!=null); + Contract.Requires(Path.IsPathRooted(path)); return default(T); } @@ -111,17 +121,20 @@ namespace Pithos.Core { Contract.Requires(!String.IsNullOrWhiteSpace(path)); Contract.Requires(setter != null); + Contract.Requires(Path.IsPathRooted(path)); } public void SetNetworkState(string path, NetworkOperation operation) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); - Contract.Requires(Path.IsPathRooted(path)); + Contract.Requires(Path.IsPathRooted(path)); + Contract.Requires(Path.IsPathRooted(path)); } public NetworkOperation GetNetworkState(string path) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); + Contract.Requires(Path.IsPathRooted(path)); return default(NetworkOperation); } @@ -129,6 +142,7 @@ namespace Pithos.Core public void ClearFileStatus(string path) { Contract.Requires(!String.IsNullOrWhiteSpace(path)); + Contract.Requires(Path.IsPathRooted(path)); } public void SetPithosStatus(PithosStatus status) @@ -142,5 +156,12 @@ namespace Pithos.Core public abstract string BlockHash { get; set; } public abstract int BlockSize { get; set; } + public void ChangeRoots(string oldPath, string newPath) + { + Contract.Requires(!String.IsNullOrWhiteSpace(oldPath)); + Contract.Requires(Path.IsPathRooted(oldPath)); + Contract.Requires(!string.IsNullOrWhiteSpace(newPath)); + Contract.Requires(Path.IsPathRooted(newPath)); + } } }