Class: IndianRail::Api

Inherits:
Object
  • Object
show all
Defined in:
lib/indian-rail/api.rb

Direct Known Subclasses

Pnr, Schedule

Class Method Summary collapse

Class Method Details

.base_url_prefixObject


27
28
29
# File 'lib/indian-rail/api.rb', line 27

def base_url_prefix
	@base_url ||= "http://www.indianrail.gov.in/cgi_bin"
end

.get_response(url, options = {}) ⇒ Object


9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/indian-rail/api.rb', line 9

def get_response(url, options={})				
	response, uri = '', URI.parse(url)
	options = Hash[options.map{|(k,v)| [k.to_sym,v]}]
	net_http = if options.has_key?(:proxy)
		options[:proxy][:url] = URI.parse(options[:proxy][:url].gsub('www.', '')).host if options[:proxy][:url].include?('http://')
		Net::HTTP::Proxy(options[:proxy][:url], options[:proxy][:port])
	else
		Net::HTTP
	end						
	net_http.start(uri.host, uri.port) do |http|				
		request = Net::HTTP::Post.new(uri.request_uri)
		request.set_form_data(options[:form_params])
		request['referer'] = options[:referer] if options.has_key?(:referer)					
		response = http.request(request).body									
	end											
	response
end

.pnr_url_sufixObject


31
32
33
# File 'lib/indian-rail/api.rb', line 31

def pnr_url_sufix
	@pnr_url ||= "inet_pnrstat_cgi.cgi"
end

.schedule_url_sufixObject


35
36
37
# File 'lib/indian-rail/api.rb', line 35

def schedule_url_sufix
	@schedule ||= "inet_trnnum_cgi.cgi"
end