summaryrefslogtreecommitdiffstats
path: root/lib/band.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/band.rb')
-rw-r--r--lib/band.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/band.rb b/lib/band.rb
new file mode 100644
index 0000000..44d1e7c
--- /dev/null
+++ b/lib/band.rb
@@ -0,0 +1,26 @@
+require_relative 'contact'
+require_relative 'member'
+require_relative 'song'
+
+class Band
+ attr_reader :name, :city, :website, :label, :short_bio, :contact, :members, :songs
+
+ def initialize(params)
+ @name = params['name']
+ @city = params['city']
+ @website = params['website']
+ @label = params['label']
+ @short_bio = params['shortbio']
+ @contact = Contact.new(params['contact'])
+
+ @members = []
+ params['members'].each do |k, m|
+ @members << Member.new(m)
+ end
+
+ @songs = []
+ params['songs'].each do |k, s|
+ @songs << Song.new(s)
+ end
+ end
+end