module HasProjects

HasProjects provides methods for a class to contain and query a set of projects

Public Instance Methods

all_project_resources() click to toggle source
# 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) click to toggle source

Factory for creating projects

# 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() click to toggle source
# File lib/geoengineer/utils/has_projects.rb, line 5
def projects
  @_projects ||= {}
end