Class: Dawn::App::Domains

Inherits:
Object
  • Object
show all
Includes:
BaseApi, Enumerable
Defined in:
lib/dawn/api/models/app/domains.rb

Overview

:nodoc:

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from BaseApi

included, #to_h

Methods included from BaseApi::RequestExtension

#request

Methods included from SafeExtension

#safe

Constructor Details

#initialize(app) ⇒ Domains

Returns a new instance of Domains.

Parameters:



15
16
17
# File 'lib/dawn/api/models/app/domains.rb', line 15

def initialize(app)
  @app = app
end

Instance Attribute Details

#appObject (readonly)

Returns the value of attribute app.



10
11
12
# File 'lib/dawn/api/models/app/domains.rb', line 10

def app
  @app
end

Instance Method Details

#all(options = {}) ⇒ Array<Dawn::Domain>

Returns:



48
49
50
51
52
53
# File 'lib/dawn/api/models/app/domains.rb', line 48

def all(options={})
  get(
    path: "/apps/#{app.id}/domains",
    query: options
  ).map { |hsh| Domain.new(hsh["domain"]).tap { |d| d.app = @app } }
end

#create(options) ⇒ Dawn::Domain

Returns:



36
37
38
39
40
41
42
43
# File 'lib/dawn/api/models/app/domains.rb', line 36

def create(options)
  options.fetch(:domain)

  Domain.new(post(
    path: "/apps/#{app.id}/domains",
    body: options.to_json
  )["domain"]).tap { |d| d.app = @app }
end

#destroy(options) ⇒ Object



62
63
64
# File 'lib/dawn/api/models/app/domains.rb', line 62

def destroy(options)
  Domain.destroy(options)
end

#each({ |domain| do_stuff_with_domain }) ⇒ Object



29
30
31
# File 'lib/dawn/api/models/app/domains.rb', line 29

def each(&block)
  all.each(&block)
end

#find(options) ⇒ Dawn::Domain

Returns:



58
59
60
# File 'lib/dawn/api/models/app/domains.rb', line 58

def find(options)
  Domain.find(options).tap { |d| d.app = @app }
end

#to_aArray<Dawn::Domain>

Returns:



22
23
24
# File 'lib/dawn/api/models/app/domains.rb', line 22

def to_a
  all
end