public ShadowNodeContent(ShadowFile shadowFile, IFile file, IFileSystem tempFileSystem) { var buffer = new StringBuilder(file.Address.Uri.Length * 3); this.shadowFile = shadowFile; this.tempFileSystem = tempFileSystem; this.file = tempFileSystem.ResolveFile(GenerateName()); buffer.Append(ComputeHash(file.Address.Uri).TrimRight('=')); var value = (string)file.Address.QueryValues["length"]; if (value != null) { this.targetLength = Convert.ToInt64(value); buffer.Append('_').Append(value); } value = (string)file.Address.QueryValues["md5sum"]; if (value != null) { this.targetMd5 = Convert.FromBase64String(value); buffer.Append('_').Append(value); } value = (string)file.Address.QueryValues["creationtime"]; if (value != null) { this.hasCreationTime = true; this.creationTime = Convert.ToDateTime(value); buffer.Append('_').Append(this.creationTime.Ticks.ToString()); } value = (string)file.Address.QueryValues["writetime"]; if (value != null) { this.hasLastWriteTime = true; this.lastWriteTime = Convert.ToDateTime(value); buffer.Append('_').Append(this.lastWriteTime.Ticks.ToString()); } value = buffer.ToString(); }
public ShadowNodeContent(ShadowFile shadowFile, IFile file, IFileSystem tempFileSystem) { var buffer = new StringBuilder(file.Address.Uri.Length * 3); this.shadowFile = shadowFile; this.tempFileSystem = tempFileSystem; this.file = tempFileSystem.ResolveFile(GenerateName()); buffer.Append(ComputeHash(file.Address.Uri).TrimRight('=')); var value = (string)file.Address.QueryValues["length"]; if (value != null) { this.targetLength = Convert.ToInt64(value); buffer.Append('_').Append(value); } value = (string)file.Address.QueryValues["md5sum"]; if (value != null) { this.targetMd5 = Convert.FromBase64String(value); buffer.Append('_').Append(value); } value = (string)file.Address.QueryValues["creationtime"]; if (value != null) { this.hasCreationTime = true; this.creationTime = Convert.ToDateTime(value); buffer.Append('_').Append(this.creationTime.Ticks.ToString()); } value = (string)file.Address.QueryValues["writetime"]; if (value != null) { this.hasLastWriteTime = true; this.lastWriteTime = Convert.ToDateTime(value); buffer.Append('_').Append(this.lastWriteTime.Ticks.ToString()); } value = buffer.ToString(); }