@DefaultSchema(value=AutoValueSchema.class) public abstract static class PubsubLiteReadSchemaTransformProvider.PubsubLiteReadSchemaTransformConfiguration extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
PubsubLiteReadSchemaTransformProvider.PubsubLiteReadSchemaTransformConfiguration.Builder |
Constructor and Description |
---|
PubsubLiteReadSchemaTransformConfiguration() |
Modifier and Type | Method and Description |
---|---|
static PubsubLiteReadSchemaTransformProvider.PubsubLiteReadSchemaTransformConfiguration.Builder |
builder() |
abstract @Nullable java.lang.String |
getAttributeId() |
abstract @Nullable java.lang.String |
getAttributeMap() |
abstract @Nullable java.util.List<java.lang.String> |
getAttributes() |
abstract @Nullable ErrorHandling |
getErrorHandling() |
abstract @Nullable java.lang.String |
getFileDescriptorPath() |
abstract java.lang.String |
getFormat() |
abstract java.lang.String |
getLocation() |
abstract @Nullable java.lang.String |
getMessageName() |
abstract @Nullable java.lang.String |
getProject() |
abstract @Nullable java.lang.String |
getSchema() |
abstract java.lang.String |
getSubscriptionName() |
void |
validate() |
public PubsubLiteReadSchemaTransformConfiguration()
public void validate()
@SchemaFieldDescription(value="The encoding format for the data stored in Pubsub Lite. Valid options are: RAW,AVRO,JSON,PROTO") public abstract java.lang.String getFormat()
@SchemaFieldDescription(value="The schema in which the data is encoded in the Pubsub Lite topic. For AVRO data, this is a schema defined with AVRO schema syntax (https://avro.apache.org/docs/1.10.2/spec.html#schemas). For JSON data, this is a schema defined with JSON-schema syntax (https://json-schema.org/).") public abstract @Nullable java.lang.String getSchema()
@SchemaFieldDescription(value="The GCP project where the Pubsub Lite reservation resides. This can be a project number of a project ID.") public abstract @Nullable java.lang.String getProject()
@SchemaFieldDescription(value="The name of the subscription to consume data. This will be concatenated with the project and location parameters to build a full subscription path.") public abstract java.lang.String getSubscriptionName()
@SchemaFieldDescription(value="The region or zone where the Pubsub Lite reservation resides.") public abstract java.lang.String getLocation()
@SchemaFieldDescription(value="This option specifies whether and where to output unwritable rows.") public abstract @Nullable ErrorHandling getErrorHandling()
@SchemaFieldDescription(value="List of attribute keys whose values will be flattened into the output message as additional fields. For example, if the format is `RAW` and attributes is `[\"a\", \"b\"]` then this read will produce elements of the form `Row(payload=..., a=..., b=...)`") public abstract @Nullable java.util.List<java.lang.String> getAttributes()
@SchemaFieldDescription(value="Name of a field in which to store the full set of attributes associated with this message. For example, if the format is `RAW` and `attribute_map` is set to `\"attrs\"` then this read will produce elements of the form `Row(payload=..., attrs=...)` where `attrs` is a Map type of string to string. If both `attributes` and `attribute_map` are set, the overlapping attribute values will be present in both the flattened structure and the attribute map.") public abstract @Nullable java.lang.String getAttributeMap()
@SchemaFieldDescription(value="The attribute on incoming Pubsub Lite messages to use as a unique record identifier. When specified, the value of this attribute (which can be any string that uniquely identifies the record) will be used for deduplication of messages. If not provided, we cannot guarantee that no duplicate data will be delivered on the Pub/Sub stream. In this case, deduplication of the stream will be strictly best effort.") public abstract @Nullable java.lang.String getAttributeId()
@SchemaFieldDescription(value="The path to the Protocol Buffer File Descriptor Set file. This file is used for schema definition and message serialization.") public abstract @Nullable java.lang.String getFileDescriptorPath()
@SchemaFieldDescription(value="The name of the Protocol Buffer message to be used for schema extraction and data conversion.") public abstract @Nullable java.lang.String getMessageName()
public static PubsubLiteReadSchemaTransformProvider.PubsubLiteReadSchemaTransformConfiguration.Builder builder()