google-cloud-service_directory-v1beta1 0.6.0 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -83,6 +83,23 @@ module Google
83
83
  "projects/#{project}/locations/#{location}/namespaces/#{namespace}"
84
84
  end
85
85
 
86
+ ##
87
+ # Create a fully-qualified Network resource string.
88
+ #
89
+ # The resource will be in the following format:
90
+ #
91
+ # `projects/{project}/locations/global/networks/{network}`
92
+ #
93
+ # @param project [String]
94
+ # @param network [String]
95
+ #
96
+ # @return [::String]
97
+ def network_path project:, network:
98
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
99
+
100
+ "projects/#{project}/locations/global/networks/#{network}"
101
+ end
102
+
86
103
  ##
87
104
  # Create a fully-qualified Service resource string.
88
105
  #
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module ServiceDirectory
23
23
  module V1beta1
24
- VERSION = "0.6.0"
24
+ VERSION = "0.7.2"
25
25
  end
26
26
  end
27
27
  end
@@ -5,6 +5,7 @@ require 'google/protobuf'
5
5
 
6
6
  require 'google/api/field_behavior_pb'
7
7
  require 'google/api/resource_pb'
8
+ require 'google/protobuf/timestamp_pb'
8
9
  require 'google/api/annotations_pb'
9
10
  Google::Protobuf::DescriptorPool.generated_pool.build do
10
11
  add_file("google/cloud/servicedirectory/v1beta1/endpoint.proto", :syntax => :proto3) do
@@ -13,6 +14,9 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
13
14
  optional :address, :string, 2
14
15
  optional :port, :int32, 3
15
16
  map :metadata, :string, :string, 4
17
+ optional :network, :string, 5
18
+ optional :create_time, :message, 6, "google.protobuf.Timestamp"
19
+ optional :update_time, :message, 7, "google.protobuf.Timestamp"
16
20
  end
17
21
  end
18
22
  end
@@ -5,12 +5,15 @@ require 'google/protobuf'
5
5
 
6
6
  require 'google/api/field_behavior_pb'
7
7
  require 'google/api/resource_pb'
8
+ require 'google/protobuf/timestamp_pb'
8
9
  require 'google/api/annotations_pb'
9
10
  Google::Protobuf::DescriptorPool.generated_pool.build do
10
11
  add_file("google/cloud/servicedirectory/v1beta1/namespace.proto", :syntax => :proto3) do
11
12
  add_message "google.cloud.servicedirectory.v1beta1.Namespace" do
12
13
  optional :name, :string, 1
13
14
  map :labels, :string, :string, 2
15
+ optional :create_time, :message, 4, "google.protobuf.Timestamp"
16
+ optional :update_time, :message, 5, "google.protobuf.Timestamp"
14
17
  end
15
18
  end
16
19
  end
@@ -47,7 +47,7 @@ module Google
47
47
  self.unmarshal_class_method = :decode
48
48
  self.service_name = 'google.cloud.servicedirectory.v1beta1.RegistrationService'
49
49
 
50
- # Creates a namespace, and returns the new Namespace.
50
+ # Creates a namespace, and returns the new namespace.
51
51
  rpc :CreateNamespace, ::Google::Cloud::ServiceDirectory::V1beta1::CreateNamespaceRequest, ::Google::Cloud::ServiceDirectory::V1beta1::Namespace
52
52
  # Lists all namespaces.
53
53
  rpc :ListNamespaces, ::Google::Cloud::ServiceDirectory::V1beta1::ListNamespacesRequest, ::Google::Cloud::ServiceDirectory::V1beta1::ListNamespacesResponse
@@ -58,7 +58,7 @@ module Google
58
58
  # Deletes a namespace. This also deletes all services and endpoints in
59
59
  # the namespace.
60
60
  rpc :DeleteNamespace, ::Google::Cloud::ServiceDirectory::V1beta1::DeleteNamespaceRequest, ::Google::Protobuf::Empty
61
- # Creates a service, and returns the new Service.
61
+ # Creates a service, and returns the new service.
62
62
  rpc :CreateService, ::Google::Cloud::ServiceDirectory::V1beta1::CreateServiceRequest, ::Google::Cloud::ServiceDirectory::V1beta1::Service
63
63
  # Lists all services belonging to a namespace.
