Documentation ¶
Index ¶
- func NewStorageNotification_Override(s StorageNotification, scope constructs.Construct, id *string, ...)
- func StorageNotification_IsConstruct(x interface{}) *bool
- func StorageNotification_IsTerraformElement(x interface{}) *bool
- func StorageNotification_IsTerraformResource(x interface{}) *bool
- func StorageNotification_TfResourceType() *string
- type StorageNotification
- type StorageNotificationConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewStorageNotification_Override ¶
func NewStorageNotification_Override(s StorageNotification, scope constructs.Construct, id *string, config *StorageNotificationConfig)
Create a new {@link https://www.terraform.io/docs/providers/google/r/storage_notification google_storage_notification} Resource.
func StorageNotification_IsConstruct ¶
func StorageNotification_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func StorageNotification_IsTerraformElement ¶
func StorageNotification_IsTerraformElement(x interface{}) *bool
Experimental.
func StorageNotification_IsTerraformResource ¶
func StorageNotification_IsTerraformResource(x interface{}) *bool
Experimental.
func StorageNotification_TfResourceType ¶
func StorageNotification_TfResourceType() *string
Types ¶
type StorageNotification ¶
type StorageNotification interface { cdktf.TerraformResource Bucket() *string SetBucket(val *string) BucketInput() *string // Experimental. CdktfStack() cdktf.TerraformStack // Experimental. Connection() interface{} // Experimental. SetConnection(val interface{}) // Experimental. ConstructNodeMetadata() *map[string]interface{} // Experimental. Count() *float64 // Experimental. SetCount(val *float64) CustomAttributes() *map[string]*string SetCustomAttributes(val *map[string]*string) CustomAttributesInput() *map[string]*string // Experimental. DependsOn() *[]*string // Experimental. SetDependsOn(val *[]*string) EventTypes() *[]*string SetEventTypes(val *[]*string) EventTypesInput() *[]*string // Experimental. ForEach() cdktf.ITerraformIterator // Experimental. SetForEach(val cdktf.ITerraformIterator) // Experimental. Fqn() *string // Experimental. FriendlyUniqueId() *string Id() *string SetId(val *string) IdInput() *string // Experimental. Lifecycle() *cdktf.TerraformResourceLifecycle // Experimental. SetLifecycle(val *cdktf.TerraformResourceLifecycle) // The tree node. Node() constructs.Node NotificationId() *string ObjectNamePrefix() *string SetObjectNamePrefix(val *string) ObjectNamePrefixInput() *string PayloadFormat() *string SetPayloadFormat(val *string) PayloadFormatInput() *string // Experimental. Provider() cdktf.TerraformProvider // Experimental. SetProvider(val cdktf.TerraformProvider) // Experimental. Provisioners() *[]interface{} // Experimental. SetProvisioners(val *[]interface{}) // Experimental. RawOverrides() interface{} SelfLink() *string // Experimental. TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata // Experimental. TerraformMetaArguments() *map[string]interface{} // Experimental. TerraformResourceType() *string Topic() *string SetTopic(val *string) TopicInput() *string // Experimental. AddOverride(path *string, value interface{}) // Experimental. GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{} // Experimental. GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable // Experimental. GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool // Experimental. GetListAttribute(terraformAttribute *string) *[]*string // Experimental. GetNumberAttribute(terraformAttribute *string) *float64 // Experimental. GetNumberListAttribute(terraformAttribute *string) *[]*float64 // Experimental. GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64 // Experimental. GetStringAttribute(terraformAttribute *string) *string // Experimental. GetStringMapAttribute(terraformAttribute *string) *map[string]*string // Experimental. InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) ResetCustomAttributes() ResetEventTypes() ResetId() ResetObjectNamePrefix() // Resets a previously passed logical Id to use the auto-generated logical id again. // Experimental. ResetOverrideLogicalId() SynthesizeAttributes() *map[string]interface{} // Experimental. ToMetadata() interface{} // Returns a string representation of this construct. ToString() *string // Adds this resource to the terraform JSON output. // Experimental. ToTerraform() interface{} }
Represents a {@link https://www.terraform.io/docs/providers/google/r/storage_notification google_storage_notification}.
func NewStorageNotification ¶
func NewStorageNotification(scope constructs.Construct, id *string, config *StorageNotificationConfig) StorageNotification
Create a new {@link https://www.terraform.io/docs/providers/google/r/storage_notification google_storage_notification} Resource.
type StorageNotificationConfig ¶
type StorageNotificationConfig struct { // Experimental. Connection interface{} `field:"optional" json:"connection" yaml:"connection"` // Experimental. Count *float64 `field:"optional" json:"count" yaml:"count"` // Experimental. DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"` // Experimental. ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"` // Experimental. Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"` // Experimental. Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"` // Experimental. Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"` // The name of the bucket. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/storage_notification#bucket StorageNotification#bucket} Bucket *string `field:"required" json:"bucket" yaml:"bucket"` // The desired content of the Payload. One of "JSON_API_V1" or "NONE". // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/storage_notification#payload_format StorageNotification#payload_format} PayloadFormat *string `field:"required" json:"payloadFormat" yaml:"payloadFormat"` // The Cloud Pub/Sub topic to which this subscription publishes. // // Expects either the topic name, assumed to belong to the default GCP provider project, or the project-level name, i.e. projects/my-gcp-project/topics/my-topic or my-topic. If the project is not set in the provider, you will need to use the project-level name. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/storage_notification#topic StorageNotification#topic} Topic *string `field:"required" json:"topic" yaml:"topic"` // A set of key/value attribute pairs to attach to each Cloud Pub/Sub message published for this notification subscription. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/storage_notification#custom_attributes StorageNotification#custom_attributes} CustomAttributes *map[string]*string `field:"optional" json:"customAttributes" yaml:"customAttributes"` // List of event type filters for this notification config. // // If not specified, Cloud Storage will send notifications for all event types. The valid types are: "OBJECT_FINALIZE", "OBJECT_METADATA_UPDATE", "OBJECT_DELETE", "OBJECT_ARCHIVE" // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/storage_notification#event_types StorageNotification#event_types} EventTypes *[]*string `field:"optional" json:"eventTypes" yaml:"eventTypes"` // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/storage_notification#id StorageNotification#id}. // // Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. // If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. Id *string `field:"optional" json:"id" yaml:"id"` // Specifies a prefix path filter for this notification config. // // Cloud Storage will only send notifications for objects in this bucket whose names begin with the specified prefix. // // Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google/r/storage_notification#object_name_prefix StorageNotification#object_name_prefix} ObjectNamePrefix *string `field:"optional" json:"objectNamePrefix" yaml:"objectNamePrefix"` }