kitco 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +12 -12
  3. data/bin/kitco +19 -18
  4. data/lib/kitco.rb +11 -11
  5. metadata +15 -15
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: fdaabbfe22e8a4b0163b89406d407904522d2457
4
+ data.tar.gz: 5d6ca9252975f3a6885426aedbb43cc1544072dd
5
+ SHA512:
6
+ metadata.gz: 1bf922061043c2be413fd6bd23e70a2ddac5c953ac50ca9a4faf3a531558563b068763fe25241be0fab5a6e69f78151da56066d47b64c8a8c0b353b28e56a5c1
7
+ data.tar.gz: 59a28d8791fb347313acca6eb0f3cd6076992efb67bc81e0d486bd6e8dc45fd2b30ef7977655f4d6d6abeda6e0f880af5579f2baf5f9ec12a47be03b25f67786
data/README.md CHANGED
@@ -1,24 +1,24 @@
1
- Kitco Gem
2
- =========
1
+ # Kitco Gem
2
+
3
3
 
4
4
  This gem retrieves data (via HTTParty) from Kitco Charts about Gold and other precious metals.
5
5
 
6
6
  Use at your own discretion
7
7
 
8
- Install
9
- --------
10
- gem install kitco
8
+ ## Install
9
+
10
+ gem install kitco
11
+
12
+
13
+ ## Examples
11
14
 
15
+ require 'kitco'
12
16
 
13
- Examples
14
- --------
15
- require 'kitco'
17
+ puts Kitco.gold
18
+ puts Kitco.silver
16
19
 
17
- puts Kitco.gold
18
- puts Kitco.silver
20
+ ## Command Line Utility
19
21
 
20
- Command Line Utility
21
- --------------------
22
22
 
23
23
  kitco gold
24
24
 
data/bin/kitco CHANGED
@@ -1,18 +1,19 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'optparse'
3
- require 'kitco'
3
+ #require 'kitco'
4
+ require File.expand_path('../../lib/kitco', __FILE__)
4
5
 
5
6
  options = { :color => true }
6
7
  symbols = [:gold, :silver, :palladium, :rhodium]
7
8
 
8
9
  optparse = OptionParser.new do |opts|
9
- opts.banner << "usage: kitco [options] symbol\n"
10
- opts.banner << "where symbol is #{ symbols.collect { |s| s.upcase }.join(' ') } (case-insensitive)\n\nOptions:"
11
-
10
+ opts.banner = "usage: kitco [options] [symbol]\n\n"
11
+ opts.banner << "symbols (case-insensitive):\n#{ symbols.collect { |s| s.upcase }.join(' ') }\n\n\options:"
12
+
12
13
  opts.on '-h', '--help', 'Display this message' do |arg|
13
14
  options[:help] = arg
14
- end
15
-
15
+ end
16
+
16
17
  opts.on '-c', '--no-color', 'No color in output' do |arg|
17
18
  options[:color] = arg
18
19
  end
@@ -28,20 +29,20 @@ exit(1) unless symbols.include? symbol
28
29
 
29
30
  if Kitco.public_methods.include? symbol
30
31
  begin
31
- body = Kitco.send(symbol).parsed_response
32
+ body = Kitco.send(symbol).parsed_response
33
+
34
+ puts "Results for #{symbol.upcase} (#{body[:time].strftime('%H:%M %m/%d/%y')})"
35
+ puts "High #{body[:high]}\tLow #{body[:low]}"
36
+ puts "Bid #{body[:bid]}\tAsk #{body[:ask]}"
32
37
 
33
- puts "Results for #{symbol.upcase} (#{body[:time].strftime('%H:%M %m/%d/%y')})"
34
- puts "High #{body[:high]}\tLow #{body[:low]}"
35
- puts "Bid #{body[:bid]}\tAsk #{body[:ask]}"
36
-
37
38
  change = "#{body[:change]} (#{(body[:percentage] * 100.0).round(4)}%)"
