Class: Dropio::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/dropio/client.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeClient

Returns a new instance of Client.



4
5
6
# File 'lib/dropio/client.rb', line 4

def initialize
  self.service = Dropio::Api.new
end

Instance Attribute Details

#serviceObject

Returns the value of attribute service.



2
3
4
# File 'lib/dropio/client.rb', line 2

def service
  @service
end

Instance Method Details

#add_file(drop, file_path, description = nil, convert_to = nil, pingback_url = nil, comment = nil) ⇒ Object



72
73
74
75
76
# File 'lib/dropio/client.rb', line 72

def add_file(drop, file_path, description = nil, convert_to = nil, pingback_url = nil, comment = nil)
  a = handle(:asset, self.service.add_file(drop.name, file_path, description, convert_to, pingback_url, comment, drop.default_token))
  a.drop = drop
  a
end

#add_file_from_url(drop, url, description = nil, convert_to = nil, pingback_url = nil) ⇒ Object



78
79
80
81
82
# File 'lib/dropio/client.rb', line 78

def add_file_from_url(drop, url, description = nil, convert_to = nil, pingback_url = nil)
  a = handle(:asset, self.service.add_file_from_url(drop.name, url, description, convert_to, pingback_url, drop.default_token))
  a.drop = drop
  a
end

#asset(drop, asset_name) ⇒ Object



90
91
92
93
94
# File 'lib/dropio/client.rb', line 90

def asset(drop, asset_name)
  a = handle(:asset, self.service.asset(drop.name,asset_name,drop.default_token))
  a.drop = drop
  a
end

#asset_embed_code(asset) ⇒ Object



104
105
106
107
# File 'lib/dropio/client.rb', line 104

def asset_embed_code(asset)
  r = handle(:response, self.service.asset_embed_code(asset.drop.name,asset.name,asset.drop.default_token))
  r["embed_code"]
end

#assets(drop, page = 1, order = :oldest) ⇒ Object



84
85
86
87
88
# File 'lib/dropio/client.rb', line 84

def assets(drop, page = 1, order = :oldest)
  assets = handle(:assets, self.service.assets(drop.name,page,order,drop.default_token))
  assets.each{|a| a.drop = drop}
  assets
end

#change_asset_name(asset, new_name) ⇒ Object



116
117
118
119
120
# File 'lib/dropio/client.rb', line 116

def change_asset_name(asset, new_name)
  handle(:asset, self.service.change_asset_name(asset.drop.name,asset.name,drop.default_token,new_name))
  asset.name = new_name
  asset
end

#change_drop_name(drop, new_name) ⇒ Object



24
25
26
27
28
# File 'lib/dropio/client.rb', line 24

def change_drop_name(drop, new_name)
  handle(:drop, self.service.change_drop_name(drop.name,drop.admin_token,new_name))
  drop.name = new_name
  drop
end

#comment(asset, comment_id) ⇒ Object



164
165
166
167
168
# File 'lib/dropio/client.rb', line 164

def comment(asset, comment_id)
  c = handle(:comment, self.service.comment(asset.drop.name,asset.name,comment_id,asset.drop.default_token))
  c.asset = asset
  c
end

#comments(asset, page = 1) ⇒ Object



152
153
154
155
156
# File 'lib/dropio/client.rb', line 152

def comments(asset, page = 1)
  comments = handle(:comments, self.service.comments(asset.drop.name,asset.name,page,asset.drop.default_token))
  comments.each{|c| c.asset = asset}
  comments
end

#copy_asset(asset, target_drop) ⇒ Object



142
143
144
145
# File 'lib/dropio/client.rb', line 142

def copy_asset(asset,target_drop)
  r = handle(:response, self.service.copy_asset(asset.drop.name,asset.name,target_drop.name,target_drop.default_token,asset.drop.default_token))
  r["result"]
end

#create_comment(asset, contents) ⇒ Object



158
159
160
161
162
# File 'lib/dropio/client.rb', line 158

def create_comment(asset, contents)
  c = handle(:comment, self.service.create_comment(asset.drop.name,asset.name,contents,asset.drop.default_token))
  c.asset = asset
  c
end