64
64
  rpc :ListServices, ::Google::Cloud::ServiceDirectory::V1beta1::ListServicesRequest, ::Google::Cloud::ServiceDirectory::V1beta1::ListServicesResponse
@@ -69,15 +69,15 @@ module Google
69
69
  # Deletes a service. This also deletes all endpoints associated with
70
70
  # the service.
71
71
  rpc :DeleteService, ::Google::Cloud::ServiceDirectory::V1beta1::DeleteServiceRequest, ::Google::Protobuf::Empty
72
- # Creates a endpoint, and returns the new Endpoint.
72
+ # Creates an endpoint, and returns the new endpoint.
73
73
  rpc :CreateEndpoint, ::Google::Cloud::ServiceDirectory::V1beta1::CreateEndpointRequest, ::Google::Cloud::ServiceDirectory::V1beta1::Endpoint
74
74
  # Lists all endpoints.
75
75
  rpc :ListEndpoints, ::Google::Cloud::ServiceDirectory::V1beta1::ListEndpointsRequest, ::Google::Cloud::ServiceDirectory::V1beta1::ListEndpointsResponse
76
- # Gets a endpoint.
76
+ # Gets an endpoint.
77
77
  rpc :GetEndpoint, ::Google::Cloud::ServiceDirectory::V1beta1::GetEndpointRequest, ::Google::Cloud::ServiceDirectory::V1beta1::Endpoint
78
- # Updates a endpoint.
78
+ # Updates an endpoint.
79
79
  rpc :UpdateEndpoint, ::Google::Cloud::ServiceDirectory::V1beta1::UpdateEndpointRequest, ::Google::Cloud::ServiceDirectory::V1beta1::Endpoint
80
- # Deletes a endpoint.
80
+ # Deletes an endpoint.
81
81
  rpc :DeleteEndpoint, ::Google::Cloud::ServiceDirectory::V1beta1::DeleteEndpointRequest, ::Google::Protobuf::Empty
82
82
  # Gets the IAM Policy for a resource (namespace or service only).
83
83
  rpc :GetIamPolicy, ::Google::Iam::V1::GetIamPolicyRequest, ::Google::Iam::V1::Policy
@@ -6,6 +6,7 @@ require 'google/protobuf'
6
6
  require 'google/api/field_behavior_pb'
7
7
  require 'google/api/resource_pb'
8
8
  require 'google/cloud/servicedirectory/v1beta1/endpoint_pb'
9
+ require 'google/protobuf/timestamp_pb'
9
10
  require 'google/api/annotations_pb'
10
11
  Google::Protobuf::DescriptorPool.generated_pool.build do
11
12
  add_file("google/cloud/servicedirectory/v1beta1/service.proto", :syntax => :proto3) do
@@ -13,6 +14,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
13
14
  optional :name, :string, 1
14
15
  map :metadata, :string, :string, 2
15
16
  repeated :endpoints, :message, 3, "google.cloud.servicedirectory.v1beta1.Endpoint"
17
+ optional :create_time, :message, 6, "google.protobuf.Timestamp"
18
+ optional :update_time, :message, 7, "google.protobuf.Timestamp"
16
19
  end
17
20
  end
18
21
  end
@@ -57,9 +57,15 @@ module Google
57
57
 
58
58
  # Denotes that a (repeated) field is an unordered list.
59
59
  # This indicates that the service may provide the elements of the list
60
- # in any arbitrary order, rather than the order the user originally
60
+ # in any arbitrary order, rather than the order the user originally
61
61
  # provided. Additionally, the list's order may or may not be stable.
62
62
  UNORDERED_LIST = 6
63
+
64
+ # Denotes that this field returns a non-empty default value if not set.
65
+ # This indicates that if the user provides the empty value in a request,
66
+ # a non-empty value will be returned. The user will not be aware of what
67
+ # non-empty value to expect.
68
+ NON_EMPTY_DEFAULT = 7
63
69
  end
64
70
  end
65
71
  end
@@ -27,26 +27,62 @@ module Google
27
27
  # @!attribute [rw] name
28
28
  # @return [::String]
29
29
  # Immutable. The resource name for the endpoint in the format
30
- # 'projects/*/locations/*/namespaces/*/services/*/endpoints/*'.
30
+ # `projects/*/locations/*/namespaces/*/services/*/endpoints/*`.
31
31
  # @!attribute [rw] address
32
32
  # @return [::String]
