class Bipbop::Client::Webservice
Constants
- ENDPOINT
- PARAMETER_APIKEY
- PARAMETER_QUERY
- REFERRER
Public Instance Methods
post(query, parameters = {})
click to toggle source
Inicializa a API @param string $apiKey Chave de acesso da BIPBOP @return Nokogiri::XML::Document
# File lib/bipbop/webservice.rb, line 18 def post (query, parameters = {}) curl = CURL.new({'cookies_enable' => false}) response = curl.post(ENDPOINT, parameters.merge({ PARAMETER_QUERY => query, PARAMETER_APIKEY => Bipbop::Client::Config.key })); document = Nokogiri::XML(response) self::assert(document) document end
Protected Instance Methods
assert(doc)
click to toggle source
Realiza um assertion do documento
# File lib/bipbop/webservice.rb, line 33 def assert(doc) node = doc.xpath('//BPQL//header//exception') if node.length > 0 node_exception = node.first source = node_exception["source"] code = node_exception["code"] id = node_exception["id"] pushable = (node_exception["pushable"] || node_exception["push"]) === true message = node_exception.text exception = Bipbop::Client::Exception.new("[%s:%s/%s] %s" % [code, source, id, message, pushable]) exception.set_attributes(code, source, id, message, pushable) raise exception end end