Module: EnemSolicitacao

Defined in:
lib/enem_solicitacao.rb,
lib/enem_solicitacao/gateway.rb,
lib/enem_solicitacao/session.rb

Overview

O EnemSolicitacao em Ruby fornece uma forma de automatizar a busca por resultados no sistema do Inep: EnemSolicitacao (sistemasenem.inep.gov.br/EnemSolicitacao).

Para o correto funcionamento, é necessário configurar um login e senha. Estes são lidos das variáveis de ambiente ENEM_LOGIN e ENEM_PASSWORD respectivamente. Ao utilizar a gem em outro projeto, no entanto, é possível sobrescrever este comportamento:

EnemSolicitacao.user     = 'meulogin'
EnemSolicitacao.password = 'minhasenha'

Feito isso, basta utilizar o gateway para fazer as buscas:

EnemSolicitacao.gateway

Leia a documentação em ‘EnemSolicitacao::Gateway` para detalhes em como fazer as consultas.

Defined Under Namespace

Classes: Gateway, Session

Constant Summary collapse

VERSION =
'0.0.1'

Class Method Summary collapse

Class Method Details

.gatewayObject

Cria e faz cache de um gateway.



68
69
70
# File 'lib/enem_solicitacao.rb', line 68

def self.gateway
  @gateway ||= Gateway.new(session)
end

.passwordObject



58
59
60
# File 'lib/enem_solicitacao.rb', line 58

def self.password
  @password ||= ENV['ENEM_PASSWORD']
end

.password=(password) ⇒ Object



54
55
56
# File 'lib/enem_solicitacao.rb', line 54

def self.password=(password)
  @password = password
end

.path(path) ⇒ Object

Método auxiliar para montar URLs.



42
43
44
# File 'lib/enem_solicitacao.rb', line 42

def self.path(path)
  "#{site}#{path}"
end

.sessionObject

Cria e faz cache de uma sessão para com o site.



63
64
65
# File 'lib/enem_solicitacao.rb', line 63

def self.session
  @session ||= Session.new(user, password)
end

.siteObject

URL do sistema do Inep.



37
38
39
# File 'lib/enem_solicitacao.rb', line 37

def self.site
  'http://sistemasenem.inep.gov.br/EnemSolicitacao'
end

.userObject



50
51
52
# File 'lib/enem_solicitacao.rb', line 50

def self.user
  @user ||= ENV['ENEM_LOGIN']
end

.user=(user) ⇒ Object



46
47
48
# File 'lib/enem_solicitacao.rb', line 46

def self.user=(user)
  @user = user
end

.yearObject

Ano de referência padrão. Se não configurado, será utilizado o ano anterior.



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

def self.year
  @year ||= Date.today.year - 1
end

.year=(year) ⇒ Object



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

def self.year=(year)
  @year = year
end