33
- # Optional. An IPv4 or IPv6 address. Service Directory will reject bad
34
- # addresses like:
35
- # "8.8.8"
36
- # "8.8.8.8:53"
37
- # "test:bad:address"
38
- # "[::1]"
39
- # "[::1]:8080"
33
+ # Optional. An IPv4 or IPv6 address. Service Directory rejects bad addresses like:
34
+ #
35
+ # * `8.8.8`
36
+ # * `8.8.8.8:53`
37
+ # * `test:bad:address`
38
+ # * `[::1]`
39
+ # * `[::1]:8080`
40
+ #
40
41
  # Limited to 45 characters.
41
42
  # @!attribute [rw] port
42
43
  # @return [::Integer]
43
- # Optional. Service Directory will reject values outside of [0, 65535].
44
+ # Optional. Service Directory rejects values outside of `[0, 65535]`.
44
45
  # @!attribute [rw] metadata
45
46
  # @return [::Google::Protobuf::Map{::String => ::String}]
46
47
  # Optional. Metadata for the endpoint. This data can be consumed by service
47
- # clients. The entire metadata dictionary may contain up to 512 characters,
48
- # spread accoss all key-value pairs. Metadata that goes beyond any these
49
- # limits will be rejected.
48
+ # clients.
49
+ #
50
+ # Restrictions:
51
+ #
52
+ # * The entire metadata dictionary may contain up to 512 characters,
53
+ # spread accoss all key-value pairs. Metadata that goes beyond this
54
+ # limit are rejected
55
+ # * Valid metadata keys have two segments: an optional prefix and name,
56
+ # separated by a slash (/). The name segment is required and must be 63
57
+ # characters or less, beginning and ending with an alphanumeric character
58
+ # ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and
59
+ # alphanumerics between. The prefix is optional. If specified, the prefix
60
+ # must be a DNS subdomain: a series of DNS labels separated by dots (.),
61
+ # not longer than 253 characters in total, followed by a slash (/).
62
+ # Metadata that fails to meet these requirements are rejected
63
+ # * The `(*.)google.com/` and `(*.)googleapis.com/` prefixes are reserved
64
+ # for system metadata managed by Service Directory. If the user tries
65
+ # to write to these keyspaces, those entries are silently ignored by
66
+ # the system
67
+ #
68
+ # Note: This field is equivalent to the `annotations` field in the v1 API.
69
+ # They have the same syntax and read/write to the same location in Service
70
+ # Directory.
71
+ # @!attribute [rw] network
72
+ # @return [::String]
73
+ # Immutable. The Google Compute Engine network (VPC) of the endpoint in the format
74
+ # `projects/<project number>/locations/global/networks/*`.
75
+ #
76
+ # The project must be specified by project number (project id is rejected).
77
+ # Incorrectly formatted networks are rejected, but no other validation
78
+ # is performed on this field (ex. network or project existence, reachability,
79
+ # or permissions).
80
+ # @!attribute [r] create_time
81
+ # @return [::Google::Protobuf::Timestamp]
82
+ # Output only. The timestamp when the endpoint was created.
83
+ # @!attribute [r] update_time
84
+ # @return [::Google::Protobuf::Timestamp]
85
+ # Output only. The timestamp when the endpoint was last updated.
50
86
  class Endpoint
51
87
  include ::Google::Protobuf::MessageExts
52
88
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -35,22 +35,37 @@ module Google
35
35
  # @return [::String]
36
36
  # Optional. The filter applied to the endpoints of the resolved service.
37
37
  #
38
- # General filter string syntax:
39
- # <field> <operator> <value> (<logical connector>)
40
- # <field> can be "name" or "metadata.<key>" for map field.
41
- # <operator> can be "<, >, <=, >=, !=, =, :". Of which ":" means HAS and is
42
- # roughly the same as "=".
43
- # <value> must be the same data type as the field.
44
- # <logical connector> can be "AND, OR, NOT".
38
+ # General `filter` string syntax:
39
+ # `<field> <operator> <value> (<logical connector>)`
40
+ #
41
+ # * `<field>` can be `name`, `address`, `port`, or `metadata.<key>` for
42
+ # map field
43
+ # * `<operator>` can be `<`, `>`, `<=`, `>=`, `!=`, `=`, `:`. Of which `:`
44
+ # means `HAS`, and is roughly the same as `=`
45
+ # * `<value>` must be the same data type as field
46
+ # * `<logical connector>` can be `AND`, `OR`, `NOT`
45
47
  #
