Beispiel #1
0
        public void Upload(IEnumerable <File> release, ReleaseManifestDTO.Status statusOfRelease)
        {
            if (release == null)
            {
                throw new ArgumentNullException(nameof(release));
            }

            if (statusOfRelease == ReleaseManifestDTO.Status.Invalid)
            {
                throw new ArgumentException($"Invalid Status: {statusOfRelease}");
            }

            ReleaseManifestDTO manifest = generateNewManifest(release, statusOfRelease);

            var toUpload = new ReleaseDTO(manifest, release);

            Upload(toUpload);
        }
Beispiel #2
0
        private ReleaseManifestDTO generateNewManifest(IEnumerable <File> release, ReleaseManifestDTO.Status statusOfRelease)
        {
            //creating the release requires the latest version ID.

            //The FTPclient will be pointing to the remote server.
            //At some point in the future, we will want a per-domain manifest to obtain this infomration quickly.

            ReleaseManifestDTO toReturn = new ReleaseManifestDTO();

            toReturn.NumberOfFiles = release.Count();
            toReturn.ReleaseStatus = statusOfRelease;

            //TODO: Determine the Hash
            //toReturn.Hash;
            toReturn.Version = this.getNextVersionNumber();



            return(toReturn);
        }