Class: AWSCDK::ElasticLoadBalancingv2::BaseApplicationListenerRuleProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
elastic_load_balancingv2/base_application_listener_rule_props.rb

Overview

Basic properties for defining a rule on a listener.

Direct Known Subclasses

ApplicationListenerRuleProps

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(priority:, action: nil, conditions: nil, target_groups: nil) ⇒ BaseApplicationListenerRuleProps

Returns a new instance of BaseApplicationListenerRuleProps.

Parameters:



11
12
13
14
15
16
17
18
19
20
# File 'elastic_load_balancingv2/base_application_listener_rule_props.rb', line 11

def initialize(priority:, action: nil, conditions: nil, target_groups: nil)
  @priority = priority
  Jsii::Type.check_type(@priority, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "priority")
  @action = action
  Jsii::Type.check_type(@action, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mi5MaXN0ZW5lckFjdGlvbiJ9")), "action") unless @action.nil?
  @conditions = conditions
  Jsii::Type.check_type(@conditions, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbGFzdGljbG9hZGJhbGFuY2luZ3YyLkxpc3RlbmVyQ29uZGl0aW9uIn0sImtpbmQiOiJhcnJheSJ9fQ==")), "conditions") unless @conditions.nil?
  @target_groups = target_groups
  Jsii::Type.check_type(@target_groups, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbGFzdGljbG9hZGJhbGFuY2luZ3YyLklBcHBsaWNhdGlvblRhcmdldEdyb3VwIn0sImtpbmQiOiJhcnJheSJ9fQ==")), "targetGroups") unless @target_groups.nil?
end

Instance Attribute Details

#actionAWSCDK::ElasticLoadBalancingv2::ListenerAction? (readonly)

Note:

Default: - No action

Action to perform when requests are received.

Only one of action, fixed_response, redirect_response or target_groups can be specified.



36
37
38
# File 'elastic_load_balancingv2/base_application_listener_rule_props.rb', line 36

def action
  @action
end

#conditionsArray<AWSCDK::ElasticLoadBalancingv2::ListenerCondition>? (readonly)

Note:

Default: - No conditions.

Rule applies if matches the conditions.



42
43
44
# File 'elastic_load_balancingv2/base_application_listener_rule_props.rb', line 42

def conditions
  @conditions
end

#priorityNumeric (readonly)

Priority of the rule.

The rule with the lowest priority will be used for every request.

Priorities must be unique.

Returns:

  • (Numeric)


29
30
31
# File 'elastic_load_balancingv2/base_application_listener_rule_props.rb', line 29

def priority
  @priority
end

#target_groupsArray<AWSCDK::ElasticLoadBalancingv2::IApplicationTargetGroup>? (readonly)

Note:

Default: - No target groups.

Target groups to forward requests to.

Only one of action, fixed_response, redirect_response or target_groups can be specified.

Implies a forward action.



51
52
53
# File 'elastic_load_balancingv2/base_application_listener_rule_props.rb', line 51

def target_groups
  @target_groups
end

Class Method Details

.jsii_propertiesObject



53
54
55
56
57
58
59
60
# File 'elastic_load_balancingv2/base_application_listener_rule_props.rb', line 53

def self.jsii_properties
  {
    :priority => "priority",
    :action => "action",
    :conditions => "conditions",
    :target_groups => "targetGroups",
  }
end

Instance Method Details

#to_jsiiObject



62
63
64
65
66
67
68
69
70
71
# File 'elastic_load_balancingv2/base_application_listener_rule_props.rb', line 62

def to_jsii
  result = {}
  result.merge!({
    "priority" => @priority,
    "action" => @action,
    "conditions" => @conditions,
    "targetGroups" => @target_groups,
  })
  result.compact
end