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.



1551
1552
1553
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1551

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>)


1457
1458
1459
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1457

def annotations
  @annotations
end

#create_timeString

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

Returns:

  • (String)


1462
1463
1464
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1462

def create_time
  @create_time
end

#delete_timeString

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

Returns:

  • (String)


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

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)


1472
1473
1474
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1472

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



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

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>)


1491
1492
1493
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1491

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)


1496
1497
1498
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1496

def endpoint_type
  @endpoint_type
end

#etagString

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

Returns:

  • (String)


1501
1502
1503
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1501

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)


1511
1512
1513
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1511

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)


1520
1521
1522
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1520

def reconciling
  @reconciling
end

#stateString

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

Returns:

  • (String)


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

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>)


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

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)


1544
1545
1546
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1544

def uid
  @uid
end

#update_timeString

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

Returns:

  • (String)


1549
1550
1551
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1549

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1556

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