46
48
  # Examples of valid filters:
47
- # * "metadata.owner" returns Endpoints that have a label with the
48
- # key "owner", this is the same as "metadata:owner"
49
- # * "metadata.protocol=gRPC" returns Endpoints that have key/value
50
- # "protocol=gRPC"
51
- # * "metadata.owner!=sd AND metadata.foo=bar" returns
52
- # Endpoints that have "owner" field in metadata with a value that is not
53
- # "sd" AND have the key/value foo=bar.
49
+ #
50
+ # * `metadata.owner` returns endpoints that have a annotation with the key
51
+ # `owner`, this is the same as `metadata:owner`
52
+ # * `metadata.protocol=gRPC` returns endpoints that have key/value
53
+ # `protocol=gRPC`
54
+ # * `address=192.108.1.105` returns endpoints that have this address
55
+ # * `port>8080` returns endpoints that have port number larger than 8080
56
+ # *
57
+ # `name>projects/my-project/locations/us-east1/namespaces/my-namespace/services/my-service/endpoints/endpoint-c`
58
+ # returns endpoints that have name that is alphabetically later than the
59
+ # string, so "endpoint-e" is returned but "endpoint-a" is not
60
+ # * `metadata.owner!=sd AND metadata.foo=bar` returns endpoints that have
61
+ # `owner` in annotation key but value is not `sd` AND have key/value
62
+ # `foo=bar`
63
+ # * `doesnotexist.foo=bar` returns an empty list. Note that endpoint
64
+ # doesn't have a field called "doesnotexist". Since the filter does not
65
+ # match any endpoint, it returns no results
66
+ #
67
+ # For more information about filtering, see
68
+ # [API Filtering](https://aip.dev/160).
54
69
  class ResolveServiceRequest
55
70
  include ::Google::Protobuf::MessageExts
56
71
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -27,12 +27,18 @@ module Google
27
27
  # @!attribute [rw] name
28
28
  # @return [::String]
29
29
  # Immutable. The resource name for the namespace in the format
30
- # 'projects/*/locations/*/namespaces/*'.
30
+ # `projects/*/locations/*/namespaces/*`.
31
31
  # @!attribute [rw] labels
32
32
  # @return [::Google::Protobuf::Map{::String => ::String}]
33
- # Optional. Resource labels associated with this Namespace.
34
- # No more than 64 user labels can be associated with a given resource. Label
33
+ # Optional. Resource labels associated with this namespace.
34
+ # No more than 64 user labels can be associated with a given resource. Label
35
35
  # keys and values can be no longer than 63 characters.
36
+ # @!attribute [r] create_time
37
+ # @return [::Google::Protobuf::Timestamp]
38
+ # Output only. The timestamp when the namespace was created.
39
+ # @!attribute [r] update_time
40
+ # @return [::Google::Protobuf::Timestamp]
41
+ # Output only. The timestamp when the namespace was last updated.
36
42
  class Namespace
37
43
  include ::Google::Protobuf::MessageExts
38
44
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -46,8 +46,8 @@ module Google
46
46
  # The request message for {::Google::Cloud::ServiceDirectory::V1beta1::RegistrationService::Client#list_namespaces RegistrationService.ListNamespaces}.
47
47
  # @!attribute [rw] parent
48
48
  # @return [::String]
49
- # Required. The resource name of the project and location whose namespaces we'd like to
50
- # list.
49
+ # Required. The resource name of the project and location whose namespaces you'd like
50
+ # to list.
51
51
  # @!attribute [rw] page_size
52
52
  # @return [::Integer]
53
53
  # Optional. The maximum number of items to return.
@@ -56,40 +56,45 @@ module Google
56
56
  # Optional. The next_page_token value returned from a previous List request, if any.
57
57
  # @!attribute [rw] filter
58
58
  # @return [::String]
59
- # Optional. The filter to list result by.
59
+ # Optional. The filter to list results by.
60
+ #
61
+ # General `filter` string syntax:
62
+ # `<field> <operator> <value> (<logical connector>)`
60
63
  #
