示例#1
0
        public static R1Package AsR1Package(string filePath)
        {
            var pkg = new R1Package();
            var inf = new FileInfo(filePath);

            if (!inf.Exists)
            {
                return(null);
            }

            pkg.FileName      = inf.Name;
            pkg.FileSize      = inf.Length;
            pkg.LatestVersion = inf.FileVersion();
            pkg.LatestHash    = inf.SHA1ForFile();
            pkg.FullPathOrURL = filePath;

            return(pkg);
        }
示例#2
0
        public async Task <bool> UploadInParts(R1Package localPkg, double maxVolumeSizeMB)
        {
            var tmpCopy = CopyToTemp(localPkg.FullPathOrURL);

            _package   = localPkg;
            _partPaths = await SevenZipper1.Compress(tmpCopy, null, maxVolumeSizeMB, ".data");

            _pkgParts = new List <R1PackagePart>();

            for (int i = 0; i < _partPaths.Count; i++)
            {
                var ok = await UploadPartByIndex(i);

                if (!ok)
                {
                    return(false);
                }
            }
            return(true);
        }
示例#3
0
 public Task <bool> Edit(R1Package remotePkg, string versionChanges)
 {
     throw new NotImplementedException();
 }
示例#4
0
 public void Initialize(R1Package remotePkg)
 {
     Package = remotePkg;
     RefreshCmd.ExecuteIfItCan(null);
 }