38
- if options[:color]
39
- puts "Change: \e[#{body[:change] >= 0 ? '32m+' : '31m'}#{change}\e[0m"
40
- else
41
- puts "Change: #{change}"
42
- end
43
-
39
+ if options[:color]
40
+ puts "Change: \e[#{body[:change] >= 0 ? '32m+' : '31m'}#{change}\e[0m"
41
+ else
42
+ puts "Change: #{change}"
43
+ end
44
+
44
45
  rescue Exception => e
45
46
  puts "Failure: #{e}"
46
47
  end
47
- end
48
+ end
data/lib/kitco.rb CHANGED
@@ -9,38 +9,38 @@ class Kitco
9
9
  parser lambda { |body, format|
10
10
  # they don't send an XML content-type if its a bad request
11
11
  return Crack::XML.parse(body) if body.include?('xml')
12
-
12
+
13
13
  results = {}
14
14
  data = Base64.decode64(body).split(',')
15
15
 
16
16
  results[:time] = Time.parse data.shift
17
17
  results[:percentage] = data.pop.to_f / 100.0
18
-
18
+
19
19
  data.collect! { |n| n.to_f }
20
20
  results.merge! Hash[ [:bid, :ask, :change, :low, :high].zip(data) ]
21
21
  }
22
-
23
- def self.gold
22
+
23
+ def self.gold
24
24
  request :gold
25
25
  end
26
-
26
+
27
27
  def self.silver
28
28
  request :silver
29
29
  end
30
-
30
+
31
31
  def self.palladium
32
32
  request :palladium
33
- end
34
-
33
+ end
34
+
35
35
  def self.rhodium
36
36
  request :rhodium
37
37
  end
38
-
38
+
39
39
  class << self
40
40
  def request symbol
41
- get '/RequestHandler', :query => {:requestName => 'getSymbolSnapshot', :Symbol => symbol.upcase }
41
+ get '/RequestHandler', :query => {:requestName => 'getSymbolSnapshot', :Symbol => symbol.to_s.upcase }
42
42
  end
43
-
43
+
44
44
  protected :request
45
45
  end
46
46
  end
metadata CHANGED
@@ -1,28 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kitco
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
5
- prerelease:
4
+ version: 0.0.6
6
5
  platform: ruby
7
6
  authors:
8
7
  - mikeycgto
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2011-08-26 00:00:00.000000000 -04:00
13
- default_executable:
11
+ date: 2014-01-07 00:00:00.000000000 Z
14
12
  dependencies:
15
13
  - !ruby/object:Gem::Dependency
16
14
  name: httparty
17
- requirement: &22688260 !ruby/object:Gem::Requirement
18
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
19
16
  requirements:
20
- - - ! '>='
17
+ - - '>='
21
18
  - !ruby/object:Gem::Version
22
19
  version: 0.7.8
23
20
  type: :runtime
24
21
  prerelease: false
25
- version_requirements: *22688260
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: 0.7.8
26
27
  description: An API for accessing data from Kitco Charts. Also includes a command
27
28
  line utility
28
29
  email: mikeycgto@gmail.com
@@ -34,30 +35,29 @@ files:
34
35
  - README.md
35
36
  - lib/kitco.rb
36
37
  - bin/kitco
37
- has_rdoc: true
38
38
  homepage: https://github.com/mikeycgto/kitco
39
39
  licenses: []
40
+ metadata: {}
40
41
  post_install_message:
41
42
  rdoc_options: []
42
43
  require_paths:
43
44
  - lib
44
45
  required_ruby_version: !ruby/object:Gem::Requirement
45
- none: false
46
46
  requirements:
47
- - - ! '>='
47
+ - - '>='
48
48
  - !ruby/object:Gem::Version
49
49
  version: '0'
50
50
  required_rubygems_version: !ruby/object:Gem::Requirement
51
- none: false
52
51
  requirements:
53
- - - ! '>='
52
+ - - '>='
54
53
  - !ruby/object:Gem::Version
55
54
  version: '0'
56
55
  requirements: []
57
56
  rubyforge_project:
58
- rubygems_version: 1.5.2
57
+ rubygems_version: 2.0.3
59
58
  signing_key:
60
- specification_version: 3
59
+ specification_version: 4
61
60
  summary: An API for accessing data from Kitco Charts. Also includes a command line
62
61
  utility!
63
62
  test_files: []
63
+ has_rdoc: false