Class: SDM::RedshiftServerlessIAM

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(bind_interface: nil, database: nil, egress_filter: nil, healthy: nil, hostname: nil, id: nil, name: nil, override_database: nil, port: nil, port_override: nil, proxy_cluster_id: nil, region: nil, role_assumption_arn: nil, secret_store_id: nil, subdomain: nil, tags: nil, workgroup: nil) ⇒ RedshiftServerlessIAM

Returns a new instance of RedshiftServerlessIAM.



13478
13479
13480
13481
13482
13483
13484
13485
13486
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13503
13504
13505
13506
13507
13508
13509
13510
13511
13512
13513
13514
# File 'lib/models/porcelain.rb', line 13478

def initialize(
  bind_interface: nil,
  database: nil,
  egress_filter: nil,
  healthy: nil,
  hostname: nil,
  id: nil,
  name: nil,
  override_database: nil,
  port: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  region: nil,
  role_assumption_arn: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil,
  workgroup: nil
)
  @bind_interface = bind_interface == nil ? "" : bind_interface
  @database = database == nil ? "" : database
  @egress_filter = egress_filter == nil ? "" : egress_filter
  @healthy = healthy == nil ? false : healthy
  @hostname = hostname == nil ? "" : hostname
  @id = id == nil ? "" : id
  @name = name == nil ? "" : name
  @override_database = override_database == nil ? false : override_database
  @port = port == nil ? 0 : port
  @port_override = port_override == nil ? 0 : port_override
  @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
  @region = region == nil ? "" : region
  @role_assumption_arn = role_assumption_arn == nil ? "" : role_assumption_arn
  @secret_store_id = secret_store_id == nil ? "" : secret_store_id
  @subdomain = subdomain == nil ? "" : subdomain
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
  @workgroup = workgroup == nil ? "" : workgroup
end

Instance Attribute Details

#bind_interfaceObject

The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided and may also be set to one of the ResourceIPAllocationMode constants to select between VNM, loopback, or default allocation.



13444
13445
13446
# File 'lib/models/porcelain.rb', line 13444

def bind_interface
  @bind_interface
end

#databaseObject

The initial database to connect to. This setting does not by itself prevent switching to another database after connecting.



13446
13447
13448
# File 'lib/models/porcelain.rb', line 13446

def database
  @database
end

#egress_filterObject

A filter applied to the routing logic to pin datasource to nodes.



13448
13449
13450
# File 'lib/models/porcelain.rb', line 13448

def egress_filter
  @egress_filter
end

#healthyObject

True if the datasource is reachable and the credentials are valid.



13450
13451
13452
# File 'lib/models/porcelain.rb', line 13450

def healthy
  @healthy
end

#hostnameObject

The host to dial to initiate a connection from the egress node to this resource.



13452
13453
13454
# File 'lib/models/porcelain.rb', line 13452

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



13454
13455
13456
# File 'lib/models/porcelain.rb', line 13454

def id
  @id
end

#nameObject

Unique human-readable name of the Resource.



13456
13457
13458
# File 'lib/models/porcelain.rb', line 13456

def name
  @name
end

#override_databaseObject

If set, the database configured cannot be changed by users. This setting is not recommended for most use cases, as some clients will insist their database has changed when it has not, leading to user confusion.



13458
13459
13460
# File 'lib/models/porcelain.rb', line 13458

def override_database
  @override_database
end

#portObject

The port to dial to initiate a connection from the egress node to this resource.



13460
13461
13462
# File 'lib/models/porcelain.rb', line 13460

def port
  @port
end

#port_overrideObject

The local port used by clients to connect to this resource. It is automatically generated if not provided on create and may be re-generated on update by specifying a value of -1.



13462
13463
13464
# File 'lib/models/porcelain.rb', line 13462

def port_override
  @port_override
end

#proxy_cluster_idObject

ID of the proxy cluster for this resource, if any.



13464
13465
13466
# File 'lib/models/porcelain.rb', line 13464

def proxy_cluster_id
  @proxy_cluster_id
end

#regionObject

The AWS region to connect to.



13466
13467
13468
# File 'lib/models/porcelain.rb', line 13466

def region
  @region
end

#role_assumption_arnObject

If provided, the gateway/relay will try to assume this role instead of the underlying compute's role.



13468
13469
13470
# File 'lib/models/porcelain.rb', line 13468

def role_assumption_arn
  @role_assumption_arn
end

#secret_store_idObject

ID of the secret store containing credentials for this resource, if any.



13470
13471
13472
# File 'lib/models/porcelain.rb', line 13470

def secret_store_id
  @secret_store_id
end

#subdomainObject

DNS subdomain through which this resource may be accessed on clients. (e.g. "app-prod1" allows the resource to be accessed at "app-prod1.your-org-name.sdm-proxy-domain"). Only applicable to HTTP-based resources or resources using virtual networking mode.



13472
13473
13474
# File 'lib/models/porcelain.rb', line 13472

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



13474
13475
13476
# File 'lib/models/porcelain.rb', line 13474

def tags
  @tags
end

#workgroupObject

Workgroup name in the serverless Redshift



13476
13477
13478
# File 'lib/models/porcelain.rb', line 13476

def workgroup
  @workgroup
end

Instance Method Details

#to_json(options = {}) ⇒ Object



13516
13517
13518
13519
13520
13521
13522
# File 'lib/models/porcelain.rb', line 13516

def to_json(options = {})
  hash = {}
  self.instance_variables.each do |var|
    hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
  end
  hash.to_json
end