Class: Miasma::Models::Orchestration::Stack::Resources

Inherits:
Types::Collection show all
Defined in:
lib/miasma/models/orchestration/resources.rb

Overview

Abstract stack resources collection

Instance Attribute Summary collapse

Attributes inherited from Types::Collection

#api

Instance Method Summary collapse

Methods inherited from Types::Collection

#all, #from_json, #get, #reload, #to_json

Methods included from Utils::Memoization

#_memo, #clear_memoizations!, #memoize, #unmemoize

Constructor Details

#initialize(stack) ⇒ Resources

Override to capture originating stack

Parameters:



17
18
19
20
# File 'lib/miasma/models/orchestration/resources.rb', line 17

def initialize(stack)
  @stack = stack
  super stack.api
end

Instance Attribute Details

#stackMiasma::Models::Orchestration::Stack (readonly)



12
13
14
# File 'lib/miasma/models/orchestration/resources.rb', line 12

def stack
  @stack
end

Instance Method Details

#build(args = {}) ⇒ Resource

Build a new resource instance

Parameters:

  • args (Hash) (defaults to: {})

    creation options

Returns:



34
35
36
# File 'lib/miasma/models/orchestration/resources.rb', line 34

def build(args={})
  Resource.new(stack, args.to_smash)
end

#filter(options = {}) ⇒ Array<Resources>

Return resources matching given filter

Parameters:

  • options (Hash) (defaults to: {})

    filter options

Returns:

Raises:

  • (NotImplementedError)


26
27
28
# File 'lib/miasma/models/orchestration/resources.rb', line 26

def filter(options={})
  raise NotImplementedError
end

#modelResource

Returns collection item class.

Returns:



39
40
41
# File 'lib/miasma/models/orchestration/resources.rb', line 39

def model
  Resource
end