Class TableRowToStorageApiProto
- java.lang.Object
-
- org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto
-
public class TableRowToStorageApiProto extends java.lang.ObjectUtility methods for converting JSONTableRowobjects to dynamic protocol message, for use with the Storage write API.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTableRowToStorageApiProto.SchemaDoesntMatchExceptionstatic classTableRowToStorageApiProto.SchemaTooNarrowExceptionstatic classTableRowToStorageApiProto.SingleValueConversionException
-
Constructor Summary
Constructors Constructor Description TableRowToStorageApiProto()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static com.google.protobuf.Descriptors.DescriptorgetDescriptorFromTableSchema(com.google.api.services.bigquery.model.TableSchema jsonSchema, boolean respectRequired, boolean includeCdcColumns)static com.google.protobuf.Descriptors.DescriptorgetDescriptorFromTableSchema(com.google.cloud.bigquery.storage.v1.TableSchema tableSchema, boolean respectRequired, boolean includeCdcColumns)Given a BigQuery TableSchema, returns a protocol-buffer Descriptor that can be used to write data using the BigQuery Storage API.static java.lang.ObjectjsonValueFromMessageValue(com.google.protobuf.Descriptors.FieldDescriptor fieldDescriptor, java.lang.Object fieldValue, boolean expandRepeated, java.util.function.Predicate<java.lang.String> includeField, java.lang.String prefix)static com.google.protobuf.DynamicMessagemessageFromMap(org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaInformation schemaInformation, com.google.protobuf.Descriptors.Descriptor descriptor, java.util.AbstractMap<java.lang.String,java.lang.Object> map, boolean ignoreUnknownValues, boolean allowMissingRequiredFields, @Nullable com.google.api.services.bigquery.model.TableRow unknownFields, @Nullable java.lang.String changeType, @Nullable java.lang.String changeSequenceNum)static com.google.protobuf.DynamicMessagemessageFromTableRow(org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaInformation schemaInformation, com.google.protobuf.Descriptors.Descriptor descriptor, com.google.api.services.bigquery.model.TableRow tableRow, boolean ignoreUnknownValues, boolean allowMissingRequiredFields, @Nullable com.google.api.services.bigquery.model.TableRow unknownFields, @Nullable java.lang.String changeType, long changeSequenceNum)Forwards {@param changeSequenceNum} tomessageFromTableRow(SchemaInformation, Descriptor, TableRow, boolean, boolean, TableRow, String, String)viaLong.toHexString(long).static com.google.protobuf.DynamicMessagemessageFromTableRow(org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaInformation schemaInformation, com.google.protobuf.Descriptors.Descriptor descriptor, com.google.api.services.bigquery.model.TableRow tableRow, boolean ignoreUnknownValues, boolean allowMissingRequiredFields, @Nullable com.google.api.services.bigquery.model.TableRow unknownFields, @Nullable java.lang.String changeType, @Nullable java.lang.String changeSequenceNum)Given a BigQuery TableRow, returns a protocol-buffer message that can be used to write data using the BigQuery Storage API.static com.google.cloud.bigquery.storage.v1.TableFieldSchema.ModemodeToProtoMode(@Nullable java.lang.String defaultValueExpression, java.lang.String mode)static java.lang.StringprotoModeToJsonMode(com.google.cloud.bigquery.storage.v1.TableFieldSchema.Mode protoMode)static com.google.api.services.bigquery.model.TableSchemaprotoSchemaToTableSchema(com.google.cloud.bigquery.storage.v1.TableSchema protoTableSchema)static com.google.api.services.bigquery.model.TableFieldSchemaprotoTableFieldToTableField(com.google.cloud.bigquery.storage.v1.TableFieldSchema protoTableField)static java.lang.StringprotoTypeToJsonType(com.google.cloud.bigquery.storage.v1.TableFieldSchema.Type protoType)static com.google.cloud.bigquery.storage.v1.TableSchemaschemaToProtoTableSchema(com.google.api.services.bigquery.model.TableSchema tableSchema)static com.google.cloud.bigquery.storage.v1.TableFieldSchematableFieldToProtoTableField(com.google.api.services.bigquery.model.TableFieldSchema field)static com.google.api.services.bigquery.model.TableRowtableRowFromMessage(com.google.protobuf.Message message, boolean includeCdcColumns, java.util.function.Predicate<java.lang.String> includeField)static com.google.api.services.bigquery.model.TableRowtableRowFromMessage(com.google.protobuf.Message message, boolean includeCdcColumns, java.util.function.Predicate<java.lang.String> includeField, java.lang.String namePrefix)static com.google.cloud.bigquery.storage.v1.TableFieldSchema.TypetypeToProtoType(java.lang.String type)static com.google.protobuf.Descriptors.DescriptorwrapDescriptorProto(com.google.protobuf.DescriptorProtos.DescriptorProto descriptorProto)
-
-
-
Method Detail
-
modeToProtoMode
public static com.google.cloud.bigquery.storage.v1.TableFieldSchema.Mode modeToProtoMode(@Nullable java.lang.String defaultValueExpression, java.lang.String mode)
-
protoModeToJsonMode
public static java.lang.String protoModeToJsonMode(com.google.cloud.bigquery.storage.v1.TableFieldSchema.Mode protoMode)
-
protoTypeToJsonType
public static java.lang.String protoTypeToJsonType(com.google.cloud.bigquery.storage.v1.TableFieldSchema.Type protoType)
-
typeToProtoType
public static com.google.cloud.bigquery.storage.v1.TableFieldSchema.Type typeToProtoType(java.lang.String type)
-
protoSchemaToTableSchema
public static com.google.api.services.bigquery.model.TableSchema protoSchemaToTableSchema(com.google.cloud.bigquery.storage.v1.TableSchema protoTableSchema)
-
protoTableFieldToTableField
public static com.google.api.services.bigquery.model.TableFieldSchema protoTableFieldToTableField(com.google.cloud.bigquery.storage.v1.TableFieldSchema protoTableField)
-
schemaToProtoTableSchema
public static com.google.cloud.bigquery.storage.v1.TableSchema schemaToProtoTableSchema(com.google.api.services.bigquery.model.TableSchema tableSchema)
-
tableFieldToProtoTableField
public static com.google.cloud.bigquery.storage.v1.TableFieldSchema tableFieldToProtoTableField(com.google.api.services.bigquery.model.TableFieldSchema field)
-
getDescriptorFromTableSchema
public static com.google.protobuf.Descriptors.Descriptor getDescriptorFromTableSchema(com.google.api.services.bigquery.model.TableSchema jsonSchema, boolean respectRequired, boolean includeCdcColumns) throws com.google.protobuf.Descriptors.DescriptorValidationException- Throws:
com.google.protobuf.Descriptors.DescriptorValidationException
-
getDescriptorFromTableSchema
public static com.google.protobuf.Descriptors.Descriptor getDescriptorFromTableSchema(com.google.cloud.bigquery.storage.v1.TableSchema tableSchema, boolean respectRequired, boolean includeCdcColumns) throws com.google.protobuf.Descriptors.DescriptorValidationExceptionGiven a BigQuery TableSchema, returns a protocol-buffer Descriptor that can be used to write data using the BigQuery Storage API.- Throws:
com.google.protobuf.Descriptors.DescriptorValidationException
-
wrapDescriptorProto
public static com.google.protobuf.Descriptors.Descriptor wrapDescriptorProto(com.google.protobuf.DescriptorProtos.DescriptorProto descriptorProto) throws com.google.protobuf.Descriptors.DescriptorValidationException- Throws:
com.google.protobuf.Descriptors.DescriptorValidationException
-
messageFromMap
public static com.google.protobuf.DynamicMessage messageFromMap(org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaInformation schemaInformation, com.google.protobuf.Descriptors.Descriptor descriptor, java.util.AbstractMap<java.lang.String,java.lang.Object> map, boolean ignoreUnknownValues, boolean allowMissingRequiredFields, @Nullable com.google.api.services.bigquery.model.TableRow unknownFields, @Nullable java.lang.String changeType, @Nullable java.lang.String changeSequenceNum) throws org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaConversionException- Throws:
org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaConversionException
-
messageFromTableRow
public static com.google.protobuf.DynamicMessage messageFromTableRow(org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaInformation schemaInformation, com.google.protobuf.Descriptors.Descriptor descriptor, com.google.api.services.bigquery.model.TableRow tableRow, boolean ignoreUnknownValues, boolean allowMissingRequiredFields, @Nullable com.google.api.services.bigquery.model.TableRow unknownFields, @Nullable java.lang.String changeType, long changeSequenceNum) throws org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaConversionExceptionForwards {@param changeSequenceNum} tomessageFromTableRow(SchemaInformation, Descriptor, TableRow, boolean, boolean, TableRow, String, String)viaLong.toHexString(long).- Throws:
org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaConversionException
-
messageFromTableRow
public static com.google.protobuf.DynamicMessage messageFromTableRow(org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaInformation schemaInformation, com.google.protobuf.Descriptors.Descriptor descriptor, com.google.api.services.bigquery.model.TableRow tableRow, boolean ignoreUnknownValues, boolean allowMissingRequiredFields, @Nullable com.google.api.services.bigquery.model.TableRow unknownFields, @Nullable java.lang.String changeType, @Nullable java.lang.String changeSequenceNum) throws org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaConversionExceptionGiven a BigQuery TableRow, returns a protocol-buffer message that can be used to write data using the BigQuery Storage API.- Throws:
org.apache.beam.sdk.io.gcp.bigquery.TableRowToStorageApiProto.SchemaConversionException
-
tableRowFromMessage
public static com.google.api.services.bigquery.model.TableRow tableRowFromMessage(com.google.protobuf.Message message, boolean includeCdcColumns, java.util.function.Predicate<java.lang.String> includeField)
-
tableRowFromMessage
public static com.google.api.services.bigquery.model.TableRow tableRowFromMessage(com.google.protobuf.Message message, boolean includeCdcColumns, java.util.function.Predicate<java.lang.String> includeField, java.lang.String namePrefix)
-
jsonValueFromMessageValue
public static java.lang.Object jsonValueFromMessageValue(com.google.protobuf.Descriptors.FieldDescriptor fieldDescriptor, java.lang.Object fieldValue, boolean expandRepeated, java.util.function.Predicate<java.lang.String> includeField, java.lang.String prefix)
-
-