Class BigQueryDestination

  • All Implemented Interfaces:
    BigQueryDestinationOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

    public final class BigQueryDestination
    extends com.google.protobuf.GeneratedMessageV3
    implements BigQueryDestinationOrBuilder
     A BigQuery destination for exporting assets to.
     
    Protobuf type google.cloud.asset.v1p7beta1.BigQueryDestination
    See Also:
    Serialized Form
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  BigQueryDestination.Builder
      A BigQuery destination for exporting assets to.
      • Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3

        com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>,​BuilderT extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT,​BuilderT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter
      • Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite

        com.google.protobuf.AbstractMessageLite.InternalOneOfEnum
    • Field Detail

      • PARTITION_SPEC_FIELD_NUMBER

        public static final int PARTITION_SPEC_FIELD_NUMBER
        See Also:
        Constant Field Values
      • SEPARATE_TABLES_PER_ASSET_TYPE_FIELD_NUMBER

        public static final int SEPARATE_TABLES_PER_ASSET_TYPE_FIELD_NUMBER
        See Also:
        Constant Field Values
    • Method Detail

      • newInstance

        protected Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
      • getDataset

        public String getDataset()
         Required. The BigQuery dataset in format
         "projects/projectId/datasets/datasetId", to which the snapshot result
         should be exported. If this dataset does not exist, the export call returns
         an INVALID_ARGUMENT error.
         
        string dataset = 1 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getDataset in interface BigQueryDestinationOrBuilder
        Returns:
        The dataset.
      • getDatasetBytes

        public com.google.protobuf.ByteString getDatasetBytes()
         Required. The BigQuery dataset in format
         "projects/projectId/datasets/datasetId", to which the snapshot result
         should be exported. If this dataset does not exist, the export call returns
         an INVALID_ARGUMENT error.
         
        string dataset = 1 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getDatasetBytes in interface BigQueryDestinationOrBuilder
        Returns:
        The bytes for dataset.
      • getTable

        public String getTable()
         Required. The BigQuery table to which the snapshot result should be
         written. If this table does not exist, a new table with the given name
         will be created.
         
        string table = 2 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getTable in interface BigQueryDestinationOrBuilder
        Returns:
        The table.
      • getTableBytes

        public com.google.protobuf.ByteString getTableBytes()
         Required. The BigQuery table to which the snapshot result should be
         written. If this table does not exist, a new table with the given name
         will be created.
         
        string table = 2 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getTableBytes in interface BigQueryDestinationOrBuilder
        Returns:
        The bytes for table.
      • getForce

        public boolean getForce()
         If the destination table already exists and this flag is `TRUE`, the
         table will be overwritten by the contents of assets snapshot. If the flag
         is `FALSE` or unset and the destination table already exists, the export
         call returns an INVALID_ARGUMEMT error.
         
        bool force = 3;
        Specified by:
        getForce in interface BigQueryDestinationOrBuilder
        Returns:
        The force.
      • hasPartitionSpec

        public boolean hasPartitionSpec()
         [partition_spec] determines whether to export to partitioned table(s) and
         how to partition the data.
        
         If [partition_spec] is unset or [partition_spec.partition_key] is unset or
         `PARTITION_KEY_UNSPECIFIED`, the snapshot results will be exported to
         non-partitioned table(s). [force] will decide whether to overwrite existing
         table(s).
        
         If [partition_spec] is specified. First, the snapshot results will be
         written to partitioned table(s) with two additional timestamp columns,
         readTime and requestTime, one of which will be the partition key. Secondly,
         in the case when any destination table already exists, it will first try to
         update existing table's schema as necessary by appending additional
         columns. Then, if [force] is `TRUE`, the corresponding partition will be
         overwritten by the snapshot results (data in different partitions will
         remain intact); if [force] is unset or `FALSE`, it will append the data. An
         error will be returned if the schema update or data appension fails.
         
        .google.cloud.asset.v1p7beta1.PartitionSpec partition_spec = 4;
        Specified by:
        hasPartitionSpec in interface BigQueryDestinationOrBuilder
        Returns:
        Whether the partitionSpec field is set.
      • getPartitionSpec

        public PartitionSpec getPartitionSpec()
         [partition_spec] determines whether to export to partitioned table(s) and
         how to partition the data.
        
         If [partition_spec] is unset or [partition_spec.partition_key] is unset or
         `PARTITION_KEY_UNSPECIFIED`, the snapshot results will be exported to
         non-partitioned table(s). [force] will decide whether to overwrite existing
         table(s).
        
         If [partition_spec] is specified. First, the snapshot results will be
         written to partitioned table(s) with two additional timestamp columns,
         readTime and requestTime, one of which will be the partition key. Secondly,
         in the case when any destination table already exists, it will first try to
         update existing table's schema as necessary by appending additional
         columns. Then, if [force] is `TRUE`, the corresponding partition will be
         overwritten by the snapshot results (data in different partitions will
         remain intact); if [force] is unset or `FALSE`, it will append the data. An
         error will be returned if the schema update or data appension fails.
         
        .google.cloud.asset.v1p7beta1.PartitionSpec partition_spec = 4;
        Specified by:
        getPartitionSpec in interface BigQueryDestinationOrBuilder
        Returns:
        The partitionSpec.
      • getPartitionSpecOrBuilder

        public PartitionSpecOrBuilder getPartitionSpecOrBuilder()
         [partition_spec] determines whether to export to partitioned table(s) and
         how to partition the data.
        
         If [partition_spec] is unset or [partition_spec.partition_key] is unset or
         `PARTITION_KEY_UNSPECIFIED`, the snapshot results will be exported to
         non-partitioned table(s). [force] will decide whether to overwrite existing
         table(s).
        
         If [partition_spec] is specified. First, the snapshot results will be
         written to partitioned table(s) with two additional timestamp columns,
         readTime and requestTime, one of which will be the partition key. Secondly,
         in the case when any destination table already exists, it will first try to
         update existing table's schema as necessary by appending additional
         columns. Then, if [force] is `TRUE`, the corresponding partition will be
         overwritten by the snapshot results (data in different partitions will
         remain intact); if [force] is unset or `FALSE`, it will append the data. An
         error will be returned if the schema update or data appension fails.
         
        .google.cloud.asset.v1p7beta1.PartitionSpec partition_spec = 4;
        Specified by:
        getPartitionSpecOrBuilder in interface BigQueryDestinationOrBuilder
      • getSeparateTablesPerAssetType

        public boolean getSeparateTablesPerAssetType()
         If this flag is `TRUE`, the snapshot results will be written to one or
         multiple tables, each of which contains results of one asset type. The
         [force] and [partition_spec] fields will apply to each of them.
        
         Field [table] will be concatenated with "_" and the asset type names (see
         https://cloud.google.com/asset-inventory/docs/supported-asset-types for
         supported asset types) to construct per-asset-type table names, in which
         all non-alphanumeric characters like "." and "/" will be substituted by
         "_". Example: if field [table] is "mytable" and snapshot results
         contain "storage.googleapis.com/Bucket" assets, the corresponding table
         name will be "mytable_storage_googleapis_com_Bucket". If any of these
         tables does not exist, a new table with the concatenated name will be
         created.
        
         When [content_type] in the ExportAssetsRequest is `RESOURCE`, the schema of
         each table will include RECORD-type columns mapped to the nested fields in
         the Asset.resource.data field of that asset type (up to the 15 nested level
         BigQuery supports
         (https://cloud.google.com/bigquery/docs/nested-repeated#limitations)). The
         fields in >15 nested levels will be stored in JSON format string as a child
         column of its parent RECORD column.
        
         If error occurs when exporting to any table, the whole export call will
         return an error but the export results that already succeed will persist.
         Example: if exporting to table_type_A succeeds when exporting to
         table_type_B fails during one export call, the results in table_type_A will
         persist and there will not be partial results persisting in a table.
         
        bool separate_tables_per_asset_type = 5;
        Specified by:
        getSeparateTablesPerAssetType in interface BigQueryDestinationOrBuilder
        Returns:
        The separateTablesPerAssetType.
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessageV3
        Throws:
        IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • equals

        public boolean equals​(Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static BigQueryDestination parseFrom​(ByteBuffer data)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static BigQueryDestination parseFrom​(ByteBuffer data,
                                                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static BigQueryDestination parseFrom​(com.google.protobuf.ByteString data)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static BigQueryDestination parseFrom​(com.google.protobuf.ByteString data,
                                                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static BigQueryDestination parseFrom​(byte[] data)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static BigQueryDestination parseFrom​(byte[] data,
                                                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static BigQueryDestination parseFrom​(com.google.protobuf.CodedInputStream input,
                                                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                             throws IOException
        Throws:
        IOException
      • newBuilderForType

        public BigQueryDestination.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public BigQueryDestination.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected BigQueryDestination.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getParserForType

        public com.google.protobuf.Parser<BigQueryDestination> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstanceForType

        public BigQueryDestination getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder