scala-news-reader
rss/atom news reader in scala
git clone https://9o.is/git/scala-news-reader.git
S3.scala
(749B)
1 package com.joereader.lib.aws
2
3 import dispatch._
4 import concurrent.ExecutionContext.Implicits.global
5 import AmazonS3._
6
7 /* Amazon S3 API */
8 class S3(access_key: String, secret_key: String, bucket: String) {
9
10 /* Creates a file that can be viewed by the public. */
11 def createFile(fn: String, data: Array[Byte], contentType: String) =
12 Http.configure(_ setCompressionEnabled true)(Bucket(bucket).PUT.setBody(data) / fn <:<
13 Map("content-type" -> contentType, "x-amz-acl" -> "public-read")
14 <@(access_key, secret_key))
15
16 def deleteFile(fn: String) =
17 Http.configure(_ setCompressionEnabled true)(Bucket(bucket).DELETE /
18 fn <@(access_key, secret_key))
19
20 def fileUrl(fn: String) = "http://" + Root + "/" + bucket + "/" + fn
21
22 }