61
- # General filter string syntax:
62
- # <field> <operator> <value> (<logical connector>)
63
- # <field> can be "name", or "labels.<key>" for map field.
64
- # <operator> can be "<, >, <=, >=, !=, =, :". Of which ":" means HAS, and
65
- # is roughly the same as "=".
66
- # <value> must be the same data type as field.
67
- # <logical connector> can be "AND, OR, NOT".
64
+ # * `<field>` can be `name` or `labels.<key>` for map field
65
+ # * `<operator>` can be `<`, `>`, `<=`, `>=`, `!=`, `=`, `:`. Of which `:`
66
+ # means `HAS`, and is roughly the same as `=`
67
+ # * `<value>` must be the same data type as field
68
+ # * `<logical connector>` can be `AND`, `OR`, `NOT`
68
69
  #
69
70
  # Examples of valid filters:
70
- # * "labels.owner" returns Namespaces that have a label with the key "owner"
71
- # this is the same as "labels:owner".
72
- # * "labels.protocol=gRPC" returns Namespaces that have key/value
73
- # "protocol=gRPC".
74
- # * "name>projects/my-project/locations/us-east/namespaces/namespace-c"
75
- # returns Namespaces that have name that is alphabetically later than the
76
- # string, so "namespace-e" will be returned but "namespace-a" will not be.
77
- # * "labels.owner!=sd AND labels.foo=bar" returns Namespaces that have
78
- # "owner" in label key but value is not "sd" AND have key/value foo=bar.
79
- # * "doesnotexist.foo=bar" returns an empty list. Note that Namespace doesn't
80
- # have a field called "doesnotexist". Since the filter does not match any
81
- # Namespaces, it returns no results.
71
+ #
72
+ # * `labels.owner` returns namespaces that have a label with the key
73
+ # `owner`, this is the same as `labels:owner`
74
+ # * `labels.owner=sd` returns namespaces that have key/value `owner=sd`
75
+ # * `name>projects/my-project/locations/us-east1/namespaces/namespace-c`
76
+ # returns namespaces that have name that is alphabetically later than the
77
+ # string, so "namespace-e" is returned but "namespace-a" is not
78
+ # * `labels.owner!=sd AND labels.foo=bar` returns namespaces that have
79
+ # `owner` in label key but value is not `sd` AND have key/value `foo=bar`
80
+ # * `doesnotexist.foo=bar` returns an empty list. Note that namespace
81
+ # doesn't have a field called "doesnotexist". Since the filter does not
82
+ # match any namespaces, it returns no results
83
+ #
84
+ # For more information about filtering, see
85
+ # [API Filtering](https://aip.dev/160).
82
86
  # @!attribute [rw] order_by
83
87
  # @return [::String]
84
- # Optional. The order to list result by.
88
+ # Optional. The order to list results by.
89
+ #
90
+ # General `order_by` string syntax: `<field> (<asc|desc>) (,)`
85
91
  #
86
- # General order by string syntax:
87
- # <field> (<asc|desc>) (,)
88
- # <field> allows values \\{"name"}
89
- # <asc/desc> ascending or descending order by <field>. If this is left
90
- # blank, "asc" is used.
91
- # Note that an empty order_by string result in default order, which is order
92
- # by name in ascending order.
92
+ # * `<field>` allows value: `name`
93
+ # * `<asc|desc>` ascending or descending order by `<field>`. If this is
94
+ # left blank, `asc` is used
95
+ #
96
+ # Note that an empty `order_by` string results in default order, which is
97
+ # order by `name` in ascending order.
93
98
  class ListNamespacesRequest
94
99
  include ::Google::Protobuf::MessageExts
95
100
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -162,7 +167,7 @@ module Google
162
167
  # The request message for {::Google::Cloud::ServiceDirectory::V1beta1::RegistrationService::Client#list_services RegistrationService.ListServices}.
163
168
  # @!attribute [rw] parent
164
169
  # @return [::String]
165
- # Required. The resource name of the namespace whose services we'd
170
+ # Required. The resource name of the namespace whose services you'd
166
171
  # like to list.
167
172
  # @!attribute [rw] page_size
168
173
  # @return [::Integer]
@@ -173,32 +178,48 @@ module Google
173
178
  # if any.
174
179
  # @!attribute [rw] filter
175
180
  # @return [::String]
176
- # Optional. The filter to list result by.
181
+ # Optional. The filter to list results by.
182
+ #
183
+ # General `filter` string syntax:
184
+ # `<field> <operator> <value> (<logical connector>)`
177
185
  #
