class CF::Domain::Map

Public Instance Methods

map_domain() click to toggle source
# File lib/cf/cli/domain/map.rb, line 16
def map_domain
  domain = client.domain_by_name(input[:name])

  given_org = input.has?(:organization)
  given_space = input.has?(:space)

  org = input[:organization]
  space = input[:space]

  given_space = true unless given_org || given_space

  unless domain
    domain = client.domain
    domain.name = input[:name]
    domain.owning_organization = org unless input[:shared]
    domain.wildcard = true

    with_progress("Creating domain #{c(domain.name, :name)}") do
      domain.create!
      org.add_domain(domain) if org && !given_org && !given_space
    end
  end

  if given_space
    add_domain(domain, space.organization)
    add_domain(domain, space)
  elsif given_org
    add_domain(domain, org)
  end
end

Private Instance Methods

add_domain(domain, target) click to toggle source
# File lib/cf/cli/domain/map.rb, line 49
def add_domain(domain, target)
  with_progress("Mapping #{c(domain.name, :name)} to #{c(target.name, :name)}") do
    target.add_domain(domain)
  end
end