Class: Iesde::API

Inherits:
Object
  • Object
show all
Includes:
ActionView::Helpers::SanitizeHelper
Defined in:
lib/iesde/api.rb

Constant Summary collapse

FORMATS =
{ json: "json", html: 'html', xml: 'xml' }
BASE =
'http://ead.portalava.com.br'
WEB_SERVICE =
'web_service'

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(o_que, format, opts = {}) ⇒ API

Returns a new instance of API.



5
6
7
8
9
10
11
12
# File 'lib/iesde/api.rb', line 5

def initialize(o_que, format, opts = {})
  @tipo   = tipo_requisicao(o_que)
  config_api(opts)

  params    = config_params(opts)
  request   = Request.new(@tipo, format, api_hash)
  @response = request.execute(params)
end

Class Method Details

.build_url(ask_for, format) ⇒ Object



41
42
43
# File 'lib/iesde/api.rb', line 41

def self.build_url(ask_for, format)
  [ BASE, WEB_SERVICE, ask_for, 'format', FORMATS[format]].join('/')
end

Instance Method Details

#as_jsonObject



14
15
16
17
18
# File 'lib/iesde/api.rb', line 14

def as_json
  return JSON.parse(@response)
rescue JSON::ParserError
  return @response
end

#msgObject



36
37
38
39
# File 'lib/iesde/api.rb', line 36

def msg
  msg = (status() == false) ? as_json['mensagem'] : as_json['msg']
  sanitize(msg)
end

#salvo_com_sucesso?Boolean

Returns:

  • (Boolean)


32
33
34
# File 'lib/iesde/api.rb', line 32

def salvo_com_sucesso?
  status == 1 && tem_matricula?
end

#statusObject



20
21
22
# File 'lib/iesde/api.rb', line 20

def status
  as_json["status"]
end

#tem_chave?(chave) ⇒ Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/iesde/api.rb', line 24

def tem_chave?(chave)
  as_json.has_key?(chave)
end

#tem_matricula?Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/iesde/api.rb', line 28

def tem_matricula?
  tem_chave?("MatriculaID")
end