Esempio n. 1
0
        public async Task <AddFileResult> AddFile(string fileFullPath, IFileHash fileHash, FileSize fileSize, DateTime dateTime, ConflictResolver?conflictResolver)
        {
            var res = await new MobAddFileRequest(HttpSettings, Authent, _metaServer.Value.Url,
                                                  fileFullPath, fileHash.Hash.Value, fileSize, dateTime, conflictResolver)
                      .MakeRequestAsync();

            return(res.ToAddFileResult());
        }
Esempio n. 2
0
        public File(string fullPath, long size, IFileHash hash = null)
        {
            FullPath    = fullPath;
            ServiceInfo = FilenameServiceInfo.Parse(WebDavPath.Name(fullPath));

            _originalSize = size;
            _hash         = hash;
        }
        public async Task <AddFileResult> AddFile(string fileFullPath, IFileHash fileHash, FileSize fileSize, DateTime dateTime, ConflictResolver?conflictResolver)
        {
            //var res = await new CreateFileRequest(Proxy, Authent, fileFullPath, fileHash, fileSize, conflictResolver)
            //    .MakeRequestAsync();
            //return res.ToAddFileResult();

            //using Mobile request because of supporting file modified time

            //TODO: refact, make mixed repo
            var req = await new MobAddFileRequest(HttpSettings, Authent, ShardManager.MetaServer.Url, fileFullPath, fileHash.Hash.Value, fileSize, dateTime, conflictResolver)
                      .MakeRequestAsync();

            var res = req.ToAddFileResult();

            return(res);
        }
Esempio n. 4
0
        public async Task <AddFileResult> AddFile(string fileFullPath, IFileHash fileHash, FileSize fileSize, DateTime dateTime,
                                                  ConflictResolver?conflictResolver)
        {
            var hash = (FileHashYad?)fileHash;

            var _ = new YaDCommonRequest(HttpSettings, (YadWebAuth)Authent)
                    .With(new YadGetResourceUploadUrlPostModel(fileFullPath, fileSize, hash?.HashSha256.Value, hash?.HashMd5.Value),
                          out YadResponseModel <ResourceUploadUrlData, ResourceUploadUrlParams> itemInfo)
                    .MakeRequestAsync().Result;

            var res = new AddFileResult
            {
                Path    = fileFullPath,
                Success = itemInfo.Data.Status == "hardlinked"
            };

            return(await Task.FromResult(res));
        }
Esempio n. 5
0
 public async Task <AddFileResult> AddFile(string fileFullPath, IFileHash fileHash, FileSize fileSize, DateTime dateTime, ConflictResolver?conflictResolver)
 {
     throw new NotImplementedException();
 }