class Looks::Gravatar::Account
Public Class Methods
new(config)
click to toggle source
# File lib/looks/gravatar/account.rb, line 13 def initialize(config) @password = config.password @server = XMLRPC::Client.new_from_uri(Gravatar.url(config.address)) end
Public Instance Methods
addresses()
click to toggle source
# File lib/looks/gravatar/account.rb, line 18 def addresses addresses = [] call('grav.addresses').each do |key, value| addresses.push Address.new_from_addresses(key, value) end addresses.sort end
delete_image(image)
click to toggle source
# File lib/looks/gravatar/account.rb, line 44 def delete_image(image) call('grav.deleteUserimage', { 'userimage' => image }) end
images()
click to toggle source
# File lib/looks/gravatar/account.rb, line 28 def images images = [] call('grav.userimages').each do |key, value| images.push Image.new_from_images(key, value) end images.sort end
remove_image(address)
click to toggle source
# File lib/looks/gravatar/account.rb, line 55 def remove_image(address) call('grav.removeImage', { 'addresses' => [ address ] }) end
save_data(image)
click to toggle source
# File lib/looks/gravatar/account.rb, line 38 def save_data(image) data = Base64.encode64(image) call('grav.saveData', { 'data' => data, 'rating' => 0 }) end
use_image(address, id)
click to toggle source
# File lib/looks/gravatar/account.rb, line 48 def use_image(address, id) call('grav.useUserimage', { 'userimage' => id, 'addresses' => [ address ] }) end
Private Instance Methods
call(method, args = {})
click to toggle source
# File lib/looks/gravatar/account.rb, line 63 def call(method, args = {}) args['password'] = @password begin @server.call(method, args) rescue SocketError, SystemCallError raise Error, "Unable to connect to Gravatar server" rescue XMLRPC::FaultException => fault handle fault end end
handle(fault)
click to toggle source
# File lib/looks/gravatar/account.rb, line 75 def handle(fault) case fault.faultCode when -8 raise InternalError when -9 raise AuthenticationError when -11 raise IncorrectMethodParameterError else raise UnknownError, fault.faultCode end end