#create_drop(params = {}) ⇒ Object



20
21
22
# File 'lib/dropio/client.rb', line 20

def create_drop(params = {})
  handle(:drop, self.service.create_drop(params))
end

#create_email_subscription(drop, emails, welcome_message, welcome_subject, welcome_from, message, events) ⇒ Object



187
188
189
190
191
192
# File 'lib/dropio/client.rb', line 187

def create_email_subscription(drop, emails, welcome_message, welcome_subject, welcome_from, message, events)
  s = handle(:subscriptions, self.service.create_email_subscription(drop.name, emails, welcome_message, welcome_subject, welcome_from, message, events, drop.default_token))
  s = s.first
  s.drop = drop
  s
end


60
61
62
63
64
# File 'lib/dropio/client.rb', line 60

def create_link(drop, url, title = nil, description = nil)
  a = handle(:asset, self.service.create_link(drop.name, url, title, description, drop.default_token))
  a.drop = drop
  a
end

#create_note(drop, contents, title = nil, description = nil) ⇒ Object



66
67
68
69
70
# File 'lib/dropio/client.rb', line 66

def create_note(drop, contents, title = nil, description = nil)
  a = handle(:asset, self.service.create_note(drop.name, contents, title, description, drop.default_token))
  a.drop = drop
  a
end

#create_pingback_subscription(drop, url, events) ⇒ Object



194
195
196
197
198
# File 'lib/dropio/client.rb', line 194

def create_pingback_subscription(drop, url, events)
  s = handle(:subscription, self.service.create_pingback_subscription(drop.name, url, events, drop.default_token))
  s.drop = drop
  s
end

#create_twitter_subscription(drop, username, password, message, events) ⇒ Object



181
182
183
184
185
# File 'lib/dropio/client.rb', line 181

def create_twitter_subscription(drop, username,password, message, events)
  s = handle(:subscription, self.service.create_twitter_subscription(drop.name, username, password, message, events, drop.default_token))
  s.drop = drop
  s
end

#delete_asset(asset) ⇒ Object



122
123
124
125
# File 'lib/dropio/client.rb', line 122

def delete_asset(asset)
  r = handle(:response, self.service.delete_asset(asset.drop.name,asset.name,asset.drop.default_token))
  r["result"]
end

#delete_comment(comment) ⇒ Object



176
177
178
179
# File 'lib/dropio/client.rb', line 176

def delete_comment(comment)
  r = handle(:response, self.service.delete_comment(comment.asset.drop.name,comment.asset.name,comment.id,comment.asset.drop.admin_token))
  r["result"]
end

#delete_drop(drop) ⇒ Object



45
46
47
48
# File 'lib/dropio/client.rb', line 45

def delete_drop(drop)
  r = handle(:response, self.service.delete_drop(drop.name,drop.admin_token))
  r["result"]
end

#delete_subscription(subscription) ⇒ Object



206
207
208
209
# File 'lib/dropio/client.rb', line 206

def delete_subscription(subscription)
  r = handle(:response, self.service.delete_subscription(subscription.drop.name,subscription.id,subscription.drop.default_token))
  r["result"]
end

#drop(drop_name, token = nil) ⇒ Object



8
9
10
# File 'lib/dropio/client.rb', line 8

def drop(drop_name, token = nil)
  handle(:drop, self.service.drop(drop_name, token))
end

#drop_upload_code(drop) ⇒ Object



55
56
57
58
# File 'lib/dropio/client.rb', line 55

def drop_upload_code(drop)
  r = handle(:response, self.service.drop_upload_code(drop.name,drop.default_token))
  r["upload_code"]
end

#empty_drop(drop) ⇒ Object



40
41
42
43
# File 'lib/dropio/client.rb', line 40

def empty_drop(drop)
  r = handle(:response, self.service.empty_drop(drop.name,drop.admin_token))
  r["result"]
end

#generate_asset_url(asset) ⇒ Object



96
97
98
# File 'lib/dropio/client.rb', line 96

def generate_asset_url(asset)
  self.service.generate_asset_url(asset.drop.name, asset.name, asset.drop.default_token)
end

#generate_drop_url(drop) ⇒ Object



