pepe-ares 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
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