178
- # General filter string syntax:
179
- # <field> <operator> <value> (<logical connector>)
180
- # <field> can be "name", or "metadata.<key>" for map field.
181
- # <operator> can be "<, >, <=, >=, !=, =, :". Of which ":" means HAS, and
182
- # is roughly the same as "=".
183
- # <value> must be the same data type as field.
184
- # <logical connector> can be "AND, OR, NOT".
186
+ # * `<field>` can be `name` or `metadata.<key>` for map field
187
+ # * `<operator>` can be `<`, `>`, `<=`, `>=`, `!=`, `=`, `:`. Of which `:`
188
+ # means `HAS`, and is roughly the same as `=`
189
+ # * `<value>` must be the same data type as field
190
+ # * `<logical connector>` can be `AND`, `OR`, `NOT`
185
191
  #
186
192
  # Examples of valid filters:
187
- # * "metadata.owner" returns Services that have a label with the key "owner"
188
- # this is the same as "metadata:owner".
189
- # * "metadata.protocol=gRPC" returns Services that have key/value
190
- # "protocol=gRPC".
191
- # * "name>projects/my-project/locations/us-east/namespaces/my-namespace/services/service-c"
192
- # returns Services that have name that is alphabetically later than the
193
- # string, so "service-e" will be returned but "service-a" will not be.
194
- # * "metadata.owner!=sd AND metadata.foo=bar" returns Services that have
195
- # "owner" in label key but value is not "sd" AND have key/value foo=bar.
196
- # * "doesnotexist.foo=bar" returns an empty list. Note that Service doesn't
197
- # have a field called "doesnotexist". Since the filter does not match any
198
- # Services, it returns no results.
193
+ #
194
+ # * `metadata.owner` returns services that have a metadata with the key
195
+ # `owner`, this is the same as `metadata:owner`
196
+ # * `metadata.protocol=gRPC` returns services that have key/value
197
+ # `protocol=gRPC`
198
+ # *
199
+ # `name>projects/my-project/locations/us-east1/namespaces/my-namespace/services/service-c`
200
+ # returns services that have name that is alphabetically later than the
201
+ # string, so "service-e" is returned but "service-a" is not
202
+ # * `metadata.owner!=sd AND metadata.foo=bar` returns services that have
203
+ # `owner` in metadata key but value is not `sd` AND have key/value
204
+ # `foo=bar`
205
+ # * `doesnotexist.foo=bar` returns an empty list. Note that service
206
+ # doesn't have a field called "doesnotexist". Since the filter does not
207
+ # match any services, it returns no results
208
+ #
209
+ # For more information about filtering, see
210
+ # [API Filtering](https://aip.dev/160).
199
211
  # @!attribute [rw] order_by
200
212
  # @return [::String]
201
- # Optional. The order to list result by.
213
+ # Optional. The order to list results by.
214
+ #
215
+ # General `order_by` string syntax: `<field> (<asc|desc>) (,)`
216
+ #
217
+ # * `<field>` allows value: `name`
218
+ # * `<asc|desc>` ascending or descending order by `<field>`. If this is
219
+ # left blank, `asc` is used
220
+ #
221
+ # Note that an empty `order_by` string results in default order, which is
222
+ # order by `name` in ascending order.
202
223
  class ListServicesRequest
203
224
  include ::Google::Protobuf::MessageExts
204
225
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -219,7 +240,7 @@ module Google
219
240
 
220
241
  # The request message for {::Google::Cloud::ServiceDirectory::V1beta1::RegistrationService::Client#get_service RegistrationService.GetService}.
221
242
  # This should not be used for looking up a service. Insead, use the `resolve`
222
- # method as it will contain all endpoints and associated metadata.
243
+ # method as it contains all endpoints and associated metadata.
223
244
  # @!attribute [rw] name
224
245
  # @return [::String]
225
246
  # Required. The name of the service to get.
@@ -273,7 +294,7 @@ module Google
273
294
  # The request message for {::Google::Cloud::ServiceDirectory::V1beta1::RegistrationService::Client#list_endpoints RegistrationService.ListEndpoints}.
274
295
  # @!attribute [rw] parent
275
296
  # @return [::String]
276
- # Required. The resource name of the service whose endpoints we'd like to
297
+ # Required. The resource name of the service whose endpoints you'd like to
277
298
  # list.
278
299
  # @!attribute [rw] page_size
279
300
  # @return [::Integer]
