コード例 #1
0
        /// <summary>
        /// Uploads a book for publishing to the bloomharvest bucket.
        /// </summary>
        /// <param name="downloadUrl">Precondition: The URL should not be encoded.</param>
        /// <param name="downloadBookDir"></param>
        private void UploadBook(string downloadUrl, string downloadBookDir)
        {
            // ENHANCE: Maybe you can delete some files that you don't need out of here.

            RenameFilesForHarvestUpload(downloadBookDir);
            var    components           = new S3UrlComponents(downloadUrl);
            string bucketLocationSuffix = $"{components.Submitter}/{components.BookGuid}/bloomdigital";

            _s3UploadClient.UploadDirectory(downloadBookDir, bucketLocationSuffix);
        }
コード例 #2
0
        public void TestConstruction()
        {
            string url        = "https://s3.amazonaws.com/BloomLibraryBooks-Sandbox/[email protected]/b227733c-d902-413c-b12d-59b43e423270/Cricket and Grasshopper/";
            var    components = new S3UrlComponents(url);

            Assert.AreEqual("https", components.Protocol, "Protocol should match");
            Assert.AreEqual("s3.amazonaws.com", components.Domain, "Domain should match");
            Assert.AreEqual("BloomLibraryBooks-Sandbox", components.Bucket, "Bucket should match");
            Assert.AreEqual("*****@*****.**", components.Submitter, "Uploader should match");
            Assert.AreEqual("b227733c-d902-413c-b12d-59b43e423270", components.BookGuid, "GUID should match");
            Assert.AreEqual("Cricket and Grasshopper", components.BookTitle, "Title should match");
        }