Class: Humidifier::SdkPayload
- Inherits:
-
Object
- Object
- Humidifier::SdkPayload
- Extended by:
- Forwardable
- Defined in:
- lib/humidifier/sdk_payload.rb
Overview
The payload sent to the shim methods, representing the stack and the options
Defined Under Namespace
Classes: TemplateTooLargeError
Constant Summary collapse
- MAX_TEMPLATE_BODY_SIZE =
The maximum size a template body can be before it has to be put somewhere and referenced through a URL
51_200
- MAX_TEMPLATE_URL_SIZE =
The maximum size a template body can be inside of an S3 bucket
460_800
- MAX_WAIT =
The maximum amount of time that Humidifier should wait for a stack to complete a CRUD operation
600
Instance Attribute Summary collapse
-
#max_wait ⇒ Object
Returns the value of attribute max_wait.
-
#options ⇒ Object
Returns the value of attribute options.
-
#stack ⇒ Object
Returns the value of attribute stack.
Instance Method Summary collapse
-
#==(other) ⇒ Object
True if the stack and options are the same as the other (used for testing).
-
#create_change_set_params ⇒ Object
Param set for the #create_change_set SDK method.
-
#create_params ⇒ Object
Param set for the #create_stack SDK method.
-
#delete_params ⇒ Object
Param set for the #delete_stack SDK method.
-
#initialize(stack, options) ⇒ SdkPayload
constructor
A new instance of SdkPayload.
-
#merge(new_options) ⇒ Object
Merge in options.
-
#template_body ⇒ Object
The body of the template.
-
#update_params ⇒ Object
Param set for the #update_stack SDK method.
-
#validate_params ⇒ Object
Param set for the #validate_template SDK method.
Constructor Details
#initialize(stack, options) ⇒ SdkPayload
Returns a new instance of SdkPayload.
29 30 31 32 33 |
# File 'lib/humidifier/sdk_payload.rb', line 29 def initialize(stack, ) self.stack = stack self. = self.max_wait = .delete(:max_wait) || MAX_WAIT end |
Instance Attribute Details
#max_wait ⇒ Object
Returns the value of attribute max_wait.
24 25 26 |
# File 'lib/humidifier/sdk_payload.rb', line 24 def max_wait @max_wait end |
#options ⇒ Object
Returns the value of attribute options.
24 25 26 |
# File 'lib/humidifier/sdk_payload.rb', line 24 def @options end |
#stack ⇒ Object
Returns the value of attribute stack.
24 25 26 |
# File 'lib/humidifier/sdk_payload.rb', line 24 def stack @stack end |
Instance Method Details
#==(other) ⇒ Object
True if the stack and options are the same as the other (used for testing)
36 37 38 |
# File 'lib/humidifier/sdk_payload.rb', line 36 def ==(other) stack == other.stack && == other. end |
#create_change_set_params ⇒ Object
Param set for the #create_change_set SDK method
55 56 57 |
# File 'lib/humidifier/sdk_payload.rb', line 55 def create_change_set_params { stack_name: stack.identifier }.merge(template_param).merge() end |
#create_params ⇒ Object
Param set for the #create_stack SDK method
60 61 62 |
# File 'lib/humidifier/sdk_payload.rb', line 60 def create_params { stack_name: stack.name }.merge(template_param).merge() end |
#delete_params ⇒ Object
Param set for the #delete_stack SDK method
65 66 67 |
# File 'lib/humidifier/sdk_payload.rb', line 65 def delete_params { stack_name: stack.identifier }.merge() end |
#merge(new_options) ⇒ Object
Merge in options
41 42 43 |
# File 'lib/humidifier/sdk_payload.rb', line 41 def merge() self. = .merge() end |
#template_body ⇒ Object
The body of the template
46 47 48 |
# File 'lib/humidifier/sdk_payload.rb', line 46 def template_body @template_body ||= stack.to_cf end |
#update_params ⇒ Object
Param set for the #update_stack SDK method
70 71 72 |
# File 'lib/humidifier/sdk_payload.rb', line 70 def update_params { stack_name: stack.identifier }.merge(template_param).merge() end |
#validate_params ⇒ Object
Param set for the #validate_template SDK method
75 76 77 |
# File 'lib/humidifier/sdk_payload.rb', line 75 def validate_params template_param.merge() end |