Skip to content

Commit

Permalink
Move array from list into a module
Browse files Browse the repository at this point in the history
  • Loading branch information
tylercunnion committed Nov 24, 2012
1 parent e69a483 commit 236e6d7
Show file tree
Hide file tree
Showing 10 changed files with 28 additions and 26 deletions.
1 change: 1 addition & 0 deletions lib/crunchbase.rb
@@ -1,6 +1,7 @@
require 'crunchbase/api'
require 'crunchbase/cb_object'
require 'crunchbase/date_methods'
require 'crunchbase/array_from_list'
require 'crunchbase/milestone'
require 'crunchbase/company'
require 'crunchbase/financial_organization'
Expand Down
9 changes: 9 additions & 0 deletions lib/crunchbase/array_from_list.rb
@@ -0,0 +1,9 @@
module Crunchbase
module ArrayFromList
# Takes a list (directly from the JSON hash) and returns an
# array of instances of the class
def array_from_list(list)
list.map {|l| self.new(l) }
end
end
end
8 changes: 4 additions & 4 deletions lib/crunchbase/company.rb
Expand Up @@ -43,16 +43,16 @@ def initialize(json)
@overview = json["overview"]
@image = json["image"]
@products_list = json["products"]
@relationships = Relationship.array_from_relationship_list(json["relationships"]) if json["relationships"]
@relationships = Relationship.array_from_list(json["relationships"]) if json["relationships"]
@competitions = json["competitions"]
@providerships = Relationship.array_from_relationship_list(json["providerships"]) if json["providerships"]
@providerships = Relationship.array_from_list(json["providerships"]) if json["providerships"]
@total_money_raised = json["total_money_raised"]
@funding_rounds = json["funding_rounds"]
@investments = Investment.array_from_investment_list(json['investments']) if json['investments']
@investments = Investment.array_from_list(json['investments']) if json['investments']
@acquisition = json["acquisition"]
@acquisitions = json["acquisitions"]
@offices = json["offices"]
@milestones = Milestone.array_from_milestone_list(json["milestones"]) if json["milestones"]
@milestones = Milestone.array_from_list(json["milestones"]) if json["milestones"]
@ipo = json["ipo"]
@video_embeds = json["video_embeds"]
@screenshots = json["screenshots"]
Expand Down
8 changes: 4 additions & 4 deletions lib/crunchbase/financial_organization.rb
Expand Up @@ -36,10 +36,10 @@ def initialize(json)
@overview = json['overview']
@image = json['image']
@offices = json['offices']
@relationships = Relationship.array_from_relationship_list(json["relationships"]) if json["relationships"]
@investments = Investment.array_from_investment_list(json['investments']) if json['investments']
@milestones = Milestone.array_from_milestone_list(json['milestones']) if json['milestones']
@providerships = Relationship.array_from_relationship_list(json['providerships']) if json["providerships"]
@relationships = Relationship.array_from_list(json["relationships"]) if json["relationships"]
@investments = Investment.array_from_list(json['investments']) if json['investments']
@milestones = Milestone.array_from_list(json['milestones']) if json['milestones']
@providerships = Relationship.array_from_list(json['providerships']) if json["providerships"]
@funds = json['funds']
@video_embeds = json['video_embeds']
@external_links = json['external_links']
Expand Down
7 changes: 2 additions & 5 deletions lib/crunchbase/investment.rb
Expand Up @@ -2,15 +2,12 @@ module Crunchbase
class Investment

include Crunchbase::DateMethods
self.extend Crunchbase::ArrayFromList

attr_reader :funding_round_code, :funding_source_url,
:funding_source_description, :raised_amount, :raised_currency_code,
:company_name, :company_permalink

def self.array_from_investment_list(list)
list.map{|l| self.new(l)}
end

def initialize(hash)
hash = hash["funding_round"]
@funding_round_code = hash["round_code"]
Expand Down Expand Up @@ -38,4 +35,4 @@ def funded_date
end

end
end
end
7 changes: 1 addition & 6 deletions lib/crunchbase/milestone.rb
Expand Up @@ -5,12 +5,7 @@ class Milestone
:stoned_value_type, :stoned_acquirer

include Crunchbase::DateMethods

# Takes a relationship list (directly from the JSON hash) and returns an
# array of instances of Relationship subclasses.
def self.array_from_milestone_list(list)
list.map {|l| Milestone.new(l) }
end
self.extend Crunchbase::ArrayFromList

def initialize(obj)
@description = obj['description']
Expand Down
6 changes: 3 additions & 3 deletions lib/crunchbase/person.rb
Expand Up @@ -37,9 +37,9 @@ def initialize(json)
@updated_at = DateTime.parse(json["updated_at"])
@overview = json["overview"]

@relationships = Relationship.array_from_relationship_list(json["relationships"]) if json["relationships"]
@investments = Investment.array_from_investment_list(json["investments"]) if json["investments"]
@milestones = Milestones.array_from_milestone_list(json["milestones"]) if json["milestones"]
@relationships = Relationship.array_from_list(json["relationships"]) if json["relationships"]
@investments = Investment.array_from_list(json["investments"]) if json["investments"]
@milestones = Milestone.array_from_list(json["milestones"]) if json["milestones"]
@video_embeds = json["video_embeds"]
@external_links = json["external_links"]
@web_presences = json["web_presences"]
Expand Down
2 changes: 1 addition & 1 deletion lib/crunchbase/product.rb
Expand Up @@ -38,7 +38,7 @@ def initialize(json)
@image = json['image']
@company_permalink = json['company']['permalink']
@company_name = json['company']['name']
@milestones = Milestone.array_from_milestone_list(json['milestones']) if json['milestones']
@milestones = Milestone.array_from_list(json['milestones']) if json['milestones']
@video_embeds = json['video_embeds']
@external_links = json['external_links']
end
Expand Down
4 changes: 2 additions & 2 deletions lib/crunchbase/relationship.rb
Expand Up @@ -7,7 +7,7 @@ class Relationship

# Takes a relationship list (directly from the JSON hash) and returns an
# array of instances of Relationship subclasses.
def self.array_from_relationship_list(list)
def self.array_from_list(list)
list.map do |l|
if l["person"]
PersonRelationship.new(l)
Expand Down Expand Up @@ -37,4 +37,4 @@ def is_past?
@is_past
end
end
end
end
2 changes: 1 addition & 1 deletion lib/crunchbase/service_provider.rb
Expand Up @@ -22,7 +22,7 @@ def initialize(json)
@overview = json["overview"]
@image = json["image"]
@offices = json["offices"]
@providerships = Relationship.array_from_relationship_list(json["providerships"]) if json["providerships"]
@providerships = Relationship.array_from_list(json["providerships"]) if json["providerships"]
@external_links = json["external_links"]
end

Expand Down

0 comments on commit 236e6d7

Please sign in to comment.