Module: HasProjects
- Included in:
- GeoEngineer::Environment
- Defined in:
- lib/geoengineer/utils/has_projects.rb
Overview
HasProjects provides methods for a class to contain and query a set of projects
Instance Method Summary collapse
- #all_project_resources ⇒ Object
-
#create_project(org, name, &block) ⇒ Object
Factory for creating projects.
- #projects ⇒ Object
Instance Method Details
#all_project_resources ⇒ Object
20 21 22 |
# File 'lib/geoengineer/utils/has_projects.rb', line 20 def all_project_resources projects.values.map(&:all_resources).flatten end |
#create_project(org, name, &block) ⇒ Object
Factory for creating projects
10 11 12 13 14 15 16 17 18 |
# File 'lib/geoengineer/utils/has_projects.rb', line 10 def create_project(org, name, &block) # do not add the project a second time repository = "#{org}/#{name}" return projects[repository] if projects.key?(repository) proj = GeoEngineer::Project.new(org, name, self, &block) projects[repository] = proj proj end |
#projects ⇒ Object
5 6 7 |
# File 'lib/geoengineer/utils/has_projects.rb', line 5 def projects @_projects ||= {} end |