project:
  name: project
  collection: metastore.projects
  attributes:
  - &project
    parameter_name: projectsId
    attribute_name: project
    help: The project ID.
    property: core/project

location:
  name: location
  collection: metastore.projects.locations
  disable_auto_completers: false
  attributes:
  - *project
  - &location
    parameter_name: locationsId
    attribute_name: location
    help: |
      The location of the Dataproc Metastore service.

      If not specified, will use `default` metastore/location.
    property: metastore/location

federation:
  name: federation
  collection: metastore.projects.locations.federations
  request_id_field: federationId
  attributes:
  - *project
  - *location
  - &federation
    parameter_name: federationsId
    attribute_name: federation
    help: The identifier of the Dataproc Metastore federation

parent_service:
  name: service
  collection: metastore.projects.locations.services
  attributes:
  - *project
  - *location
  - &parent_service
    parameter_name: servicesId
    attribute_name: service
    help: The identifier of the Dataproc Metastore service

service:
  name: service
  collection: metastore.projects.locations.services
  request_id_field: serviceId
  attributes:
  - *project
  - *location
  - &service
    parameter_name: servicesId
    attribute_name: service
    help: The identifier of the Dataproc Metastore service

import:
  name: import
  collection: metastore.projects.locations.services.metadataImports
  request_id_field: metadataImportId
  attributes:
  - *project
  - *location
  - *service
  - &import
    parameter_name: metadataImportsId
    attribute_name: import
    help: The identifier of the metadata import under Dataproc Metastore services.

backup:
  name: backup
  collection: metastore.projects.locations.services.backups
  request_id_field: backupId
  attributes:
  - *project
  - *location
  - *service
  - &backup
    parameter_name: backupsId
    attribute_name: backup
    help: The identifier of the backup under Dataproc Metastore services.

operation:
  name: operation
  collection: metastore.projects.locations.operations
  attributes:
  - *project
  - *location
  - &operation
    parameter_name: operationsId
    attribute_name: operation
    help: The ID of the Dataproc Metastore operation.

database:
  name: database
  collection: metastore.projects.locations.services.databases
  request_id_field: databaseId
  attributes:
  - *project
  - *location
  - *service
  - &database
    parameter_name: databasesId
    attribute_name: database
    help: The identifier of the database under Dataproc Metastore services.

table:
  name: table
  collection: metastore.projects.locations.services.databases.tables
  request_id_field: tableId
  attributes:
  - *project
  - *location
  - *service
  - *database
  - &table
    parameter_name: tablesId
    attribute_name: table
    help: The identifier of the table under Database.

migration:
  name: migration
  collection: metastore.projects.locations.services.migrationExecutions
  request_id_field: migrationExecutionId
  attributes:
  - *project
  - *location
  - *service
  - &migration
    parameter_name: migrationExecutionsId
    attribute_name: migration
    help: The identifier of the migration for a Dataproc Metastore service.