@@ -284,34 +305,51 @@ module Google
284
305
  # if any.
285
306
  # @!attribute [rw] filter
286
307
  # @return [::String]
287
- # Optional. The filter to list result by.
308
+ # Optional. The filter to list results by.
288
309
  #
289
- # General filter string syntax:
290
- # <field> <operator> <value> (<logical connector>)
291
- # <field> can be "name", "address", "port" or "metadata.<key>" for map field.
292
- # <operator> can be "<, >, <=, >=, !=, =, :". Of which ":" means HAS, and
293
- # is roughly the same as "=".
294
- # <value> must be the same data type as field.
295
- # <logical connector> can be "AND, OR, NOT".
310
+ # General `filter` string syntax:
311
+ # `<field> <operator> <value> (<logical connector>)`
312
+ #
313
+ # * `<field>` can be `name`, `address`, `port`, or `metadata.<key>` for map
314
+ # field
315
+ # * `<operator>` can be `<`, `>`, `<=`, `>=`, `!=`, `=`, `:`. Of which `:`
316
+ # means `HAS`, and is roughly the same as `=`
317
+ # * `<value>` must be the same data type as field
318
+ # * `<logical connector>` can be `AND`, `OR`, `NOT`
296
319
  #
297
320
  # Examples of valid filters:
298
- # * "metadata.owner" returns Endpoints that have a label with the key "owner"
299
- # this is the same as "metadata:owner".
300
- # * "metadata.protocol=gRPC" returns Endpoints that have key/value
301
- # "protocol=gRPC".
302
- # * "address=192.108.1.105" returns Endpoints that have this address.
303
- # * "port>8080" returns Endpoints that have port number larger than 8080.
304
- # * "name>projects/my-project/locations/us-east/namespaces/my-namespace/services/my-service/endpoints/endpoint-c"
305
- # returns Endpoints that have name that is alphabetically later than the
306
- # string, so "endpoint-e" will be returned but "endpoint-a" will not be.
307
- # * "metadata.owner!=sd AND metadata.foo=bar" returns Endpoints that have
308
- # "owner" in label key but value is not "sd" AND have key/value foo=bar.
309
- # * "doesnotexist.foo=bar" returns an empty list. Note that Endpoint doesn't
310
- # have a field called "doesnotexist". Since the filter does not match any
311
- # Endpoints, it returns no results.
321
+ #
322
+ # * `metadata.owner` returns endpoints that have a metadata with the key
323
+ # `owner`, this is the same as `metadata:owner`
324
+ # * `metadata.protocol=gRPC` returns endpoints that have key/value
325
+ # `protocol=gRPC`
326
+ # * `address=192.108.1.105` returns endpoints that have this address
327
+ # * `port>8080` returns endpoints that have port number larger than 8080
328
+ # *
329
+ # `name>projects/my-project/locations/us-east1/namespaces/my-namespace/services/my-service/endpoints/endpoint-c`
330
+ # returns endpoints that have name that is alphabetically later than the
331
+ # string, so "endpoint-e" is returned but "endpoint-a" is not
332
+ # * `metadata.owner!=sd AND metadata.foo=bar` returns endpoints that have
333
+ # `owner` in metadata key but value is not `sd` AND have key/value
334
+ # `foo=bar`
335
+ # * `doesnotexist.foo=bar` returns an empty list. Note that endpoint
336
+ # doesn't have a field called "doesnotexist". Since the filter does not
337
+ # match any endpoints, it returns no results
338
+ #
339
+ # For more information about filtering, see
340
+ # [API Filtering](https://aip.dev/160).
312
341
  # @!attribute [rw] order_by
313
342
  # @return [::String]
314
- # Optional. The order to list result by.
343
+ # Optional. The order to list results by.
344
+ #
345
+ # General `order_by` string syntax: `<field> (<asc|desc>) (,)`
346
+ #
347
+ # * `<field>` allows values: `name`, `address`, `port`
348
+ # * `<asc|desc>` ascending or descending order by `<field>`. If this is
349
+ # left blank, `asc` is used
350
+ #
351
+ # Note that an empty `order_by` string results in default order, which is
352
+ # order by `name` in ascending order.
315
353
  class ListEndpointsRequest
316
354
  include ::Google::Protobuf::MessageExts
317
355
  extend ::Google::Protobuf::MessageExts::ClassMethods