pepe-ares 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. data/README.rdoc +1 -2
  2. data/Rakefile +2 -2
  3. data/ares.gemspec +46 -0
  4. data/lib/ares.rb +13 -17
  5. metadata +7 -6
@@ -26,8 +26,7 @@ type F needs more testing (see rake test:rcov).
26
26
 
27
27
  == Dependencies
28
28
 
29
- Only active support for Hash.from_xml. Maybe it should be redone with something
30
- less fat.
29
+ Only crack for xml parsing. Install with sudo gem install crack.
31
30
 
32
31
  == License
33
32
 
data/Rakefile CHANGED
@@ -27,7 +27,7 @@ end
27
27
  namespace :gems do
28
28
  desc "Install gems"
29
29
  task :install do
30
- exec 'gem install activesupport'
30
+ exec 'gem install crack'
31
31
  end
32
32
  end
33
33
 
@@ -40,7 +40,7 @@ begin
40
40
  gem.homepage = "http://github.com/pepe/ares"
41
41
  gem.authors = ["Josef Pospisil"]
42
42
  gem.description = "Simple library for querying Ares system in Czech republic with translation of labels."
43
- gem.add_dependency('activesupport', '>= 1.4.0')
43
+ gem.add_dependency('crack', '>= 0.1.4')
44
44
  IGNORE = [/\.gitignore$/, /VERSION$/]
45
45
  gem.files.reject! { |f| IGNORE.any? { |re| f.match(re) } }
