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.



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

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


1432
1433
1434
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1432

def annotations
  @annotations
end

#create_timeString

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

Returns:

  • (String)


1437
1438
1439
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1437

def create_time
  @create_time
end

#delete_timeString

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

Returns:

  • (String)


1442
1443
1444
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1442

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)


1447
1448
1449
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1447

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



1453
1454
1455
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1453

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


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

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)


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

def endpoint_type
  @endpoint_type
end

#etagString

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

Returns:

  • (String)


1476
1477
1478
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1476

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)


1486
1487
1488
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1486

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)


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

def reconciling
  @reconciling
end

#stateString

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

Returns:

  • (String)


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

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


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

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)


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

def uid
  @uid
end

#update_timeString

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

Returns:

  • (String)


1524
1525
1526
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1524

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
# File 'lib/google/apis/alloydb_v1beta/classes.rb', line 1531

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