Class: Google::Apis::AlloydbV1beta::Endpoint

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/alloydb_v1beta/classes.rb,
lib/google/apis/alloydb_v1beta/representations.rb,
lib/google/apis/alloydb_v1beta/representations.rb

Overview

Endpoint resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Endpoint

Returns a new instance of Endpoint.



1539
1540
1541
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1539

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#annotationsHash<String,String>

Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 Corresponds to the JSON property annotations

Returns:

  • (Hash<String,String>)


1445
1446
1447
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1445

def annotations
  @annotations
end

#create_timeString

Output only. Create time stamp Corresponds to the JSON property createTime

Returns:

  • (String)


1450
1451
1452
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1450

def create_time
  @create_time
end

#delete_timeString

Output only. Delete time stamp Corresponds to the JSON property deleteTime

Returns:

  • (String)


1455
1456
1457
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1455

def delete_time
  @delete_time
end

#display_nameString

User-settable and human-readable display name for the Endpoint. Corresponds to the JSON property displayName

Returns:

  • (String)


1460
1461
1462
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1460

def display_name
  @display_name
end

#dns_configGoogle::Apis::AlloydbV1beta::DnsConfig

The DNS config for the endpoint, containing the DNS record name, type and targets. Corresponds to the JSON property dnsConfig



1466
1467
1468
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1466

def dns_config
  @dns_config
end

#effective_target_instancesArray<String>

Output only. The effective target instances that the endpoint is associated with. This is a list of target instance names, e.g. projects/project_number/ locations/location/clusters/cluster_id/instances/instance_id For write endpoint, there is only one effective target instance which has to be a primary instance. Effective target instances are only different from target instances after a switchover or cross-region failover operation. Otherwise, effective_target_instances are the same as target_instances. Note that after a cross-region failover operation, the effective_target_instances can be stale until the operation to update the endpoint is complete. Corresponds to the JSON property effectiveTargetInstances

Returns:

  • (Array<String>)


1479
1480
1481
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1479

def effective_target_instances
  @effective_target_instances
end

#endpoint_typeString

The type of the endpoint, either write or read. Corresponds to the JSON property endpointType

Returns:

  • (String)


1484
1485
1486
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1484

def endpoint_type
  @endpoint_type
end

#etagString

For Resource freshness validation (https://google.aip.dev/154) Corresponds to the JSON property etag

Returns:

  • (String)


1489
1490
1491
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1489

def etag
  @etag
end

#nameString

Output only. Identifier. The name of the endpoint resource with the format: * projects/project/locations/region/endpoints/endpoint_id where the endpoint ID segment should satisfy the regex expression [a-z0-9-]+. For more details see https://google.aip.dev/122. The prefix of the endpoint resource name is the name of the parent resource: * projects/project/locations/ region Corresponds to the JSON property name

Returns:

  • (String)


1499
1500
1501
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1499

def name
  @name
end

#reconcilingBoolean Also known as: reconciling?

Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Endpoint does not match the user's intended state, and the service is actively updating the Endpoint to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance. Corresponds to the JSON property reconciling

Returns:

  • (Boolean)


1508
1509
1510
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1508

def reconciling
  @reconciling
end

#stateString

Output only. The state of the endpoint. Corresponds to the JSON property state

Returns:

  • (String)


1514
1515
1516
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1514

def state
  @state
end

#target_instancesArray<String>

The names of the target instances for the endpoint, should be of format projects/project/locations/region/clusters/cluster/instances/instance. For write endpoint, there is only one target instance which has to be a primary instance. For read endpoint, there can be multiple target instances which can be read or secondary instances. After a cross-region failover or switchover operation, the endpoint will be associated with a different target instance. This change will be reflected in the effective_target_instances field. Corresponds to the JSON property targetInstances

Returns:

  • (Array<String>)


1526
1527
1528
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1526

def target_instances
  @target_instances
end

#uidString

Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. Corresponds to the JSON property uid

Returns:

  • (String)


1532
1533
1534
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1532

def uid
  @uid
end

#update_timeString

Output only. Update time stamp Corresponds to the JSON property updateTime

Returns:

  • (String)


1537
1538
1539
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1537

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1544

def update!(**args)
  @annotations = args[:annotations] if args.key?(:annotations)
  @create_time = args[:create_time] if args.key?(:create_time)
  @delete_time = args[:delete_time] if args.key?(:delete_time)
  @display_name = args[:display_name] if args.key?(:display_name)
  @dns_config = args[:dns_config] if args.key?(:dns_config)
  @effective_target_instances = args[:effective_target_instances] if args.key?(:effective_target_instances)
  @endpoint_type = args[:endpoint_type] if args.key?(:endpoint_type)
  @etag = args[:etag] if args.key?(:etag)
  @name = args[:name] if args.key?(:name)
  @reconciling = args[:reconciling] if args.key?(:reconciling)
  @state = args[:state] if args.key?(:state)
  @target_instances = args[:target_instances] if args.key?(:target_instances)
  @uid = args[:uid] if args.key?(:uid)
  @update_time = args[:update_time] if args.key?(:update_time)
end