Class: Google::Apis::AnalyticshubV1::CloudStorageConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/analyticshub_v1/classes.rb,
lib/google/apis/analyticshub_v1/representations.rb,
lib/google/apis/analyticshub_v1/representations.rb

Overview

Configuration for a Cloud Storage subscription.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ CloudStorageConfig

Returns a new instance of CloudStorageConfig.



536
537
538
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 536

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#avro_configGoogle::Apis::AnalyticshubV1::AvroConfig

Configuration for writing message data in Avro format. Message payloads and metadata will be written to files as an Avro binary. Corresponds to the JSON property avroConfig



468
469
470
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 468

def avro_config
  @avro_config
end

#bucketString

Required. User-provided name for the Cloud Storage bucket. The bucket must be created by the user. The bucket name must be without any prefix like "gs://". See the bucket naming requirements. Corresponds to the JSON property bucket

Returns:

  • (String)


476
477
478
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 476

def bucket
  @bucket
end

#filename_datetime_formatString

Optional. User-provided format string specifying how to represent datetimes in Cloud Storage filenames. See the datetime format guidance. Corresponds to the JSON property filenameDatetimeFormat

Returns:

  • (String)


483
484
485
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 483

def filename_datetime_format
  @filename_datetime_format
end

#filename_prefixString

Optional. User-provided prefix for Cloud Storage filename. See the object naming requirements. Corresponds to the JSON property filenamePrefix

Returns:

  • (String)


489
490
491
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 489

def filename_prefix
  @filename_prefix
end

#filename_suffixString

Optional. User-provided suffix for Cloud Storage filename. See the object naming requirements. Must not end in "/". Corresponds to the JSON property filenameSuffix

Returns:

  • (String)


496
497
498
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 496

def filename_suffix
  @filename_suffix
end

#max_bytesFixnum

Optional. The maximum bytes that can be written to a Cloud Storage file before a new file is created. Min 1 KB, max 10 GiB. The max_bytes limit may be exceeded in cases where messages are larger than the limit. Corresponds to the JSON property maxBytes

Returns:

  • (Fixnum)


503
504
505
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 503

def max_bytes
  @max_bytes
end

#max_durationString

Optional. File batching settings. If no max_duration setting is specified, a max_duration of 5 minutes will be set by default. max_duration is required regardless of whether other file batching settings are specified. The maximum duration that can elapse before a new Cloud Storage file is created. Min 1 minute, max 10 minutes, default 5 minutes. May not exceed the subscription's acknowledgement deadline. Corresponds to the JSON property maxDuration

Returns:

  • (String)


513
514
515
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 513

def max_duration
  @max_duration
end

#max_messagesFixnum

Optional. The maximum number of messages that can be written to a Cloud Storage file before a new file is created. Min 1000 messages. Corresponds to the JSON property maxMessages

Returns:

  • (Fixnum)


519
520
521
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 519

def max_messages
  @max_messages
end

#service_account_emailString

Optional. The service account to use to write to Cloud Storage. The subscription creator or updater that specifies this field must have iam. serviceAccounts.actAs permission on the service account. If not specified, the Pub/Sub service agent, service-project_number@gcp-sa-pubsub.iam.gserviceaccount.com, is used. Corresponds to the JSON property serviceAccountEmail

Returns:

  • (String)


528
529
530
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 528

def 
  @service_account_email
end

#text_configGoogle::Apis::AnalyticshubV1::TextConfig

Configuration for writing message data in text format. Message payloads will be written to files as raw text, separated by a newline. Corresponds to the JSON property textConfig



534
535
536
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 534

def text_config
  @text_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



541
542
543
544
545
546
547
548
549
550
551
552
# File 'lib/google/apis/analyticshub_v1/classes.rb', line 541

def update!(**args)
  @avro_config = args[:avro_config] if args.key?(:avro_config)
  @bucket = args[:bucket] if args.key?(:bucket)
  @filename_datetime_format = args[:filename_datetime_format] if args.key?(:filename_datetime_format)
  @filename_prefix = args[:filename_prefix] if args.key?(:filename_prefix)
  @filename_suffix = args[:filename_suffix] if args.key?(:filename_suffix)
  @max_bytes = args[:max_bytes] if args.key?(:max_bytes)
  @max_duration = args[:max_duration] if args.key?(:max_duration)
  @max_messages = args[:max_messages] if args.key?(:max_messages)
  @service_account_email = args[:service_account_email] if args.key?(:service_account_email)
  @text_config = args[:text_config] if args.key?(:text_config)
end