Class: AWSCDK::GlobalAccelerator::CfnAcceleratorProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
global_accelerator/cfn_accelerator_props.rb

Overview

Properties for defining a CfnAccelerator.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, enabled: nil, flow_logs_enabled: nil, flow_logs_s3_bucket: nil, flow_logs_s3_prefix: nil, ip_addresses: nil, ip_address_type: nil, tags: nil) ⇒ CfnAcceleratorProps

Returns a new instance of CfnAcceleratorProps.

Parameters:

  • name (String)

    The name of the accelerator.

  • enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Indicates whether the accelerator is enabled. The value is true or false. The default value is true.

  • flow_logs_enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Indicates whether flow logs are enabled for the accelerator.

  • flow_logs_s3_bucket (String, nil) (defaults to: nil)

    The name of the Amazon S3 bucket for the flow logs.

  • flow_logs_s3_prefix (String, nil) (defaults to: nil)

    The prefix for the location in the Amazon S3 bucket for the flow logs.

  • ip_addresses (Array<String>, nil) (defaults to: nil)

    Optionally, if you've added your own IP address pool to Global Accelerator (BYOIP), you can choose IP addresses from your own pool to use for the accelerator's static IP addresses when you create an accelerator.

  • ip_address_type (String, nil) (defaults to: nil)

    The IP address type that an accelerator supports.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    Create tags for an accelerator.



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'global_accelerator/cfn_accelerator_props.rb', line 17

def initialize(name:, enabled: nil, flow_logs_enabled: nil, flow_logs_s3_bucket: nil, flow_logs_s3_prefix: nil, ip_addresses: nil, ip_address_type: nil, tags: nil)
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @enabled = enabled
  Jsii::Type.check_type(@enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enabled") unless @enabled.nil?
  @flow_logs_enabled = flow_logs_enabled
  Jsii::Type.check_type(@flow_logs_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "flowLogsEnabled") unless @flow_logs_enabled.nil?
  @flow_logs_s3_bucket = flow_logs_s3_bucket
  Jsii::Type.check_type(@flow_logs_s3_bucket, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "flowLogsS3Bucket") unless @flow_logs_s3_bucket.nil?
  @flow_logs_s3_prefix = flow_logs_s3_prefix
  Jsii::Type.check_type(@flow_logs_s3_prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "flowLogsS3Prefix") unless @flow_logs_s3_prefix.nil?
  @ip_addresses = ip_addresses
  Jsii::Type.check_type(@ip_addresses, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "ipAddresses") unless @ip_addresses.nil?
  @ip_address_type = ip_address_type
  Jsii::Type.check_type(@ip_address_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ipAddressType") unless @ip_address_type.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#enabledBoolean, ... (readonly)

Note:

Default: - true

Indicates whether the accelerator is enabled. The value is true or false. The default value is true.

If the value is set to true, the accelerator cannot be deleted. If set to false, accelerator can be deleted.



50
51
52
# File 'global_accelerator/cfn_accelerator_props.rb', line 50

def enabled
  @enabled
end

#flow_logs_enabledBoolean, ... (readonly)

Note:

Default: - false

Indicates whether flow logs are enabled for the accelerator.



56
57
58
# File 'global_accelerator/cfn_accelerator_props.rb', line 56

def flow_logs_enabled
  @flow_logs_enabled
end

#flow_logs_s3_bucketString? (readonly)

The name of the Amazon S3 bucket for the flow logs.



61
62
63
# File 'global_accelerator/cfn_accelerator_props.rb', line 61

def flow_logs_s3_bucket
  @flow_logs_s3_bucket
end

#flow_logs_s3_prefixString? (readonly)

The prefix for the location in the Amazon S3 bucket for the flow logs.



66
67
68
# File 'global_accelerator/cfn_accelerator_props.rb', line 66

def flow_logs_s3_prefix
  @flow_logs_s3_prefix
end

#ip_address_typeString? (readonly)

Note:

Default: - "IPV4"

The IP address type that an accelerator supports.

For a standard accelerator, the value can be IPV4 or DUAL_STACK.



87
88
89
# File 'global_accelerator/cfn_accelerator_props.rb', line 87

def ip_address_type
  @ip_address_type
end

#ip_addressesArray<String>? (readonly)

Optionally, if you've added your own IP address pool to Global Accelerator (BYOIP), you can choose IP addresses from your own pool to use for the accelerator's static IP addresses when you create an accelerator.

You can specify one or two addresses, separated by a comma. Do not include the /32 suffix.

Only one IP address from each of your IP address ranges can be used for each accelerator. If you specify only one IP address from your IP address range, Global Accelerator assigns a second static IP address for the accelerator from the AWS IP address pool.

Note that you can't update IP addresses for an existing accelerator. To change them, you must create a new accelerator with the new addresses.

For more information, see Bring Your Own IP Addresses (BYOIP) in the AWS Global Accelerator Developer Guide .



79
80
81
# File 'global_accelerator/cfn_accelerator_props.rb', line 79

def ip_addresses
  @ip_addresses
end

#nameString (readonly)

The name of the accelerator.

The name must contain only alphanumeric characters or hyphens (-), and must not begin or end with a hyphen.



42
43
44
# File 'global_accelerator/cfn_accelerator_props.rb', line 42

def name
  @name
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

Create tags for an accelerator.

For more information, see Tagging in the AWS Global Accelerator Developer Guide .



94
95
96
# File 'global_accelerator/cfn_accelerator_props.rb', line 94

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



96
97
98
99
100
101
102
103
104
105
106
107
# File 'global_accelerator/cfn_accelerator_props.rb', line 96

def self.jsii_properties
  {
    :name => "name",
    :enabled => "enabled",
    :flow_logs_enabled => "flowLogsEnabled",
    :flow_logs_s3_bucket => "flowLogsS3Bucket",
    :flow_logs_s3_prefix => "flowLogsS3Prefix",
    :ip_addresses => "ipAddresses",
    :ip_address_type => "ipAddressType",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



109
110
111
112
113
114
115
116
117
118
119
120
121
122
# File 'global_accelerator/cfn_accelerator_props.rb', line 109

def to_jsii
  result = {}
  result.merge!({
    "name" => @name,
    "enabled" => @enabled,
    "flowLogsEnabled" => @flow_logs_enabled,
    "flowLogsS3Bucket" => @flow_logs_s3_bucket,
    "flowLogsS3Prefix" => @flow_logs_s3_prefix,
    "ipAddresses" => @ip_addresses,
    "ipAddressType" => @ip_address_type,
    "tags" => @tags,
  })
  result.compact
end