blob: a20b66d8811c42a148ffbfdbcb5f270216fe4c64 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
.. _ruby_swift:
=====================
Ruby Swift Examples
=====================
Create a Connection
===================
This creates a connection so that you can interact with the server:
.. code-block:: ruby
require 'cloudfiles'
username = 'account_name:user_name'
api_key = 'your_secret_key'
conn = CloudFiles::Connection.new(
:username => username,
:api_key => api_key,
:auth_url => 'http://objects.dreamhost.com/auth'
)
Create a Container
==================
This creates a new container called ``my-new-container``
.. code-block:: ruby
container = conn.create_container('my-new-container')
Create an Object
================
This creates a file ``hello.txt`` from the file named ``my_hello.txt``
.. code-block:: ruby
obj = container.create_object('hello.txt')
obj.load_from_filename('./my_hello.txt')
obj.content_type = 'text/plain'
List Owned Containers
=====================
This gets a list of Containers that you own, and also prints out
the container name:
.. code-block:: ruby
conn.containers.each do |container|
puts container
end
The output will look something like this::
mahbuckat1
mahbuckat2
mahbuckat3
List a Container's Contents
===========================
This gets a list of objects in the container, and prints out each
object's name, the file size, and last modified date:
.. code-block:: ruby
require 'date' # not necessary in the next version
container.objects_detail.each do |name, data|
puts "#{name}\t#{data[:bytes]}\t#{data[:last_modified]}"
end
The output will look something like this::
myphoto1.jpg 251262 2011-08-08T21:35:48.000Z
myphoto2.jpg 262518 2011-08-08T21:38:01.000Z
Retrieve an Object
==================
This downloads the object ``hello.txt`` and saves it in
``./my_hello.txt``:
.. code-block:: ruby
obj = container.object('hello.txt')
obj.save_to_filename('./my_hello.txt')
Delete an Object
================
This deletes the object ``goodbye.txt``:
.. code-block:: ruby
container.delete_object('goodbye.txt')
Delete a Container
==================
.. note::
The container must be empty! Otherwise the request won't work!
.. code-block:: ruby
container.delete_container('my-new-container')
|