jambase 0.0.1

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 (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/jambase.rb +66 -0
  3. metadata +86 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 54caccb754775065e16e0410a8ef4074fe10105a
4
+ data.tar.gz: 851405b7df89ff281e564b2aab14828063899d92
5
+ SHA512:
6
+ metadata.gz: 3180e51e2edf51c0b8c92b6e876b89d7822c0481603be63a62f4cf3e354e974a54839322b4e5a4819b36a25ae03736e75ee65322c5dd372c20cd533aa224b1b4
7
+ data.tar.gz: 7d37f5678d39a72d4c5b3c38966c879ae851848df905cc0bfc8b99c2cf5f1629e9b755afad8a441711e740aff723faf6aaa7582678ff024a3e02b06b0a102a3f
@@ -0,0 +1,66 @@
1
+ require 'net/http'
2
+ require 'json'
3
+
4
+ class Jambase
5
+
6
+ API_URL = "http://api.jambase.com/"
7
+
8
+ class << self
9
+ def configure(&block)
10
+ block.call(self) if block_given?
11
+ end
12
+
13
+ def api_key=(api_key)
14
+ @@api_key = api_key
15
+ end
16
+ end
17
+
18
+ def get_events(zip_code:nil, radius:nil, start_date:nil, end_date:nil, artist_id:nil, venue_id:nil)
19
+ params = []
20
+ params << "page=0"
21
+ params << "zipCode=#{zip_code}" if zip_code
22
+ params << "radius=#{radius}" if radius
23
+ params << "startDate=#{start_date}" if start_date
24
+ params << "end_date=#{end_date}" if end_date
25
+ params << "artistId=#{artist_id}" if artist_id
26
+ params << "venueId=#{venue_id}" if venue_id
27
+ params << "api_key=#{@@api_key}"
28
+
29
+ url = URI.parse("#{API_URL}events?#{params.join("&")}")
30
+ get(url)
31
+ end
32
+
33
+ def get_artists(name:nil, id:nil)
34
+ params = []
35
+ params << "page=0"
36
+ params << "name=#{name}" if name
37
+ params << "id=#{id}" if id
38
+ params << "api_key=#{@@api_key}"
39
+
40
+ url = URI.parse("#{API_URL}artists?#{params.join("&")}")
41
+ get(url)
42
+ end
43
+
44
+
45
+ def get_venues(name:nil, id:nil, zip_code:nil)
46
+ params = []
47
+ params << "page=0"
48
+ params << "name=#{name}" if name
49
+ params << "id=#{id}" if id
50
+ params << "zipCode=#{zip_code}" if zip_code
51
+ params << "api_key=#{@@api_key}"
52
+
53
+ url = URI.parse("#{API_URL}venues?#{params.join("&")}")
54
+ get(url)
55
+ end
56
+ end
57
+
58
+
59
+ private
60
+
61
+ def get(url)
62
+ request = Net::HTTP::Get.new(url.to_s)
63
+ response = Net::HTTP.start(url.host, url.port) {|http|http.request(request)}
64
+ response.body
65
+ JSON.parse(response.body)
66
+ end
metadata ADDED
@@ -0,0 +1,86 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jambase
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Yanik J
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-01-01 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rspec
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '3.4'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '3.4'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rspec-mocks
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '3.4'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '3.4'
41
+ - !ruby/object:Gem::Dependency
42
+ name: pry
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '0.10'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '0.10'
55
+ description: A ruby wrapper for the JamBase api
56
+ email: yanikjay@gmail.com
57
+ executables: []
58
+ extensions: []
59
+ extra_rdoc_files: []
60
+ files:
61
+ - lib/jambase.rb
62
+ homepage: https://github.com/modernlegend/jambase
63
+ licenses:
64
+ - MIT
65
+ metadata: {}
66
+ post_install_message:
67
+ rdoc_options: []
68
+ require_paths:
69
+ - lib
70
+ required_ruby_version: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ required_rubygems_version: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - ">="
78
+ - !ruby/object:Gem::Version
79
+ version: '0'
80
+ requirements: []
81
+ rubyforge_project:
82
+ rubygems_version: 2.4.5
83
+ signing_key:
84
+ specification_version: 4
85
+ summary: Jambase
86
+ test_files: []