Class: BucketClient::DigitalOceanBucket
- Inherits:
-
Bucket
- Object
- Bucket
- BucketClient::DigitalOceanBucket
show all
- Defined in:
- lib/bucket_client/digital_ocean/digital_ocean_bucket.rb
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods included from KeyMethod
#create_blob!, #delete_blob!, #delete_blob_if_exist!, #get_blob!, #put_blob!, #update_blob!
Methods included from UriMethod
#delete_blob_if_exist_with_uri!, #delete_blob_with_uri!, #get_blob_with_uri!, #put_blob_with_uri!, #update_blob_with_uri!
Constructor Details
#initialize(region, http, client, key) ⇒ DigitalOceanBucket
Returns a new instance of DigitalOceanBucket.
10
11
12
13
14
15
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 10
def initialize(region, http, client, key)
@region = region
@http = http
@bucket_client = client
@key = key
end
|
Instance Attribute Details
#key ⇒ Object
Returns the value of attribute key.
5
6
7
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 5
def key
@key
end
|
Instance Method Details
#create_blob(payload, key) ⇒ Object
62
63
64
65
66
67
68
69
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 62
def create_blob(payload, key)
exist = exist_blob key
if exist
OperationResult.new false, "Blob already exist", nil, 400
else
put_blob payload, key
end
end
|
#delete_blob(key) ⇒ Object
75
76
77
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 75
def delete_blob(key)
delete_blob_with_uri(get_uri key)
end
|
#delete_blob_if_exist(key) ⇒ Object
79
80
81
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 79
def delete_blob_if_exist(key)
delete_blob_if_exist_with_uri(get_uri key)
end
|
#delete_blob_if_exist_with_uri(uri) ⇒ Object
46
47
48
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 46
def delete_blob_if_exist_with_uri(uri)
@bucket_client.delete_blob_if_exist(uri)
end
|
#delete_blob_with_uri(uri) ⇒ Object
42
43
44
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 42
def delete_blob_with_uri(uri)
@bucket_client.delete_blob(uri)
end
|
#exist_blob(key) ⇒ Object
54
55
56
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 54
def exist_blob(key)
exist_blob_with_uri(get_uri key)
end
|
#exist_blob_with_uri(uri) ⇒ Object
25
26
27
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 25
def exist_blob_with_uri(uri)
@bucket_client.exist_blob(uri)
end
|
#get_blob(key) ⇒ Object
50
51
52
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 50
def get_blob(key)
get_blob_with_uri(get_uri key)
end
|
#get_blob_with_uri(uri) ⇒ Object
21
22
23
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 21
def get_blob_with_uri(uri)
@bucket_client.get_blob uri
end
|
#get_uri(key) ⇒ Object
17
18
19
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 17
def get_uri(key)
"https://#{@region}.digitaloceanspaces.com/#{@key}/#{key}"
end
|
#put_blob(payload, key) ⇒ Object
58
59
60
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 58
def put_blob(payload, key)
put_blob_with_uri(payload, get_uri(key))
end
|
#put_blob_with_uri(payload, uri) ⇒ Object
29
30
31
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 29
def put_blob_with_uri(payload, uri)
@bucket_client.put_blob payload, uri
end
|
#update_blob(payload, key) ⇒ Object
71
72
73
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 71
def update_blob(payload, key)
update_blob_with_uri(payload, get_uri(key))
end
|
#update_blob_with_uri(payload, uri) ⇒ Object
33
34
35
36
37
38
39
40
|
# File 'lib/bucket_client/digital_ocean/digital_ocean_bucket.rb', line 33
def update_blob_with_uri(payload, uri)
exist = exist_blob_with_uri uri
if exist
put_blob_with_uri payload, uri
else
OperationResult.new false, "Blob does not exist", nil, 400
end
end
|