Method: TextMagic::API::Executor.execute
- Defined in:
- lib/executor.rb
.execute(command, username, password, options = {}) ⇒ Object
Executes a command by sending a request to the TextMagic’s HTTP gateway. This is a low-level generic method used by methods in TextMagic::API class. You should never need to use this method directly.
Parameters specified in the options hash will be added to the HTTP request’s URI.
Returns a hash with values parsed from the server’s response if the command was successfully executed. In case the server replies with error, this method raises a TextMagic::API::Error.
21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/executor.rb', line 21 def self.execute(command, username, password, = {}) raise TextMagic::API::Error.new(3, 'Command is undefined') if command.nil? || command.blank? if username.nil? || username.blank? || password.nil? || password.blank? raise TextMagic::API::Error.new(5, 'Invalid username & password combination') end .merge!(:username => username, :password => password, :cmd => command) .delete_if { |key, value| key.nil? || key.to_s.blank? || value.nil? || value.to_s.blank? } response = self.get('/api', :query => , :format => :json) raise Error.new(response) if response && response['error_code'] response end |