Exemplo n.º 1
0
        public static void CreateS3Folder(string folderName)
        {
            var client = new AmazonClient();

            using (client.S3Client)
            {
                var request = new PutObjectRequest();

                request.BucketName  = client.BucketName;
                request.Key         = string.Concat(folderName, "/");
                request.InputStream = new MemoryStream();
                client.S3Client.PutObject(request);
            }
            client = new AmazonClient();
            using (client.S3Client)
            {
                var request = new PutObjectRequest();

                request.BucketName  = client.BucketName;
                request.Key         = string.Concat(folderName, "/fulls/");
                request.InputStream = new MemoryStream();
                client.S3Client.PutObject(request);

                request = new PutObjectRequest();

                request.BucketName  = client.BucketName;
                request.Key         = string.Concat(folderName, "/thumbs/");
                request.InputStream = new MemoryStream();
                client.S3Client.PutObject(request);
            }
        }
Exemplo n.º 2
0
        public static Album GetAlbumImages(Album album)
        {
            var client     = new AmazonClient();
            var objectList = GetAllImages();

            foreach (S3Object image in objectList)
            {
                if (image.Key.Contains(album.Directory) && image.Size > 0)
                {
                    if (image.Key.Contains("fulls"))
                    {
                        album.FullImages.Add(image);
                    }
                    else if (image.Key.Contains("thumbs"))
                    {
                        album.ThumbImages.Add(image);
                    }
                }
                if (image.Key.Contains("Dashboard") && image.Key.Contains(album.Directory))
                {
                    album.DirectoryImage = image;
                }
            }
            return(album);
        }
Exemplo n.º 3
0
        public static void UploadS3Image(Image img, string s3Key)
        {
            string objectKey = s3Key;
            var    client    = new AmazonClient();

            using (client.S3Client)
            {
                GetPreSignedUrlRequest request = new GetPreSignedUrlRequest
                {
                    BucketName = client.BucketName,
                    Key        = objectKey,
                    Verb       = HttpVerb.PUT,
                    Expires    = DateTime.Now.AddMinutes(5)
                };

                string url = client.S3Client.GetPreSignedURL(request);

                HttpWebRequest httpRequest = WebRequest.Create(url) as HttpWebRequest;
                httpRequest.Method = "PUT";
                using (Stream dataStream = httpRequest.GetRequestStream())
                {
                    byte[] buffer = new byte[8000];
                    using (Stream image = ToStream(img, ImageFormat.Jpeg))
                    {
                        int bytesRead = 0;
                        while ((bytesRead = image.Read(buffer, 0, buffer.Length)) > 0)
                        {
                            dataStream.Write(buffer, 0, bytesRead);
                        }
                    }
                }

                HttpWebResponse response = httpRequest.GetResponse() as HttpWebResponse;
            }
        }
Exemplo n.º 4
0
        public static List <S3Object> GetAllImages()
        {
            var objectList = new List <S3Object>();
            var client     = new AmazonClient();

            using (client.S3Client)
            {
                ListObjectsRequest request = new ListObjectsRequest
                {
                    BucketName = client.BucketName,
                };
                ListObjectsResponse response = client.S3Client.ListObjects(request);

                foreach (S3Object entry in response.S3Objects)
                {
                    objectList.Add(entry);
                }
            }
            return(objectList);
        }
Exemplo n.º 5
0
        public static void DeleteImage(string key)
        {
            var client = new AmazonClient();

            using (client.S3Client)
            {
                DeleteObjectRequest request = new DeleteObjectRequest();

                request.BucketName = client.BucketName;
                request.Key        = key;

                client.S3Client.DeleteObject(request);

                request = new DeleteObjectRequest();

                request.BucketName = client.BucketName;
                request.Key        = key.Replace("thumbs", "fulls");

                client.S3Client.DeleteObject(request);
            }
        }