diff --git a/clients/google-api-services-metastore/v1alpha/2.0.0/README.md b/clients/google-api-services-metastore/v1alpha/2.0.0/README.md
index ad55d25143d..b207a14ffcd 100644
--- a/clients/google-api-services-metastore/v1alpha/2.0.0/README.md
+++ b/clients/google-api-services-metastore/v1alpha/2.0.0/README.md
@@ -22,7 +22,7 @@ Add the following lines to your `pom.xml` file:
This is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class BackfillStatus extends com.google.api.client.json.GenericJson { + + /** + * Output only. Summary of the migration results. This is populated after the backfill or dry run + * is finished. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private MigrationSummary migrationSummary; + + /** + * Output only. The Cloud Storage path where the backfill or dry run report is written. Format: + * "gs://path-to-report". + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String reportPath; + + /** + * Output only. The current state of the backfill (or dry run). + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String state; + + /** + * Output only. Summary of the migration results. This is populated after the backfill or dry run + * is finished. + * @return value or {@code null} for none + */ + public MigrationSummary getMigrationSummary() { + return migrationSummary; + } + + /** + * Output only. Summary of the migration results. This is populated after the backfill or dry run + * is finished. + * @param migrationSummary migrationSummary or {@code null} for none + */ + public BackfillStatus setMigrationSummary(MigrationSummary migrationSummary) { + this.migrationSummary = migrationSummary; + return this; + } + + /** + * Output only. The Cloud Storage path where the backfill or dry run report is written. Format: + * "gs://path-to-report". + * @return value or {@code null} for none + */ + public java.lang.String getReportPath() { + return reportPath; + } + + /** + * Output only. The Cloud Storage path where the backfill or dry run report is written. Format: + * "gs://path-to-report". + * @param reportPath reportPath or {@code null} for none + */ + public BackfillStatus setReportPath(java.lang.String reportPath) { + this.reportPath = reportPath; + return this; + } + + /** + * Output only. The current state of the backfill (or dry run). + * @return value or {@code null} for none + */ + public java.lang.String getState() { + return state; + } + + /** + * Output only. The current state of the backfill (or dry run). + * @param state state or {@code null} for none + */ + public BackfillStatus setState(java.lang.String state) { + this.state = state; + return this; + } + + @Override + public BackfillStatus set(String fieldName, Object value) { + return (BackfillStatus) super.set(fieldName, value); + } + + @Override + public BackfillStatus clone() { + return (BackfillStatus) super.clone(); + } + +} diff --git a/clients/google-api-services-metastore/v1alpha/2.0.0/com/google/api/services/metastore/v1alpha/model/BigLakeMetastoreMigrationConfig.java b/clients/google-api-services-metastore/v1alpha/2.0.0/com/google/api/services/metastore/v1alpha/model/BigLakeMetastoreMigrationConfig.java new file mode 100644 index 00000000000..04f70020347 --- /dev/null +++ b/clients/google-api-services-metastore/v1alpha/2.0.0/com/google/api/services/metastore/v1alpha/model/BigLakeMetastoreMigrationConfig.java @@ -0,0 +1,236 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ +/* + * This code was generated by https://github.com/googleapis/google-api-java-client-services/ + * Modify at your own risk. + */ + +package com.google.api.services.metastore.v1alpha.model; + +/** + * Defines the configuration required to migrate metadata from a Dataproc Metastore service to + * BigLake Metastore. + * + *This is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class BigLakeMetastoreMigrationConfig extends com.google.api.client.json.GenericJson { + + /** + * Output only. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private BackfillStatus backfillStatus; + + /** + * Optional. The policy to handle conflicts when migrating resources, defaults to SKIP if not + * specified. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String conflictPolicy; + + /** + * Optional. If true, performs discovery of requested resources and analysis against the target + * catalog to come up with a plan for each resource (e.g. Create, Update, Skip, etc.). No metadata + * is actually migrated. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.Boolean dryRun; + + /** + * Optional. At least one of hive_config or iceberg_config must be provided, otherwise, a + * validation error will be thrown. If only one is provided, the service only migrates tables of + * that specific type. If both are provided, both Hive and Iceberg tables will be + * migrated.Configuration for migrating Hive tables to a BigLake Hive catalog. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private HiveConfig hiveConfig; + + /** + * Optional. Configuration for migrating Iceberg tables to a BigLake Iceberg REST catalog. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private IcebergConfig icebergConfig; + + /** + * Required. Defines the behavior of the migration execution. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String mode; + + /** + * Optional. The Cloud Storage path where the backfill / dry run report should be written. If not + * provided, the report will be generated in the service's artifacts bucket. Format: + * "gs://path/to/folder" + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String reportPath; + + /** + * Output only. + * @return value or {@code null} for none + */ + public BackfillStatus getBackfillStatus() { + return backfillStatus; + } + + /** + * Output only. + * @param backfillStatus backfillStatus or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setBackfillStatus(BackfillStatus backfillStatus) { + this.backfillStatus = backfillStatus; + return this; + } + + /** + * Optional. The policy to handle conflicts when migrating resources, defaults to SKIP if not + * specified. + * @return value or {@code null} for none + */ + public java.lang.String getConflictPolicy() { + return conflictPolicy; + } + + /** + * Optional. The policy to handle conflicts when migrating resources, defaults to SKIP if not + * specified. + * @param conflictPolicy conflictPolicy or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setConflictPolicy(java.lang.String conflictPolicy) { + this.conflictPolicy = conflictPolicy; + return this; + } + + /** + * Optional. If true, performs discovery of requested resources and analysis against the target + * catalog to come up with a plan for each resource (e.g. Create, Update, Skip, etc.). No metadata + * is actually migrated. + * @return value or {@code null} for none + */ + public java.lang.Boolean getDryRun() { + return dryRun; + } + + /** + * Optional. If true, performs discovery of requested resources and analysis against the target + * catalog to come up with a plan for each resource (e.g. Create, Update, Skip, etc.). No metadata + * is actually migrated. + * @param dryRun dryRun or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setDryRun(java.lang.Boolean dryRun) { + this.dryRun = dryRun; + return this; + } + + /** + * Optional. At least one of hive_config or iceberg_config must be provided, otherwise, a + * validation error will be thrown. If only one is provided, the service only migrates tables of + * that specific type. If both are provided, both Hive and Iceberg tables will be + * migrated.Configuration for migrating Hive tables to a BigLake Hive catalog. + * @return value or {@code null} for none + */ + public HiveConfig getHiveConfig() { + return hiveConfig; + } + + /** + * Optional. At least one of hive_config or iceberg_config must be provided, otherwise, a + * validation error will be thrown. If only one is provided, the service only migrates tables of + * that specific type. If both are provided, both Hive and Iceberg tables will be + * migrated.Configuration for migrating Hive tables to a BigLake Hive catalog. + * @param hiveConfig hiveConfig or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setHiveConfig(HiveConfig hiveConfig) { + this.hiveConfig = hiveConfig; + return this; + } + + /** + * Optional. Configuration for migrating Iceberg tables to a BigLake Iceberg REST catalog. + * @return value or {@code null} for none + */ + public IcebergConfig getIcebergConfig() { + return icebergConfig; + } + + /** + * Optional. Configuration for migrating Iceberg tables to a BigLake Iceberg REST catalog. + * @param icebergConfig icebergConfig or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setIcebergConfig(IcebergConfig icebergConfig) { + this.icebergConfig = icebergConfig; + return this; + } + + /** + * Required. Defines the behavior of the migration execution. + * @return value or {@code null} for none + */ + public java.lang.String getMode() { + return mode; + } + + /** + * Required. Defines the behavior of the migration execution. + * @param mode mode or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setMode(java.lang.String mode) { + this.mode = mode; + return this; + } + + /** + * Optional. The Cloud Storage path where the backfill / dry run report should be written. If not + * provided, the report will be generated in the service's artifacts bucket. Format: + * "gs://path/to/folder" + * @return value or {@code null} for none + */ + public java.lang.String getReportPath() { + return reportPath; + } + + /** + * Optional. The Cloud Storage path where the backfill / dry run report should be written. If not + * provided, the report will be generated in the service's artifacts bucket. Format: + * "gs://path/to/folder" + * @param reportPath reportPath or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setReportPath(java.lang.String reportPath) { + this.reportPath = reportPath; + return this; + } + + @Override + public BigLakeMetastoreMigrationConfig set(String fieldName, Object value) { + return (BigLakeMetastoreMigrationConfig) super.set(fieldName, value); + } + + @Override + public BigLakeMetastoreMigrationConfig clone() { + return (BigLakeMetastoreMigrationConfig) super.clone(); + } + +} diff --git a/clients/google-api-services-metastore/v1alpha/2.0.0/com/google/api/services/metastore/v1alpha/model/CatalogSummary.java b/clients/google-api-services-metastore/v1alpha/2.0.0/com/google/api/services/metastore/v1alpha/model/CatalogSummary.java new file mode 100644 index 00000000000..a4d17c08644 --- /dev/null +++ b/clients/google-api-services-metastore/v1alpha/2.0.0/com/google/api/services/metastore/v1alpha/model/CatalogSummary.java @@ -0,0 +1,115 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ +/* + * This code was generated by https://github.com/googleapis/google-api-java-client-services/ + * Modify at your own risk. + */ + +package com.google.api.services.metastore.v1alpha.model; + +/** + * Summary of results for a specific destination catalog. + * + *This is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class CatalogSummary extends com.google.api.client.json.GenericJson { + + /** + * Output only. The catalog resource name (format: projects/catalogs). + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String catalog; + + /** + * Output only. The type of the catalog. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String catalogType; + + /** + * Output only. Summary of results for each database in the catalog. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.util.ListThis is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class DatabaseSummary extends com.google.api.client.json.GenericJson { + + /** + * Output only. The name of the database. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String database; + + /** + * Output only. The migration plan action for the database. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String planAction; + + /** + * Output only. The migration result status for the database. This is only set if the migration is + * not a dry run. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String resultStatus; + + /** + * Output only. Aggregated summary of results for all tables in the database. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private TableSummary tableSummary; + + /** + * Output only. The name of the database. + * @return value or {@code null} for none + */ + public java.lang.String getDatabase() { + return database; + } + + /** + * Output only. The name of the database. + * @param database database or {@code null} for none + */ + public DatabaseSummary setDatabase(java.lang.String database) { + this.database = database; + return this; + } + + /** + * Output only. The migration plan action for the database. + * @return value or {@code null} for none + */ + public java.lang.String getPlanAction() { + return planAction; + } + + /** + * Output only. The migration plan action for the database. + * @param planAction planAction or {@code null} for none + */ + public DatabaseSummary setPlanAction(java.lang.String planAction) { + this.planAction = planAction; + return this; + } + + /** + * Output only. The migration result status for the database. This is only set if the migration is + * not a dry run. + * @return value or {@code null} for none + */ + public java.lang.String getResultStatus() { + return resultStatus; + } + + /** + * Output only. The migration result status for the database. This is only set if the migration is + * not a dry run. + * @param resultStatus resultStatus or {@code null} for none + */ + public DatabaseSummary setResultStatus(java.lang.String resultStatus) { + this.resultStatus = resultStatus; + return this; + } + + /** + * Output only. Aggregated summary of results for all tables in the database. + * @return value or {@code null} for none + */ + public TableSummary getTableSummary() { + return tableSummary; + } + + /** + * Output only. Aggregated summary of results for all tables in the database. + * @param tableSummary tableSummary or {@code null} for none + */ + public DatabaseSummary setTableSummary(TableSummary tableSummary) { + this.tableSummary = tableSummary; + return this; + } + + @Override + public DatabaseSummary set(String fieldName, Object value) { + return (DatabaseSummary) super.set(fieldName, value); + } + + @Override + public DatabaseSummary clone() { + return (DatabaseSummary) super.clone(); + } + +} diff --git a/clients/google-api-services-metastore/v1alpha/2.0.0/com/google/api/services/metastore/v1alpha/model/HiveConfig.java b/clients/google-api-services-metastore/v1alpha/2.0.0/com/google/api/services/metastore/v1alpha/model/HiveConfig.java new file mode 100644 index 00000000000..59108957801 --- /dev/null +++ b/clients/google-api-services-metastore/v1alpha/2.0.0/com/google/api/services/metastore/v1alpha/model/HiveConfig.java @@ -0,0 +1,100 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ +/* + * This code was generated by https://github.com/googleapis/google-api-java-client-services/ + * Modify at your own risk. + */ + +package com.google.api.services.metastore.v1alpha.model; + +/** + * Configuration for migrating Hive metadata. + * + *This is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class HiveConfig extends com.google.api.client.json.GenericJson { + + /** + * Required. The target catalog for migrated databases and tables. Format: + * "projects/{project_id_or_number}/catalogs/{catalog_id}" + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String catalog; + + /** + * Required. The list of databases to migrate to the Hive catalog. Use "*" to migrate all + * databases. Note: If Iceberg tables exist in these databases, they will only be migrated if + * iceberg_config is also specified. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.util.ListThis is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class IcebergConfig extends com.google.api.client.json.GenericJson { + + /** + * Required. The target catalog for migrated Iceberg metadata. Format: + * "projects/{project_id_or_number}/catalogs/{catalog_id}" + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String catalog; + + /** + * Required. The list of namespaces to migrate to the Iceberg REST catalog. Use "*" to migrate all + * namespaces. Note: If Hive tables exist in these namespaces, they will only be migrated if + * hive_config is also specified. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.util.ListThis is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class MigrationSummary extends com.google.api.client.json.GenericJson { + + /** + * Output only. Summary of results for each catalog involved in the migration. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.util.ListThis is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class TableSummary extends com.google.api.client.json.GenericJson { + + /** + * Output only. Partition migration summary across all Hive tables in the database.The total + * number of partitions discovered at the source. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key @com.google.api.client.json.JsonString + private java.lang.Long partitionDiscoveredCount; + + /** + * Output only. The total number of partitions that failed to migrate at the target. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key @com.google.api.client.json.JsonString + private java.lang.Long partitionFailedCount; + + /** + * Output only. The total number of partitions successfully migrated at the target. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key @com.google.api.client.json.JsonString + private java.lang.Long partitionSuccessCount; + + /** + * Output only. Number of tables with a specific migration plan action. The key is the action name + * (e.g. CREATE, UPDATE, SKIP, etc.). + * The value may be {@code null}. + */ + @com.google.api.client.util.Key @com.google.api.client.json.JsonString + private java.util.MapThis is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class BackfillStatus extends com.google.api.client.json.GenericJson { + + /** + * Output only. Summary of the migration results. This is populated after the backfill or dry run + * is finished. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private MigrationSummary migrationSummary; + + /** + * Output only. The Cloud Storage path where the backfill or dry run report is written. Format: + * "gs://path-to-report". + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String reportPath; + + /** + * Output only. The current state of the backfill (or dry run). + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String state; + + /** + * Output only. Summary of the migration results. This is populated after the backfill or dry run + * is finished. + * @return value or {@code null} for none + */ + public MigrationSummary getMigrationSummary() { + return migrationSummary; + } + + /** + * Output only. Summary of the migration results. This is populated after the backfill or dry run + * is finished. + * @param migrationSummary migrationSummary or {@code null} for none + */ + public BackfillStatus setMigrationSummary(MigrationSummary migrationSummary) { + this.migrationSummary = migrationSummary; + return this; + } + + /** + * Output only. The Cloud Storage path where the backfill or dry run report is written. Format: + * "gs://path-to-report". + * @return value or {@code null} for none + */ + public java.lang.String getReportPath() { + return reportPath; + } + + /** + * Output only. The Cloud Storage path where the backfill or dry run report is written. Format: + * "gs://path-to-report". + * @param reportPath reportPath or {@code null} for none + */ + public BackfillStatus setReportPath(java.lang.String reportPath) { + this.reportPath = reportPath; + return this; + } + + /** + * Output only. The current state of the backfill (or dry run). + * @return value or {@code null} for none + */ + public java.lang.String getState() { + return state; + } + + /** + * Output only. The current state of the backfill (or dry run). + * @param state state or {@code null} for none + */ + public BackfillStatus setState(java.lang.String state) { + this.state = state; + return this; + } + + @Override + public BackfillStatus set(String fieldName, Object value) { + return (BackfillStatus) super.set(fieldName, value); + } + + @Override + public BackfillStatus clone() { + return (BackfillStatus) super.clone(); + } + +} diff --git a/clients/google-api-services-metastore/v1beta/2.0.0/com/google/api/services/metastore/v1beta/model/BigLakeMetastoreMigrationConfig.java b/clients/google-api-services-metastore/v1beta/2.0.0/com/google/api/services/metastore/v1beta/model/BigLakeMetastoreMigrationConfig.java new file mode 100644 index 00000000000..3d73342a2ba --- /dev/null +++ b/clients/google-api-services-metastore/v1beta/2.0.0/com/google/api/services/metastore/v1beta/model/BigLakeMetastoreMigrationConfig.java @@ -0,0 +1,236 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ +/* + * This code was generated by https://github.com/googleapis/google-api-java-client-services/ + * Modify at your own risk. + */ + +package com.google.api.services.metastore.v1beta.model; + +/** + * Defines the configuration required to migrate metadata from a Dataproc Metastore service to + * BigLake Metastore. + * + *This is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class BigLakeMetastoreMigrationConfig extends com.google.api.client.json.GenericJson { + + /** + * Output only. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private BackfillStatus backfillStatus; + + /** + * Optional. The policy to handle conflicts when migrating resources, defaults to SKIP if not + * specified. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String conflictPolicy; + + /** + * Optional. If true, performs discovery of requested resources and analysis against the target + * catalog to come up with a plan for each resource (e.g. Create, Update, Skip, etc.). No metadata + * is actually migrated. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.Boolean dryRun; + + /** + * Optional. At least one of hive_config or iceberg_config must be provided, otherwise, a + * validation error will be thrown. If only one is provided, the service only migrates tables of + * that specific type. If both are provided, both Hive and Iceberg tables will be + * migrated.Configuration for migrating Hive tables to a BigLake Hive catalog. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private HiveConfig hiveConfig; + + /** + * Optional. Configuration for migrating Iceberg tables to a BigLake Iceberg REST catalog. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private IcebergConfig icebergConfig; + + /** + * Required. Defines the behavior of the migration execution. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String mode; + + /** + * Optional. The Cloud Storage path where the backfill / dry run report should be written. If not + * provided, the report will be generated in the service's artifacts bucket. Format: + * "gs://path/to/folder" + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String reportPath; + + /** + * Output only. + * @return value or {@code null} for none + */ + public BackfillStatus getBackfillStatus() { + return backfillStatus; + } + + /** + * Output only. + * @param backfillStatus backfillStatus or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setBackfillStatus(BackfillStatus backfillStatus) { + this.backfillStatus = backfillStatus; + return this; + } + + /** + * Optional. The policy to handle conflicts when migrating resources, defaults to SKIP if not + * specified. + * @return value or {@code null} for none + */ + public java.lang.String getConflictPolicy() { + return conflictPolicy; + } + + /** + * Optional. The policy to handle conflicts when migrating resources, defaults to SKIP if not + * specified. + * @param conflictPolicy conflictPolicy or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setConflictPolicy(java.lang.String conflictPolicy) { + this.conflictPolicy = conflictPolicy; + return this; + } + + /** + * Optional. If true, performs discovery of requested resources and analysis against the target + * catalog to come up with a plan for each resource (e.g. Create, Update, Skip, etc.). No metadata + * is actually migrated. + * @return value or {@code null} for none + */ + public java.lang.Boolean getDryRun() { + return dryRun; + } + + /** + * Optional. If true, performs discovery of requested resources and analysis against the target + * catalog to come up with a plan for each resource (e.g. Create, Update, Skip, etc.). No metadata + * is actually migrated. + * @param dryRun dryRun or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setDryRun(java.lang.Boolean dryRun) { + this.dryRun = dryRun; + return this; + } + + /** + * Optional. At least one of hive_config or iceberg_config must be provided, otherwise, a + * validation error will be thrown. If only one is provided, the service only migrates tables of + * that specific type. If both are provided, both Hive and Iceberg tables will be + * migrated.Configuration for migrating Hive tables to a BigLake Hive catalog. + * @return value or {@code null} for none + */ + public HiveConfig getHiveConfig() { + return hiveConfig; + } + + /** + * Optional. At least one of hive_config or iceberg_config must be provided, otherwise, a + * validation error will be thrown. If only one is provided, the service only migrates tables of + * that specific type. If both are provided, both Hive and Iceberg tables will be + * migrated.Configuration for migrating Hive tables to a BigLake Hive catalog. + * @param hiveConfig hiveConfig or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setHiveConfig(HiveConfig hiveConfig) { + this.hiveConfig = hiveConfig; + return this; + } + + /** + * Optional. Configuration for migrating Iceberg tables to a BigLake Iceberg REST catalog. + * @return value or {@code null} for none + */ + public IcebergConfig getIcebergConfig() { + return icebergConfig; + } + + /** + * Optional. Configuration for migrating Iceberg tables to a BigLake Iceberg REST catalog. + * @param icebergConfig icebergConfig or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setIcebergConfig(IcebergConfig icebergConfig) { + this.icebergConfig = icebergConfig; + return this; + } + + /** + * Required. Defines the behavior of the migration execution. + * @return value or {@code null} for none + */ + public java.lang.String getMode() { + return mode; + } + + /** + * Required. Defines the behavior of the migration execution. + * @param mode mode or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setMode(java.lang.String mode) { + this.mode = mode; + return this; + } + + /** + * Optional. The Cloud Storage path where the backfill / dry run report should be written. If not + * provided, the report will be generated in the service's artifacts bucket. Format: + * "gs://path/to/folder" + * @return value or {@code null} for none + */ + public java.lang.String getReportPath() { + return reportPath; + } + + /** + * Optional. The Cloud Storage path where the backfill / dry run report should be written. If not + * provided, the report will be generated in the service's artifacts bucket. Format: + * "gs://path/to/folder" + * @param reportPath reportPath or {@code null} for none + */ + public BigLakeMetastoreMigrationConfig setReportPath(java.lang.String reportPath) { + this.reportPath = reportPath; + return this; + } + + @Override + public BigLakeMetastoreMigrationConfig set(String fieldName, Object value) { + return (BigLakeMetastoreMigrationConfig) super.set(fieldName, value); + } + + @Override + public BigLakeMetastoreMigrationConfig clone() { + return (BigLakeMetastoreMigrationConfig) super.clone(); + } + +} diff --git a/clients/google-api-services-metastore/v1beta/2.0.0/com/google/api/services/metastore/v1beta/model/CatalogSummary.java b/clients/google-api-services-metastore/v1beta/2.0.0/com/google/api/services/metastore/v1beta/model/CatalogSummary.java new file mode 100644 index 00000000000..fe59ee71334 --- /dev/null +++ b/clients/google-api-services-metastore/v1beta/2.0.0/com/google/api/services/metastore/v1beta/model/CatalogSummary.java @@ -0,0 +1,115 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ +/* + * This code was generated by https://github.com/googleapis/google-api-java-client-services/ + * Modify at your own risk. + */ + +package com.google.api.services.metastore.v1beta.model; + +/** + * Summary of results for a specific destination catalog. + * + *This is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class CatalogSummary extends com.google.api.client.json.GenericJson { + + /** + * Output only. The catalog resource name (format: projects/catalogs). + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String catalog; + + /** + * Output only. The type of the catalog. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String catalogType; + + /** + * Output only. Summary of results for each database in the catalog. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.util.ListThis is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class DatabaseSummary extends com.google.api.client.json.GenericJson { + + /** + * Output only. The name of the database. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String database; + + /** + * Output only. The migration plan action for the database. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String planAction; + + /** + * Output only. The migration result status for the database. This is only set if the migration is + * not a dry run. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String resultStatus; + + /** + * Output only. Aggregated summary of results for all tables in the database. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private TableSummary tableSummary; + + /** + * Output only. The name of the database. + * @return value or {@code null} for none + */ + public java.lang.String getDatabase() { + return database; + } + + /** + * Output only. The name of the database. + * @param database database or {@code null} for none + */ + public DatabaseSummary setDatabase(java.lang.String database) { + this.database = database; + return this; + } + + /** + * Output only. The migration plan action for the database. + * @return value or {@code null} for none + */ + public java.lang.String getPlanAction() { + return planAction; + } + + /** + * Output only. The migration plan action for the database. + * @param planAction planAction or {@code null} for none + */ + public DatabaseSummary setPlanAction(java.lang.String planAction) { + this.planAction = planAction; + return this; + } + + /** + * Output only. The migration result status for the database. This is only set if the migration is + * not a dry run. + * @return value or {@code null} for none + */ + public java.lang.String getResultStatus() { + return resultStatus; + } + + /** + * Output only. The migration result status for the database. This is only set if the migration is + * not a dry run. + * @param resultStatus resultStatus or {@code null} for none + */ + public DatabaseSummary setResultStatus(java.lang.String resultStatus) { + this.resultStatus = resultStatus; + return this; + } + + /** + * Output only. Aggregated summary of results for all tables in the database. + * @return value or {@code null} for none + */ + public TableSummary getTableSummary() { + return tableSummary; + } + + /** + * Output only. Aggregated summary of results for all tables in the database. + * @param tableSummary tableSummary or {@code null} for none + */ + public DatabaseSummary setTableSummary(TableSummary tableSummary) { + this.tableSummary = tableSummary; + return this; + } + + @Override + public DatabaseSummary set(String fieldName, Object value) { + return (DatabaseSummary) super.set(fieldName, value); + } + + @Override + public DatabaseSummary clone() { + return (DatabaseSummary) super.clone(); + } + +} diff --git a/clients/google-api-services-metastore/v1beta/2.0.0/com/google/api/services/metastore/v1beta/model/HiveConfig.java b/clients/google-api-services-metastore/v1beta/2.0.0/com/google/api/services/metastore/v1beta/model/HiveConfig.java new file mode 100644 index 00000000000..c353de0c5a6 --- /dev/null +++ b/clients/google-api-services-metastore/v1beta/2.0.0/com/google/api/services/metastore/v1beta/model/HiveConfig.java @@ -0,0 +1,100 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ +/* + * This code was generated by https://github.com/googleapis/google-api-java-client-services/ + * Modify at your own risk. + */ + +package com.google.api.services.metastore.v1beta.model; + +/** + * Configuration for migrating Hive metadata. + * + *This is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class HiveConfig extends com.google.api.client.json.GenericJson { + + /** + * Required. The target catalog for migrated databases and tables. Format: + * "projects/{project_id_or_number}/catalogs/{catalog_id}" + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String catalog; + + /** + * Required. The list of databases to migrate to the Hive catalog. Use "*" to migrate all + * databases. Note: If Iceberg tables exist in these databases, they will only be migrated if + * iceberg_config is also specified. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.util.ListThis is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class IcebergConfig extends com.google.api.client.json.GenericJson { + + /** + * Required. The target catalog for migrated Iceberg metadata. Format: + * "projects/{project_id_or_number}/catalogs/{catalog_id}" + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.lang.String catalog; + + /** + * Required. The list of namespaces to migrate to the Iceberg REST catalog. Use "*" to migrate all + * namespaces. Note: If Hive tables exist in these namespaces, they will only be migrated if + * hive_config is also specified. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.util.ListThis is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class MigrationSummary extends com.google.api.client.json.GenericJson { + + /** + * Output only. Summary of results for each catalog involved in the migration. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key + private java.util.ListThis is the Java data model class that specifies how to parse/serialize into the JSON that is + * transmitted over HTTP when working with the Dataproc Metastore API. For a detailed explanation + * see: + * https://developers.google.com/api-client-library/java/google-http-java-client/json + *
+ * + * @author Google, Inc. + */ +@SuppressWarnings("javadoc") +public final class TableSummary extends com.google.api.client.json.GenericJson { + + /** + * Output only. Partition migration summary across all Hive tables in the database.The total + * number of partitions discovered at the source. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key @com.google.api.client.json.JsonString + private java.lang.Long partitionDiscoveredCount; + + /** + * Output only. The total number of partitions that failed to migrate at the target. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key @com.google.api.client.json.JsonString + private java.lang.Long partitionFailedCount; + + /** + * Output only. The total number of partitions successfully migrated at the target. + * The value may be {@code null}. + */ + @com.google.api.client.util.Key @com.google.api.client.json.JsonString + private java.lang.Long partitionSuccessCount; + + /** + * Output only. Number of tables with a specific migration plan action. The key is the action name + * (e.g. CREATE, UPDATE, SKIP, etc.). + * The value may be {@code null}. + */ + @com.google.api.client.util.Key @com.google.api.client.json.JsonString + private java.util.Map