16
17
18
# File 'lib/dropio/client.rb', line 16

def generate_drop_url(drop)
  self.service.generate_drop_url(drop.name,drop.default_token)
end

#generate_original_file_url(asset) ⇒ Object



100
101
102
# File 'lib/dropio/client.rb', line 100

def generate_original_file_url(asset)
  self.service.generate_original_file_url(asset.drop.name, asset.name, asset.drop.default_token)
end

#manager_drops(manager_api_token, page = 1) ⇒ Object



12
13
14
# File 'lib/dropio/client.rb', line 12

def manager_drops(manager_api_token, page = 1)
  handle(:drops, self.service.manager_drops(manager_api_token, page))
end

#move_asset(asset, target_drop) ⇒ Object



147
148
149
150
# File 'lib/dropio/client.rb', line 147

def move_asset(asset,target_drop)
  r = handle(:response, self.service.move_asset(asset.drop.name,asset.name,target_drop.name,target_drop.default_token,asset.drop.default_token))
  r["result"]
end

#promote_nick(drop, nick) ⇒ Object



50
51
52
53
# File 'lib/dropio/client.rb', line 50

def promote_nick(drop,nick)
  r = handle(:response, self.service.promote_nick(drop.name,nick,drop.admin_token))
  r["result"]
end

#send_asset_to_drop(asset, target_drop) ⇒ Object



127
128
129
130
# File 'lib/dropio/client.rb', line 127

def send_asset_to_drop(asset, target_drop)
  r = handle(:response, self.service.send_asset_to_drop(asset.drop.name, asset.name, target_drop.name, target_drop.default_token, asset.drop.default_token))
  r["result"]
end

#send_asset_to_emails(asset, emails, message) ⇒ Object



137
138
139
140
# File 'lib/dropio/client.rb', line 137

def send_asset_to_emails(asset, emails, message)
  r = handle(:response, self.service.send_asset_to_emails(asset.drop.name, asset.name, emails, message, asset.drop.default_token))
  r["result"]
end

#send_asset_to_fax(asset, fax_number) ⇒ Object



132
133
134
135
# File 'lib/dropio/client.rb', line 132

def send_asset_to_fax(asset, fax_number)
  r = handle(:response, self.service.send_asset_to_fax(asset.drop.name, asset.name, fax_number, asset.drop.default_token))
  r["result"]
end

#subscriptions(drop, page = 1) ⇒ Object



200
201
202
203
204
# File 'lib/dropio/client.rb', line 200

def subscriptions(drop, page = 1)
  subscriptions = handle(:subscriptions, self.service.subscriptions(drop.name,page,drop.admin_token))
  subscriptions.each{|s| s.drop = drop}
  subscriptions
end

#update_asset(asset) ⇒ Object



109
110
111
112
113
114
# File 'lib/dropio/client.rb', line 109

def update_asset(asset)
  params = { :title => asset.title, :description => asset.description, :url => asset.url, :contents => asset.contents }
  a = handle(:asset, self.service.update_asset(asset.drop.name,asset.name,params,asset.drop.default_token))
  a.drop = asset.drop
  a
end

#update_comment(comment) ⇒ Object



170
171
172
173
174
# File 'lib/dropio/client.rb', line 170

def update_comment(comment)
  c = handle(:comment, self.service.update_comment(comment.asset.drop.name,comment.asset.name,comment.id,comment.contents,comment.asset.drop.admin_token))
  c.asset = comment.asset
  c
end

#update_drop(drop) ⇒ Object



30
31
32
33
34
35
36
37
38
# File 'lib/dropio/client.rb', line 30

def update_drop(drop)
  params = { :description => drop.description, :admin_email => drop.admin_email,
             :email_key => drop.email_key, :default_view => drop.default_view,
             :chat_password => drop.chat_password, :guests_can_comment => drop.guests_can_comment,
             :guests_can_add => drop.guests_can_add, :guests_can_delete => drop.guests_can_delete,
             :expiration_length => drop.expiration_length, :password => drop.password,
             :admin_password => drop.admin_password, :premium_code => drop.premium_code }
  handle(:drop, self.service.update_drop(drop.name,drop.admin_token,params))
end