diff --git a/google/cloud/oslogin/artman_oslogin_v1beta.yaml b/google/cloud/oslogin/artman_oslogin_v1beta.yaml index 6e3c099b..671233fc 100644 --- a/google/cloud/oslogin/artman_oslogin_v1beta.yaml +++ b/google/cloud/oslogin/artman_oslogin_v1beta.yaml @@ -8,7 +8,7 @@ common: - common - v1beta service_yaml: oslogin_v1beta.yaml - gapic_yaml: v1beta/oslogin_gapic.yaml + gapic_yaml: v1beta/oslogin_gapic.legacy.yaml artifacts: - name: gapic_config type: GAPIC_CONFIG diff --git a/google/cloud/oslogin/v1beta/BUILD.bazel b/google/cloud/oslogin/v1beta/BUILD.bazel index ff1e42d5..06958959 100644 --- a/google/cloud/oslogin/v1beta/BUILD.bazel +++ b/google/cloud/oslogin/v1beta/BUILD.bazel @@ -45,6 +45,7 @@ load( "java_gapic_test", "java_grpc_library", "java_proto_library", + "java_resource_name_proto_library", ) _JAVA_PROTO_SUBPACKAGE_DEPS = [ @@ -66,14 +67,25 @@ java_grpc_library( deps = [":oslogin_java_proto"] + _JAVA_PROTO_SUBPACKAGE_DEPS, ) +java_resource_name_proto_library( + name = "oslogin_java_gapic_resource_name", + gapic_yaml = "//google/cloud/oslogin/v1:oslogin_gapic.yaml", + deps = [ + ":oslogin_proto", + "//google/cloud:common_resources_proto", + ] + _PROTO_SUBPACKAGE_DEPS, +) + java_gapic_library( name = "oslogin_java_gapic", src = ":oslogin_proto_with_info", gapic_yaml = "oslogin_gapic.yaml", + gen_resource_name = False, service_yaml = "//google/cloud/oslogin:oslogin_v1beta.yaml", test_deps = [":oslogin_java_grpc"], deps = [ ":oslogin_java_proto", + ":oslogin_java_gapic_resource_name", ] + _JAVA_PROTO_SUBPACKAGE_DEPS, ) diff --git a/google/cloud/oslogin/v1beta/oslogin_gapic.legacy.yaml b/google/cloud/oslogin/v1beta/oslogin_gapic.legacy.yaml new file mode 100644 index 00000000..09251d43 --- /dev/null +++ b/google/cloud/oslogin/v1beta/oslogin_gapic.legacy.yaml @@ -0,0 +1,222 @@ +type: com.google.api.codegen.ConfigProto +config_schema_version: 1.0.0 +# The settings of generated code in a specific language. +language_settings: + java: + package_name: com.google.cloud.oslogin.v1beta + python: + package_name: google.cloud.oslogin_v1beta.gapic + go: + package_name: cloud.google.com/go/oslogin/apiv1beta + csharp: + package_name: Google.Cloud.OsLogin.V1Beta + ruby: + package_name: Google::Cloud::OsLogin::V1beta + php: + package_name: Google\Cloud\OsLogin\V1beta + nodejs: + package_name: os-login.v1beta + domain_layer_location: google-cloud +# A list of API interface configurations. +interfaces: + # The fully qualified name of the API interface. +- name: google.cloud.oslogin.v1beta.OsLoginService + # A list of resource collection configurations. + # Consists of a name_pattern and an entity_name. + # The name_pattern is a pattern to describe the names of the resources of this + # collection, using the platform's conventions for URI patterns. A generator + # may use this to generate methods to compose and decompose such names. The + # pattern should use named placeholders as in `shelves/{shelf}/books/{book}`; + # those will be taken as hints for the parameter names of the generated + # methods. If empty, no name methods are generated. + # The entity_name is the name to be used as a basis for generated methods and + # classes. + collections: + - name_pattern: users/{user} + entity_name: user + - name_pattern: users/{user}/projects/{project} + entity_name: project + - name_pattern: users/{user}/sshPublicKeys/{fingerprint} + entity_name: fingerprint + # Definition for retryable codes. + retry_codes_def: + - name: idempotent + retry_codes: + - UNAVAILABLE + - DEADLINE_EXCEEDED + - name: non_idempotent + retry_codes: [] + # Definition for retry/backoff parameters. + retry_params_def: + - name: default + initial_retry_delay_millis: 100 + retry_delay_multiplier: 1.3 + max_retry_delay_millis: 60000 + initial_rpc_timeout_millis: 10000 + rpc_timeout_multiplier: 1 + max_rpc_timeout_millis: 10000 + total_timeout_millis: 600000 + # A list of method configurations. + # Common properties: + # + # name - The simple name of the method. + # + # flattening - Specifies the configuration for parameter flattening. + # Describes the parameter groups for which a generator should produce method + # overloads which allow a client to directly pass request message fields as + # method parameters. This information may or may not be used, depending on + # the target language. + # Consists of groups, which each represent a list of parameters to be + # flattened. Each parameter listed must be a field of the request message. + # + # required_fields - Fields that are always required for a request to be + # valid. + # + # resource_name_treatment - An enum that specifies how to treat the resource + # name formats defined in the field_name_patterns and + # response_field_name_patterns fields. + # UNSET: default value + # NONE: the collection configs will not be used by the generated code. + # VALIDATE: string fields will be validated by the client against the + # specified resource name formats. + # STATIC_TYPES: the client will use generated types for resource names. + # + # page_streaming - Specifies the configuration for paging. + # Describes information for generating a method which transforms a paging + # list RPC into a stream of resources. + # Consists of a request and a response. + # The request specifies request information of the list method. It defines + # which fields match the paging pattern in the request. The request consists + # of a page_size_field and a token_field. The page_size_field is the name of + # the optional field specifying the maximum number of elements to be + # returned in the response. The token_field is the name of the field in the + # request containing the page token. + # The response specifies response information of the list method. It defines + # which fields match the paging pattern in the response. The response + # consists of a token_field and a resources_field. The token_field is the + # name of the field in the response containing the next page token. The + # resources_field is the name of the field in the response containing the + # list of resources belonging to the page. + # + # retry_codes_name - Specifies the configuration for retryable codes. The + # name must be defined in interfaces.retry_codes_def. + # + # retry_params_name - Specifies the configuration for retry/backoff + # parameters. The name must be defined in interfaces.retry_params_def. + # + # field_name_patterns - Maps the field name of the request type to + # entity_name of interfaces.collections. + # Specifies the string pattern that the field must follow. + # + # timeout_millis - Specifies the default timeout for a non-retrying call. If + # the call is retrying, refer to retry_params_name instead. + methods: + - name: DeletePosixAccount + flattening: + groups: + - parameters: + - name + required_fields: + - name + retry_codes_name: idempotent + retry_params_name: default + field_name_patterns: + name: project + resource_name_treatment: STATIC_TYPES + timeout_millis: 10000 + - name: DeleteSshPublicKey + flattening: + groups: + - parameters: + - name + required_fields: + - name + retry_codes_name: idempotent + retry_params_name: default + field_name_patterns: + name: fingerprint + resource_name_treatment: STATIC_TYPES + timeout_millis: 10000 + - name: GetLoginProfile + flattening: + groups: + - parameters: + - name + required_fields: + - name + retry_codes_name: idempotent + retry_params_name: default + field_name_patterns: + name: user + resource_name_treatment: STATIC_TYPES + timeout_millis: 10000 + - name: GetSshPublicKey + flattening: + groups: + - parameters: + - name + required_fields: + - name + retry_codes_name: idempotent + retry_params_name: default + field_name_patterns: + name: fingerprint + resource_name_treatment: STATIC_TYPES + timeout_millis: 10000 + - name: ImportSshPublicKey + flattening: + groups: + - parameters: + - parent + - ssh_public_key + - parameters: + - parent + - ssh_public_key + - project_id + required_fields: + - parent + - ssh_public_key + retry_codes_name: idempotent + retry_params_name: default + field_name_patterns: + parent: user + resource_name_treatment: STATIC_TYPES + timeout_millis: 10000 + - name: UpdateSshPublicKey + flattening: + groups: + - parameters: + - name + - ssh_public_key + - parameters: + - name + - ssh_public_key + - update_mask + required_fields: + - name + - ssh_public_key + retry_codes_name: idempotent + retry_params_name: default + field_name_patterns: + name: fingerprint + resource_name_treatment: STATIC_TYPES + timeout_millis: 10000 +resource_name_generation: +- message_name: DeletePosixAccountRequest + field_entity_map: + name: project +- message_name: DeleteSshPublicKeyRequest + field_entity_map: + name: fingerprint +- message_name: GetLoginProfileRequest + field_entity_map: + name: user +- message_name: GetSshPublicKeyRequest + field_entity_map: + name: fingerprint +- message_name: ImportSshPublicKeyRequest + field_entity_map: + parent: user +- message_name: UpdateSshPublicKeyRequest + field_entity_map: + name: fingerprint diff --git a/google/cloud/oslogin/v1beta/oslogin_gapic.yaml b/google/cloud/oslogin/v1beta/oslogin_gapic.yaml index 09251d43..facc59c4 100644 --- a/google/cloud/oslogin/v1beta/oslogin_gapic.yaml +++ b/google/cloud/oslogin/v1beta/oslogin_gapic.yaml @@ -1,5 +1,5 @@ type: com.google.api.codegen.ConfigProto -config_schema_version: 1.0.0 +config_schema_version: 2.0.0 # The settings of generated code in a specific language. language_settings: java: @@ -21,31 +21,6 @@ language_settings: interfaces: # The fully qualified name of the API interface. - name: google.cloud.oslogin.v1beta.OsLoginService - # A list of resource collection configurations. - # Consists of a name_pattern and an entity_name. - # The name_pattern is a pattern to describe the names of the resources of this - # collection, using the platform's conventions for URI patterns. A generator - # may use this to generate methods to compose and decompose such names. The - # pattern should use named placeholders as in `shelves/{shelf}/books/{book}`; - # those will be taken as hints for the parameter names of the generated - # methods. If empty, no name methods are generated. - # The entity_name is the name to be used as a basis for generated methods and - # classes. - collections: - - name_pattern: users/{user} - entity_name: user - - name_pattern: users/{user}/projects/{project} - entity_name: project - - name_pattern: users/{user}/sshPublicKeys/{fingerprint} - entity_name: fingerprint - # Definition for retryable codes. - retry_codes_def: - - name: idempotent - retry_codes: - - UNAVAILABLE - - DEADLINE_EXCEEDED - - name: non_idempotent - retry_codes: [] # Definition for retry/backoff parameters. retry_params_def: - name: default @@ -56,167 +31,21 @@ interfaces: rpc_timeout_multiplier: 1 max_rpc_timeout_millis: 10000 total_timeout_millis: 600000 - # A list of method configurations. - # Common properties: - # - # name - The simple name of the method. - # - # flattening - Specifies the configuration for parameter flattening. - # Describes the parameter groups for which a generator should produce method - # overloads which allow a client to directly pass request message fields as - # method parameters. This information may or may not be used, depending on - # the target language. - # Consists of groups, which each represent a list of parameters to be - # flattened. Each parameter listed must be a field of the request message. - # - # required_fields - Fields that are always required for a request to be - # valid. - # - # resource_name_treatment - An enum that specifies how to treat the resource - # name formats defined in the field_name_patterns and - # response_field_name_patterns fields. - # UNSET: default value - # NONE: the collection configs will not be used by the generated code. - # VALIDATE: string fields will be validated by the client against the - # specified resource name formats. - # STATIC_TYPES: the client will use generated types for resource names. - # - # page_streaming - Specifies the configuration for paging. - # Describes information for generating a method which transforms a paging - # list RPC into a stream of resources. - # Consists of a request and a response. - # The request specifies request information of the list method. It defines - # which fields match the paging pattern in the request. The request consists - # of a page_size_field and a token_field. The page_size_field is the name of - # the optional field specifying the maximum number of elements to be - # returned in the response. The token_field is the name of the field in the - # request containing the page token. - # The response specifies response information of the list method. It defines - # which fields match the paging pattern in the response. The response - # consists of a token_field and a resources_field. The token_field is the - # name of the field in the response containing the next page token. The - # resources_field is the name of the field in the response containing the - # list of resources belonging to the page. - # - # retry_codes_name - Specifies the configuration for retryable codes. The - # name must be defined in interfaces.retry_codes_def. - # - # retry_params_name - Specifies the configuration for retry/backoff - # parameters. The name must be defined in interfaces.retry_params_def. - # - # field_name_patterns - Maps the field name of the request type to - # entity_name of interfaces.collections. - # Specifies the string pattern that the field must follow. - # - # timeout_millis - Specifies the default timeout for a non-retrying call. If - # the call is retrying, refer to retry_params_name instead. methods: - name: DeletePosixAccount - flattening: - groups: - - parameters: - - name - required_fields: - - name retry_codes_name: idempotent retry_params_name: default field_name_patterns: - name: project - resource_name_treatment: STATIC_TYPES - timeout_millis: 10000 - name: DeleteSshPublicKey - flattening: - groups: - - parameters: - - name - required_fields: - - name retry_codes_name: idempotent retry_params_name: default - field_name_patterns: - name: fingerprint - resource_name_treatment: STATIC_TYPES - timeout_millis: 10000 - name: GetLoginProfile - flattening: - groups: - - parameters: - - name - required_fields: - - name - retry_codes_name: idempotent retry_params_name: default - field_name_patterns: - name: user - resource_name_treatment: STATIC_TYPES - timeout_millis: 10000 - name: GetSshPublicKey - flattening: - groups: - - parameters: - - name - required_fields: - - name - retry_codes_name: idempotent retry_params_name: default - field_name_patterns: - name: fingerprint - resource_name_treatment: STATIC_TYPES - timeout_millis: 10000 - name: ImportSshPublicKey - flattening: - groups: - - parameters: - - parent - - ssh_public_key - - parameters: - - parent - - ssh_public_key - - project_id - required_fields: - - parent - - ssh_public_key retry_codes_name: idempotent retry_params_name: default - field_name_patterns: - parent: user - resource_name_treatment: STATIC_TYPES - timeout_millis: 10000 - name: UpdateSshPublicKey - flattening: - groups: - - parameters: - - name - - ssh_public_key - - parameters: - - name - - ssh_public_key - - update_mask - required_fields: - - name - - ssh_public_key retry_codes_name: idempotent retry_params_name: default - field_name_patterns: - name: fingerprint - resource_name_treatment: STATIC_TYPES - timeout_millis: 10000 -resource_name_generation: -- message_name: DeletePosixAccountRequest - field_entity_map: - name: project -- message_name: DeleteSshPublicKeyRequest - field_entity_map: - name: fingerprint -- message_name: GetLoginProfileRequest - field_entity_map: - name: user -- message_name: GetSshPublicKeyRequest - field_entity_map: - name: fingerprint -- message_name: ImportSshPublicKeyRequest - field_entity_map: - parent: user -- message_name: UpdateSshPublicKeyRequest - field_entity_map: - name: fingerprint