public static OneDriveStorageProviderFile FromJSON( JObject fileJSON, string path) { string name = fileJSON["name"].Value <string>(); bool isFolder = fileJSON.ContainsKey("folder"); string sha1Hash = isFolder ? String.Empty : fileJSON["file"]["hashes"]["sha1Hash"].Value <string>(); DateTime lastModified = fileJSON["fileSystemInfo"]["lastModifiedDateTime"].Value <DateTime>(); switch (lastModified.Kind) { case DateTimeKind.Unspecified: { //incorrect date time kind throw new InvalidOperationException(); } case DateTimeKind.Local: { lastModified = lastModified.ToUniversalTime(); break; } } return(CloudStorageProviderFileBase.Create <OneDriveStorageProviderFile>( name, isFolder, path, !isFolder ? sha1Hash : null, !isFolder ? lastModified : new Nullable <DateTime>())); }
public static DropboxStorageProviderFile FromMetadata(Metadata metaData) { return(CloudStorageProviderFileBase.Create <DropboxStorageProviderFile>( metaData.Name, metaData.IsFolder, metaData.PathLower, metaData.IsFile ? metaData.AsFile.ContentHash : null, metaData.IsFile ? metaData.AsFile.ClientModified : new Nullable <DateTime>())); }