pkg/controller/direct/bigquery/table_mapper.go (480 lines of code) (raw):

// Copyright 2025 Google LLC // // 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. package bigquery import ( "encoding/json" krmv1beta1 "github.com/GoogleCloudPlatform/k8s-config-connector/apis/bigquery/v1beta1" refs "github.com/GoogleCloudPlatform/k8s-config-connector/apis/refs/v1beta1" "github.com/GoogleCloudPlatform/k8s-config-connector/pkg/controller/direct" pb "google.golang.org/api/bigquery/v2" ) func MaterializedViewDefinition_FromProto(mapCtx *direct.MapContext, in *pb.MaterializedViewDefinition) *krmv1beta1.MaterializedViewDefinition { if in == nil { return nil } out := &krmv1beta1.MaterializedViewDefinition{} out.Query = direct.LazyPtr(in.Query) // MISSING: LastRefreshTime out.EnableRefresh = direct.LazyPtr(in.EnableRefresh) out.RefreshIntervalMs = direct.LazyPtr(in.RefreshIntervalMs) out.AllowNonIncrementalDefinition = direct.LazyPtr(in.AllowNonIncrementalDefinition) return out } func MaterializedViewDefinition_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.MaterializedViewDefinition) *pb.MaterializedViewDefinition { if in == nil { return nil } out := &pb.MaterializedViewDefinition{} out.Query = direct.ValueOf(in.Query) // MISSING: LastRefreshTime out.EnableRefresh = direct.ValueOf(in.EnableRefresh) out.RefreshIntervalMs = direct.ValueOf(in.RefreshIntervalMs) out.AllowNonIncrementalDefinition = direct.ValueOf(in.AllowNonIncrementalDefinition) return out } func RangePartitioning_Range_FromProto(mapCtx *direct.MapContext, in *pb.RangePartitioningRange) krmv1beta1.RangePartitioning_Range { if in == nil { return krmv1beta1.RangePartitioning_Range{} } out := krmv1beta1.RangePartitioning_Range{} out.Start = direct.LazyPtr(in.Start) out.End = direct.LazyPtr(in.End) out.Interval = direct.LazyPtr(in.Interval) return out } func RangePartitioning_Range_ToProto(mapCtx *direct.MapContext, in krmv1beta1.RangePartitioning_Range) *pb.RangePartitioningRange { out := &pb.RangePartitioningRange{} out.Start = direct.ValueOf(in.Start) out.End = direct.ValueOf(in.End) out.Interval = direct.ValueOf(in.Interval) return out } func RangePartitioning_FromProto(mapCtx *direct.MapContext, in *pb.RangePartitioning) *krmv1beta1.RangePartitioning { if in == nil { return nil } out := &krmv1beta1.RangePartitioning{} out.Field = direct.LazyPtr(in.Field) out.Range = RangePartitioning_Range_FromProto(mapCtx, in.Range) return out } func RangePartitioning_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.RangePartitioning) *pb.RangePartitioning { if in == nil { return nil } out := &pb.RangePartitioning{} out.Field = direct.ValueOf(in.Field) out.Range = RangePartitioning_Range_ToProto(mapCtx, in.Range) return out } func TimePartitioning_FromProto(mapCtx *direct.MapContext, in *pb.TimePartitioning) *krmv1beta1.TimePartitioning { if in == nil { return nil } out := &krmv1beta1.TimePartitioning{} out.Type = in.Type out.ExpirationMs = direct.LazyPtr(in.ExpirationMs) out.Field = direct.LazyPtr(in.Field) return out } func TimePartitioning_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.TimePartitioning) *pb.TimePartitioning { if in == nil { return nil } out := &pb.TimePartitioning{} out.Type = in.Type out.ExpirationMs = direct.ValueOf(in.ExpirationMs) out.Field = direct.ValueOf(in.Field) return out } func Table_Schema_FromProto(mapCtx *direct.MapContext, in *pb.TableSchema) *string { if in == nil { return nil } jsonDataBytes, err := json.Marshal(in) if err != nil { mapCtx.Errorf("failed to marshal json: %v", err) return nil } return direct.LazyPtr(string(jsonDataBytes)) } func Table_Schema_ToProto(mapCtx *direct.MapContext, in *string) *pb.TableSchema { if in == nil { return nil } out := &pb.TableSchema{} err := json.Unmarshal([]byte(direct.ValueOf(in)), out) if err != nil { mapCtx.Errorf("failed to unmarshal json: %v", err) return nil } return out } func ViewDefinition_FromProto(mapCtx *direct.MapContext, in *pb.ViewDefinition) *krmv1beta1.ViewDefinition { if in == nil { return nil } out := &krmv1beta1.ViewDefinition{} out.Query = direct.LazyPtr(in.Query) // MISSING: UserDefinedFunctionResources // MISSING: UseLegacySQL // (near miss): "UseLegacySQL" vs "UseLegacySql" // MISSING: UseExplicitColumnNames // MISSING: PrivacyPolicy // MISSING: ForeignDefinitions return out } func ViewDefinition_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.ViewDefinition) *pb.ViewDefinition { if in == nil { return nil } out := &pb.ViewDefinition{} out.Query = direct.ValueOf(in.Query) // MISSING: UserDefinedFunctionResources // MISSING: UseLegacySQL // (near miss): "UseLegacySQL" vs "UseLegacySql" // MISSING: UseExplicitColumnNames // MISSING: PrivacyPolicy // MISSING: ForeignDefinitions return out } func BigQueryTableObservedState_FromProto(mapCtx *direct.MapContext, in *pb.Table) *krmv1beta1.BigQueryTableObservedState { if in == nil { return nil } out := &krmv1beta1.BigQueryTableObservedState{} // MISSING: Kind // MISSING: Etag // MISSING: ID // MISSING: SelfLink // MISSING: TableReference // MISSING: PartitionDefinition // MISSING: NumBytes // MISSING: NumPhysicalBytes // MISSING: NumLongTermBytes // MISSING: NumRows // MISSING: CreationTime // MISSING: LastModifiedTime // MISSING: Type // MISSING: MaterializedViewStatus // MISSING: BiglakeConfiguration // MISSING: Location // MISSING: StreamingBuffer // MISSING: SnapshotDefinition // MISSING: DefaultCollation // MISSING: DefaultRoundingMode // MISSING: CloneDefinition // MISSING: NumTimeTravelPhysicalBytes // MISSING: NumTotalLogicalBytes // MISSING: NumActiveLogicalBytes // MISSING: NumLongTermLogicalBytes // MISSING: NumCurrentPhysicalBytes // MISSING: NumTotalPhysicalBytes // MISSING: NumActivePhysicalBytes // MISSING: NumLongTermPhysicalBytes // MISSING: NumPartitions // MISSING: Restrictions // MISSING: ResourceTags // MISSING: TableReplicationInfo // MISSING: Replicas // MISSING: ExternalCatalogTableOptions return out } func BigQueryTableObservedState_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.BigQueryTableObservedState) *pb.Table { if in == nil { return nil } out := &pb.Table{} // MISSING: Kind // MISSING: Etag // MISSING: ID // MISSING: SelfLink // MISSING: TableReference // MISSING: PartitionDefinition // MISSING: NumBytes // MISSING: NumPhysicalBytes // MISSING: NumLongTermBytes // MISSING: NumRows // MISSING: CreationTime // MISSING: LastModifiedTime // MISSING: Type // MISSING: MaterializedViewStatus // MISSING: BiglakeConfiguration // MISSING: Location // MISSING: StreamingBuffer // MISSING: SnapshotDefinition // MISSING: DefaultCollation // MISSING: DefaultRoundingMode // MISSING: CloneDefinition // MISSING: NumTimeTravelPhysicalBytes // MISSING: NumTotalLogicalBytes // MISSING: NumActiveLogicalBytes // MISSING: NumLongTermLogicalBytes // MISSING: NumCurrentPhysicalBytes // MISSING: NumTotalPhysicalBytes // MISSING: NumActivePhysicalBytes // MISSING: NumLongTermPhysicalBytes // MISSING: NumPartitions // MISSING: Restrictions // MISSING: ResourceTags // MISSING: TableReplicationInfo // MISSING: Replicas // MISSING: ExternalCatalogTableOptions return out } func ExternalDataConfiguration_FromProto(mapCtx *direct.MapContext, in *pb.ExternalDataConfiguration) *krmv1beta1.ExternalDataConfiguration { if in == nil { return nil } out := &krmv1beta1.ExternalDataConfiguration{} out.SourceUris = in.SourceUris out.FileSetSpecType = direct.LazyPtr(in.FileSetSpecType) out.Schema = Table_Schema_FromProto(mapCtx, in.Schema) out.SourceFormat = direct.LazyPtr(in.SourceFormat) out.MaxBadRecords = direct.LazyPtr(in.MaxBadRecords) out.Autodetect = direct.LazyPtr(in.Autodetect) out.IgnoreUnknownValues = direct.LazyPtr(in.IgnoreUnknownValues) out.Compression = direct.LazyPtr(in.Compression) out.CsvOptions = CsvOptions_FromProto(mapCtx, in.CsvOptions) out.JsonOptions = JsonOptions_FromProto(mapCtx, in.JsonOptions) // MISSING: BigtableOptions out.GoogleSheetsOptions = GoogleSheetsOptions_FromProto(mapCtx, in.GoogleSheetsOptions) out.HivePartitioningOptions = HivePartitioningOptions_FromProto(mapCtx, in.HivePartitioningOptions) // MISSING: ConnectionID // (near miss): "ConnectionID" vs "ConnectionId" // MISSING: DecimalTargetTypes out.AvroOptions = AvroOptions_FromProto(mapCtx, in.AvroOptions) // MISSING: JsonExtension out.ParquetOptions = ParquetOptions_FromProto(mapCtx, in.ParquetOptions) out.ObjectMetadata = direct.LazyPtr(in.ObjectMetadata) // MISSING: ReferenceFileSchemaURI // (near miss): "ReferenceFileSchemaURI" vs "ReferenceFileSchemaUri" out.MetadataCacheMode = direct.LazyPtr(in.MetadataCacheMode) return out } func ExternalDataConfiguration_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.ExternalDataConfiguration) *pb.ExternalDataConfiguration { if in == nil { return nil } out := &pb.ExternalDataConfiguration{} out.SourceUris = in.SourceUris out.FileSetSpecType = direct.ValueOf(in.FileSetSpecType) out.Schema = Table_Schema_ToProto(mapCtx, in.Schema) out.SourceFormat = direct.ValueOf(in.SourceFormat) out.MaxBadRecords = direct.ValueOf(in.MaxBadRecords) out.Autodetect = direct.ValueOf(in.Autodetect) out.IgnoreUnknownValues = direct.ValueOf(in.IgnoreUnknownValues) out.Compression = direct.ValueOf(in.Compression) out.CsvOptions = CsvOptions_ToProto(mapCtx, in.CsvOptions) out.JsonOptions = JsonOptions_ToProto(mapCtx, in.JsonOptions) // MISSING: BigtableOptions out.GoogleSheetsOptions = GoogleSheetsOptions_ToProto(mapCtx, in.GoogleSheetsOptions) out.HivePartitioningOptions = HivePartitioningOptions_ToProto(mapCtx, in.HivePartitioningOptions) // MISSING: ConnectionID // (near miss): "ConnectionID" vs "ConnectionId" // MISSING: DecimalTargetTypes out.AvroOptions = AvroOptions_ToProto(mapCtx, in.AvroOptions) // MISSING: JsonExtension out.ParquetOptions = ParquetOptions_ToProto(mapCtx, in.ParquetOptions) out.ObjectMetadata = direct.ValueOf(in.ObjectMetadata) // MISSING: ReferenceFileSchemaURI // (near miss): "ReferenceFileSchemaURI" vs "ReferenceFileSchemaUri" out.MetadataCacheMode = direct.ValueOf(in.MetadataCacheMode) return out } func CsvOptions_FromProto(mapCtx *direct.MapContext, in *pb.CsvOptions) *krmv1beta1.CsvOptions { if in == nil { return nil } out := &krmv1beta1.CsvOptions{} out.FieldDelimiter = direct.LazyPtr(in.FieldDelimiter) out.SkipLeadingRows = direct.LazyPtr(in.SkipLeadingRows) out.Quote = in.Quote out.AllowQuotedNewlines = direct.LazyPtr(in.AllowQuotedNewlines) out.AllowJaggedRows = direct.LazyPtr(in.AllowJaggedRows) out.Encoding = direct.LazyPtr(in.Encoding) // MISSING: PreserveAsciiControlCharacters // MISSING: NullMarker return out } func CsvOptions_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.CsvOptions) *pb.CsvOptions { if in == nil { return nil } out := &pb.CsvOptions{} out.FieldDelimiter = direct.ValueOf(in.FieldDelimiter) out.SkipLeadingRows = direct.ValueOf(in.SkipLeadingRows) out.Quote = in.Quote out.AllowQuotedNewlines = direct.ValueOf(in.AllowQuotedNewlines) out.AllowJaggedRows = direct.ValueOf(in.AllowJaggedRows) out.Encoding = direct.ValueOf(in.Encoding) // MISSING: PreserveAsciiControlCharacters // MISSING: NullMarker return out } func JsonOptions_FromProto(mapCtx *direct.MapContext, in *pb.JsonOptions) *krmv1beta1.JsonOptions { if in == nil { return nil } out := &krmv1beta1.JsonOptions{} out.Encoding = direct.LazyPtr(in.Encoding) return out } func JsonOptions_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.JsonOptions) *pb.JsonOptions { if in == nil { return nil } out := &pb.JsonOptions{} out.Encoding = direct.ValueOf(in.Encoding) return out } func HivePartitioningOptions_FromProto(mapCtx *direct.MapContext, in *pb.HivePartitioningOptions) *krmv1beta1.HivePartitioningOptions { if in == nil { return nil } out := &krmv1beta1.HivePartitioningOptions{} out.Mode = direct.LazyPtr(in.Mode) // MISSING: SourceURIPrefix // (near miss): "SourceURIPrefix" vs "SourceUriPrefix" out.RequirePartitionFilter = direct.LazyPtr(in.RequirePartitionFilter) // MISSING: Fields return out } func HivePartitioningOptions_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.HivePartitioningOptions) *pb.HivePartitioningOptions { if in == nil { return nil } out := &pb.HivePartitioningOptions{} out.Mode = direct.ValueOf(in.Mode) // MISSING: SourceURIPrefix // (near miss): "SourceURIPrefix" vs "SourceUriPrefix" out.RequirePartitionFilter = direct.ValueOf(in.RequirePartitionFilter) // MISSING: Fields return out } func AvroOptions_FromProto(mapCtx *direct.MapContext, in *pb.AvroOptions) *krmv1beta1.AvroOptions { if in == nil { return nil } out := &krmv1beta1.AvroOptions{} out.UseAvroLogicalTypes = direct.LazyPtr(in.UseAvroLogicalTypes) return out } func AvroOptions_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.AvroOptions) *pb.AvroOptions { if in == nil { return nil } out := &pb.AvroOptions{} out.UseAvroLogicalTypes = direct.ValueOf(in.UseAvroLogicalTypes) return out } func ParquetOptions_FromProto(mapCtx *direct.MapContext, in *pb.ParquetOptions) *krmv1beta1.ParquetOptions { if in == nil { return nil } out := &krmv1beta1.ParquetOptions{} out.EnumAsString = direct.LazyPtr(in.EnumAsString) out.EnableListInference = direct.LazyPtr(in.EnableListInference) // MISSING: MapTargetType return out } func ParquetOptions_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.ParquetOptions) *pb.ParquetOptions { if in == nil { return nil } out := &pb.ParquetOptions{} out.EnumAsString = direct.ValueOf(in.EnumAsString) out.EnableListInference = direct.ValueOf(in.EnableListInference) // MISSING: MapTargetType return out } func EncryptionConfiguration_FromProto(mapCtx *direct.MapContext, in *pb.EncryptionConfiguration) *krmv1beta1.TableEncryptionConfiguration { if in == nil { return nil } out := &krmv1beta1.TableEncryptionConfiguration{} if in.KmsKeyName != "" { out.KmsKeyRef = &refs.KMSCryptoKeyRef{External: in.KmsKeyName} } return out } func EncryptionConfiguration_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.TableEncryptionConfiguration) *pb.EncryptionConfiguration { if in == nil { return nil } out := &pb.EncryptionConfiguration{} if in.KmsKeyRef != nil { out.KmsKeyName = in.KmsKeyRef.External } return out } func TableConstraints_FromProto(mapCtx *direct.MapContext, in *pb.TableConstraints) *krmv1beta1.TableConstraints { if in == nil { return nil } out := &krmv1beta1.TableConstraints{} out.PrimaryKey = PrimaryKey_FromProto(mapCtx, in.PrimaryKey) out.ForeignKeys = direct.Slice_FromProto(mapCtx, in.ForeignKeys, ForeignKey_FromProto) return out } func TableConstraints_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.TableConstraints) *pb.TableConstraints { if in == nil { return nil } out := &pb.TableConstraints{} out.PrimaryKey = PrimaryKey_ToProto(mapCtx, in.PrimaryKey) out.ForeignKeys = direct.Slice_ToProto(mapCtx, in.ForeignKeys, ForeignKey_ToProto) return out } func PrimaryKey_FromProto(mapCtx *direct.MapContext, in *pb.TableConstraintsPrimaryKey) *krmv1beta1.PrimaryKey { if in == nil { return nil } out := &krmv1beta1.PrimaryKey{} out.Columns = in.Columns return out } func PrimaryKey_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.PrimaryKey) *pb.TableConstraintsPrimaryKey { if in == nil { return nil } out := &pb.TableConstraintsPrimaryKey{} out.Columns = in.Columns return out } func ForeignKey_FromProto(mapCtx *direct.MapContext, in *pb.TableConstraintsForeignKeys) *krmv1beta1.ForeignKey { if in == nil { return nil } out := &krmv1beta1.ForeignKey{} out.Name = direct.LazyPtr(in.Name) out.ReferencedTable = TableReference_FromProto(mapCtx, in.ReferencedTable) if len(in.ColumnReferences) > 0 { out.ColumnReferences = ColumnReference_FromProto(mapCtx, in.ColumnReferences[0]) } return out } func ForeignKey_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.ForeignKey) *pb.TableConstraintsForeignKeys { if in == nil { return nil } out := &pb.TableConstraintsForeignKeys{} out.Name = direct.ValueOf(in.Name) out.ReferencedTable = TableReference_ToProto(mapCtx, in.ReferencedTable) out.ColumnReferences = []*pb.TableConstraintsForeignKeysColumnReferences{ColumnReference_ToProto(mapCtx, in.ColumnReferences)} return out } func TableReference_FromProto(mapCtx *direct.MapContext, in *pb.TableConstraintsForeignKeysReferencedTable) krmv1beta1.TableReference { if in == nil { return krmv1beta1.TableReference{} } out := krmv1beta1.TableReference{} out.DatasetId = direct.LazyPtr(in.DatasetId) out.ProjectId = direct.LazyPtr(in.ProjectId) out.TableId = direct.LazyPtr(in.TableId) return out } func ColumnReference_FromProto(mapCtx *direct.MapContext, in *pb.TableConstraintsForeignKeysColumnReferences) krmv1beta1.ColumnReference { out := krmv1beta1.ColumnReference{} out.ReferencingColumn = direct.LazyPtr(in.ReferencingColumn) out.ReferencedColumn = direct.LazyPtr(in.ReferencedColumn) return out } func ColumnReference_ToProto(mapCtx *direct.MapContext, in krmv1beta1.ColumnReference) *pb.TableConstraintsForeignKeysColumnReferences { out := &pb.TableConstraintsForeignKeysColumnReferences{} out.ReferencingColumn = direct.ValueOf(in.ReferencingColumn) out.ReferencedColumn = direct.ValueOf(in.ReferencedColumn) return out } func TableReference_ToProto(mapCtx *direct.MapContext, in krmv1beta1.TableReference) *pb.TableConstraintsForeignKeysReferencedTable { out := &pb.TableConstraintsForeignKeysReferencedTable{} out.DatasetId = direct.ValueOf(in.DatasetId) out.ProjectId = direct.ValueOf(in.ProjectId) out.TableId = direct.ValueOf(in.TableId) return out } func GoogleSheetsOptions_FromProto(mapCtx *direct.MapContext, in *pb.GoogleSheetsOptions) *krmv1beta1.GoogleSheetsOptions { if in == nil { return nil } out := &krmv1beta1.GoogleSheetsOptions{} out.SkipLeadingRows = direct.LazyPtr(in.SkipLeadingRows) out.Range = direct.LazyPtr(in.Range) return out } func GoogleSheetsOptions_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.GoogleSheetsOptions) *pb.GoogleSheetsOptions { if in == nil { return nil } out := &pb.GoogleSheetsOptions{} out.SkipLeadingRows = direct.ValueOf(in.SkipLeadingRows) out.Range = direct.ValueOf(in.Range) return out } func BigQueryTableSpec_FromProto(mapCtx *direct.MapContext, in *pb.Table) *krmv1beta1.BigQueryTableSpec { if in == nil { return nil } out := &krmv1beta1.BigQueryTableSpec{} // MISSING: Kind // MISSING: Etag // MISSING: ID // MISSING: SelfLink // MISSING: TableReference out.FriendlyName = direct.LazyPtr(in.FriendlyName) out.Description = direct.LazyPtr(in.Description) out.Labels = in.Labels out.Schema = Table_Schema_FromProto(mapCtx, in.Schema) out.TimePartitioning = TimePartitioning_FromProto(mapCtx, in.TimePartitioning) out.RangePartitioning = RangePartitioning_FromProto(mapCtx, in.RangePartitioning) if in.Clustering != nil { out.Clustering = in.Clustering.Fields } out.RequirePartitionFilter = direct.LazyPtr(in.RequirePartitionFilter) // MISSING: PartitionDefinition // MISSING: NumBytes // MISSING: NumPhysicalBytes // MISSING: NumLongTermBytes // MISSING: NumRows // MISSING: CreationTime out.ExpirationTime = direct.LazyPtr(in.ExpirationTime) // MISSING: LastModifiedTime // MISSING: Type out.View = ViewDefinition_FromProto(mapCtx, in.View) out.MaterializedView = MaterializedViewDefinition_FromProto(mapCtx, in.MaterializedView) // MISSING: MaterializedViewStatus out.ExternalDataConfiguration = ExternalDataConfiguration_FromProto(mapCtx, in.ExternalDataConfiguration) // MISSING: BiglakeConfiguration // MISSING: Location // MISSING: StreamingBuffer out.EncryptionConfiguration = EncryptionConfiguration_FromProto(mapCtx, in.EncryptionConfiguration) // MISSING: SnapshotDefinition // MISSING: DefaultCollation // MISSING: DefaultRoundingMode // MISSING: CloneDefinition // MISSING: NumTimeTravelPhysicalBytes // MISSING: NumTotalLogicalBytes // MISSING: NumActiveLogicalBytes // MISSING: NumLongTermLogicalBytes // MISSING: NumCurrentPhysicalBytes // MISSING: NumTotalPhysicalBytes // MISSING: NumActivePhysicalBytes // MISSING: NumLongTermPhysicalBytes // MISSING: NumPartitions out.MaxStaleness = direct.LazyPtr(in.MaxStaleness) // MISSING: Restrictions out.TableConstraints = TableConstraints_FromProto(mapCtx, in.TableConstraints) // MISSING: ResourceTags // MISSING: TableReplicationInfo // MISSING: Replicas // MISSING: ExternalCatalogTableOptions return out } func BigQueryTableSpec_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.BigQueryTableSpec) *pb.Table { if in == nil { return nil } out := &pb.Table{} // MISSING: Kind // MISSING: Etag // MISSING: ID // MISSING: SelfLink // MISSING: TableReference out.FriendlyName = direct.ValueOf(in.FriendlyName) out.Description = direct.ValueOf(in.Description) out.Labels = in.Labels out.Schema = Table_Schema_ToProto(mapCtx, in.Schema) out.TimePartitioning = TimePartitioning_ToProto(mapCtx, in.TimePartitioning) out.RangePartitioning = RangePartitioning_ToProto(mapCtx, in.RangePartitioning) if len(in.Clustering) > 0 { out.Clustering = &pb.Clustering{} out.Clustering.Fields = in.Clustering } out.RequirePartitionFilter = direct.ValueOf(in.RequirePartitionFilter) // MISSING: PartitionDefinition // MISSING: NumBytes // MISSING: NumPhysicalBytes // MISSING: NumLongTermBytes // MISSING: NumRows // MISSING: CreationTime out.ExpirationTime = direct.ValueOf(in.ExpirationTime) // MISSING: LastModifiedTime // MISSING: Type out.View = ViewDefinition_ToProto(mapCtx, in.View) out.MaterializedView = MaterializedViewDefinition_ToProto(mapCtx, in.MaterializedView) // MISSING: MaterializedViewStatus out.ExternalDataConfiguration = ExternalDataConfiguration_ToProto(mapCtx, in.ExternalDataConfiguration) // MISSING: BiglakeConfiguration // MISSING: Location // MISSING: StreamingBuffer out.EncryptionConfiguration = EncryptionConfiguration_ToProto(mapCtx, in.EncryptionConfiguration) // MISSING: SnapshotDefinition // MISSING: DefaultCollation // MISSING: DefaultRoundingMode // MISSING: CloneDefinition // MISSING: NumTimeTravelPhysicalBytesEncryptionConfiguration_FromProto // MISSING: NumTotalLogicalBytes // MISSING: NumActiveLogicalBytes // MISSING: NumLongTermLogicalBytes // MISSING: NumCurrentPhysicalBytes // MISSING: NumTotalPhysicalBytes // MISSING: NumActivePhysicalBytes // MISSING: NumLongTermPhysicalBytes // MISSING: NumPartitions out.MaxStaleness = direct.ValueOf(in.MaxStaleness) // MISSING: Restrictions out.TableConstraints = TableConstraints_ToProto(mapCtx, in.TableConstraints) // MISSING: ResourceTags // MISSING: TableReplicationInfo // MISSING: Replicas // MISSING: ExternalCatalogTableOptions return out } func BigQueryTableStatus_FromProto(mapCtx *direct.MapContext, in *pb.Table) *krmv1beta1.BigQueryTableStatus { if in == nil { return nil } out := &krmv1beta1.BigQueryTableStatus{} out.CreationTime = direct.LazyPtr(in.CreationTime) out.Etag = direct.LazyPtr(in.Etag) out.LastModifiedTime = direct.LazyPtr(int64(in.LastModifiedTime)) out.Location = direct.LazyPtr(in.Location) out.NumBytes = direct.LazyPtr(in.NumBytes) out.NumRows = direct.LazyPtr(int64(in.NumRows)) out.SelfLink = direct.LazyPtr(in.SelfLink) out.Type = direct.LazyPtr(in.Type) return out } func BigQueryTableStatus_ToProto(mapCtx *direct.MapContext, in *krmv1beta1.BigQueryTableStatus) *pb.Table { if in == nil { return nil } out := &pb.Table{} out.CreationTime = direct.ValueOf(in.CreationTime) out.Etag = direct.ValueOf(in.Etag) out.LastModifiedTime = uint64(direct.ValueOf(in.LastModifiedTime)) out.Location = direct.ValueOf(in.Location) out.NumBytes = direct.ValueOf(in.NumBytes) out.NumRows = uint64(direct.ValueOf(in.NumRows)) out.SelfLink = direct.ValueOf(in.SelfLink) out.Type = direct.ValueOf(in.Type) return out }