current_metar 0.1 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/current_metar/metar.rb +13 -6
  2. metadata +6 -7
@@ -1,6 +1,6 @@
1
1
  class CurrentMetar::Metar
2
2
  require 'rexml/document'
3
- attr_accessor :wind_speed, :wind_direction, :wind_gust_speed, :observation_time, :visibility, :temperature, :available
3
+ attr_accessor :wind_speed, :wind_direction, :wind_gust_speed, :observation_time, :visibility, :temperature, :available, :no_results
4
4
  attr_reader :icao
5
5
 
6
6
  METAR_ATTRIBUTE_MAPPING = {
@@ -19,15 +19,22 @@ class CurrentMetar::Metar
19
19
  metar = CurrentMetar::Metar.new(icao)
20
20
  begin
21
21
  metar_response_body = REXML::Document.new(CurrentMetar::Request.query_adds(metar.icao))
22
- metar_response_body.root.elements.each("data/METAR") do |metar_xml|
23
- unless metar_xml.elements['temp_c'].nil?
24
- metar.temperature = (9/5.0 * metar_xml.elements['temp_c'].text.to_i + 32).round
22
+ if metar_response_body.root.elements['data'].attributes.get_attribute('num_results').value == '0'
23
+ metar.available = false
24
+ metar.no_results = true
25
+ else
26
+ metar_response_body.root.elements.each("data/METAR") do |metar_xml|
27
+ unless metar_xml.elements['temp_c'].nil?
28
+ metar.temperature = (9/5.0 * metar_xml.elements['temp_c'].text.to_i + 32).round
29
+ end
30
+ metar.parse_standard_attributes(metar_xml)
25
31
  end
26
- metar.parse_standard_attributes(metar_xml)
32
+ metar.available = true
33
+ metar.no_results = false
27
34
  end
28
- metar.available = true
29
35
  rescue
30
36
  metar.available = false
37
+ metar.no_results = false
31
38
  ensure
32
39
  return metar
33
40
  end
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: current_metar
3
3
  version: !ruby/object:Gem::Version
4
- hash: 9
5
- prerelease: false
4
+ hash: 25
5
+ prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- version: "0.1"
9
+ - 1
10
+ version: 0.1.1
10
11
  platform: ruby
11
12
  authors:
12
13
  - Nathan Humbert
@@ -14,8 +15,7 @@ autorequire:
14
15
  bindir: bin
15
16
  cert_chain: []
16
17
 
17
- date: 2010-12-29 00:00:00 -08:00
18
- default_executable:
18
+ date: 2011-06-18 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: fakeweb
@@ -46,7 +46,6 @@ files:
46
46
  - lib/current_metar/metar.rb
47
47
  - lib/current_metar/request.rb
48
48
  - lib/current_metar.rb
49
- has_rdoc: true
50
49
  homepage: https://github.com/nathanhumbert/current_metar
51
50
  licenses:
52
51
  - MIT
@@ -76,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
76
75
  requirements: []
77
76
 
78
77
  rubyforge_project:
79
- rubygems_version: 1.3.7
78
+ rubygems_version: 1.7.2
80
79
  signing_key:
81
80
  specification_version: 3
82
81
  summary: Query current metar data from the ADDS Experimental data server.