46
46
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
@@ -0,0 +1,46 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{ares}
8
+ s.version = "0.2.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Josef Pospisil"]
12
+ s.date = %q{2009-08-10}
13
+ s.description = %q{Simple library for querying Ares system in Czech republic with translation of labels.}
14
+ s.email = %q{pepe@gravastar.cz}
15
+ s.extra_rdoc_files = [
16
+ "README.rdoc"
17
+ ]
18
+ s.files = [
19
+ "README.rdoc",
20
+ "Rakefile",
21
+ "ares.gemspec",
22
+ "lib/ares.rb",
23
+ "spec/ares_spec.rb"
24
+ ]
25
+ s.homepage = %q{http://github.com/pepe/ares}
26
+ s.rdoc_options = ["--charset=UTF-8"]
27
+ s.require_paths = ["lib"]
28
+ s.rubygems_version = %q{1.3.4}
29
+ s.summary = %q{Simple ruby wrapper for Czech Ares service}
30
+ s.test_files = [
31
+ "spec/ares_spec.rb"
32
+ ]
33
+
34
+ if s.respond_to? :specification_version then
35
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
36
+ s.specification_version = 3
37
+
38
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
39
+ s.add_runtime_dependency(%q<crack>, [">= 0.1.4"])
40
+ else
41
+ s.add_dependency(%q<crack>, [">= 0.1.4"])
42
+ end
43
+ else
44
+ s.add_dependency(%q<crack>, [">= 0.1.4"])
45
+ end
46
+ end
@@ -1,5 +1,6 @@
1
1
  require 'net/http'
2
- require 'active_support'
2
+ require 'crack/xml'
3
+
3
4
  class Ares
4
5
  SERVICE_URL = "http://wwwinfo.mfcr.cz/cgi-bin/ares/darv_std.cgi?%s".freeze
5
6
  attr_reader :options, :result
@@ -15,14 +16,14 @@ class Ares
15
16
  # initializes new ares object
16
17
  def initialize(options)
17
18
  @options = options
18
- @result = Hash.from_xml(Net::HTTP.get(URI.parse(SERVICE_URL % self.params)))
19
+ @result = Crack::XML.parse(Net::HTTP.get(URI.parse(SERVICE_URL % self.params)))
19
20
  return self
20
21
  end
21
22
 
22
23
  # returns true if subject found on ares, otherwise false
23
24
  def found?
24
- @found ||= !(self.result["Ares_odpovedi"]["Odpoved"]["Pocet_zaznamu"] == '0' ||
25
- self.result["Ares_odpovedi"]["Odpoved"]["error"])
25
+ @found ||= !(self.result["are:Ares_odpovedi"]["are:Odpoved"]["are:Pocet_zaznamu"] == '0' ||
26
+ self.result["are:Ares_odpovedi"]["are:Odpoved"]["are:Error"])
26
27
  end
27
28
 
28
29
  # returns params like concatenated options
@@ -34,44 +35,39 @@ class Ares
34
35
 
35
36
  # returns just answer part
36
37
  def answer
37
- @answer ||= self.result["Ares_odpovedi"]["Odpoved"]["Zaznam"]
38
+ @answer ||= self.result["are:Ares_odpovedi"]["are:Odpoved"]["are:Zaznam"]
38
39
  end
39
40
 
40
41
  # returns company name
41
42
  def company_name
42
- @company_name ||= self.answer["Obchodni_firma"]
43
+ @company_name ||= self.answer["are:Obchodni_firma"]
43
44
  end
44
45
 
45
46
  # returns ico
46
47
  def ico
47
- @company_name ||= self.answer["ICO"]
48
+ @company_name ||= self.answer["are:ICO"]
48
49
  end
49
50
 
50
51
  # returns subject type
51
52
  def subject_type
52
- @subject_type ||= if self.answer["Identifikace"]["Osoba"].nil?
53
+ @subject_type ||= if self.answer["are:Identifikace"]["are:Osoba"].nil?
53
54
  "P"
54
- else
55
- "F"
56
55
  end
57
56
  end
58
57
 
59
58
  # returns address
60
59
  def address
61
60
  @address ||= {
62
- :city => self.raw_address['PSC'][0..0] == "1" ? self.raw_address['Nazev_mestske_casti'] : self.raw_address['Nazev_obce'],
63
- :street => [self.raw_address["Nazev_ulice"], [self.raw_address['Cislo_domovni'],self.raw_address['Cislo_orientacni']].compact.join('/')].join(' '),
64
- :zip => self.raw_address['PSC']
65
-
61
+ :city => self.raw_address['dtt:PSC'][0..0] == "1" ? self.raw_address['dtt:Nazev_mestske_casti'] : self.raw_address['dtt:Nazev_obce'],
62
+ :street => [self.raw_address["dtt:Nazev_ulice"], [self.raw_address['dtt:Cislo_domovni'], self.raw_address['dtt:Cislo_orientacni']].compact.join('/')].join(' '),
63
+ :zip => self.raw_address['dtt:PSC']
66
64
  }
67
65
  end
68
66
 
69
67
  # returns raw address
70
68
  def raw_address
71
69
  @raw_address ||= if self.subject_type == "P"
72
- self.answer["Identifikace"]["Adresa_ARES"]
73
- else
74
- self.answer["Identifikace"]["Osoba"]["Bydliste"]
70
+ self.answer["are:Identifikace"]["are:Adresa_ARES"]
75
71
  end
76
72
  end
77
73
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pepe-ares
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josef Pospisil
@@ -9,18 +9,18 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-08-07 00:00:00 -07:00
12
+ date: 2009-08-10 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- name: activesupport
16
+ name: crack
17
17
  type: :runtime
18
18
  version_requirement:
19
19
  version_requirements: !ruby/object:Gem::Requirement
20
20
  requirements:
21
21
  - - ">="
22
22
  - !ruby/object:Gem::Version
23
- version: 1.4.0
23
+ version: 0.1.4
24
24
  version:
25
25
  description: Simple library for querying Ares system in Czech republic with translation of labels.
26
26
  email: pepe@gravastar.cz
@@ -33,9 +33,10 @@ extra_rdoc_files:
33
33
  files:
34
34
  - README.rdoc
35
35
  - Rakefile
36
+ - ares.gemspec
36
37
  - lib/ares.rb
37
38
  - spec/ares_spec.rb
38
- has_rdoc: true
39
+ has_rdoc: false
39
40
  homepage: http://github.com/pepe/ares
40
41
  licenses:
41
42
  post_install_message:
@@ -60,7 +61,7 @@ requirements: []
60
61
  rubyforge_project:
61
62
  rubygems_version: 1.3.5
62
63
  signing_key:
63
- specification_version: 2
64
+ specification_version: 3
64
65
  summary: Simple ruby wrapper for Czech Ares service
65
66
  test_files:
66
67
  - spec/ares_spec.rb