github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/waf/sizeConstraintSet.go (about) 1 // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. 2 // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** 3 4 package waf 5 6 import ( 7 "context" 8 "reflect" 9 10 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 11 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 12 ) 13 14 // Use the `waf.SizeConstraintSet` resource to manage WAF size constraint sets. 15 // 16 // ## Example Usage 17 // 18 // <!--Start PulumiCodeChooser --> 19 // ```go 20 // package main 21 // 22 // import ( 23 // 24 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/waf" 25 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 26 // 27 // ) 28 // 29 // func main() { 30 // pulumi.Run(func(ctx *pulumi.Context) error { 31 // _, err := waf.NewSizeConstraintSet(ctx, "size_constraint_set", &waf.SizeConstraintSetArgs{ 32 // Name: pulumi.String("tfsize_constraints"), 33 // SizeConstraints: waf.SizeConstraintSetSizeConstraintArray{ 34 // &waf.SizeConstraintSetSizeConstraintArgs{ 35 // TextTransformation: pulumi.String("NONE"), 36 // ComparisonOperator: pulumi.String("EQ"), 37 // Size: pulumi.Int(4096), 38 // FieldToMatch: &waf.SizeConstraintSetSizeConstraintFieldToMatchArgs{ 39 // Type: pulumi.String("BODY"), 40 // }, 41 // }, 42 // }, 43 // }) 44 // if err != nil { 45 // return err 46 // } 47 // return nil 48 // }) 49 // } 50 // 51 // ``` 52 // <!--End PulumiCodeChooser --> 53 // 54 // ## Import 55 // 56 // Using `pulumi import`, import AWS WAF Size Constraint Set using their ID. For example: 57 // 58 // ```sh 59 // $ pulumi import aws:waf/sizeConstraintSet:SizeConstraintSet example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc 60 // ``` 61 type SizeConstraintSet struct { 62 pulumi.CustomResourceState 63 64 // Amazon Resource Name (ARN). 65 Arn pulumi.StringOutput `pulumi:"arn"` 66 // Name or description of the Size Constraint Set. 67 Name pulumi.StringOutput `pulumi:"name"` 68 // Parts of web requests that you want to inspect the size of. 69 SizeConstraints SizeConstraintSetSizeConstraintArrayOutput `pulumi:"sizeConstraints"` 70 } 71 72 // NewSizeConstraintSet registers a new resource with the given unique name, arguments, and options. 73 func NewSizeConstraintSet(ctx *pulumi.Context, 74 name string, args *SizeConstraintSetArgs, opts ...pulumi.ResourceOption) (*SizeConstraintSet, error) { 75 if args == nil { 76 args = &SizeConstraintSetArgs{} 77 } 78 79 opts = internal.PkgResourceDefaultOpts(opts) 80 var resource SizeConstraintSet 81 err := ctx.RegisterResource("aws:waf/sizeConstraintSet:SizeConstraintSet", name, args, &resource, opts...) 82 if err != nil { 83 return nil, err 84 } 85 return &resource, nil 86 } 87 88 // GetSizeConstraintSet gets an existing SizeConstraintSet resource's state with the given name, ID, and optional 89 // state properties that are used to uniquely qualify the lookup (nil if not required). 90 func GetSizeConstraintSet(ctx *pulumi.Context, 91 name string, id pulumi.IDInput, state *SizeConstraintSetState, opts ...pulumi.ResourceOption) (*SizeConstraintSet, error) { 92 var resource SizeConstraintSet 93 err := ctx.ReadResource("aws:waf/sizeConstraintSet:SizeConstraintSet", name, id, state, &resource, opts...) 94 if err != nil { 95 return nil, err 96 } 97 return &resource, nil 98 } 99 100 // Input properties used for looking up and filtering SizeConstraintSet resources. 101 type sizeConstraintSetState struct { 102 // Amazon Resource Name (ARN). 103 Arn *string `pulumi:"arn"` 104 // Name or description of the Size Constraint Set. 105 Name *string `pulumi:"name"` 106 // Parts of web requests that you want to inspect the size of. 107 SizeConstraints []SizeConstraintSetSizeConstraint `pulumi:"sizeConstraints"` 108 } 109 110 type SizeConstraintSetState struct { 111 // Amazon Resource Name (ARN). 112 Arn pulumi.StringPtrInput 113 // Name or description of the Size Constraint Set. 114 Name pulumi.StringPtrInput 115 // Parts of web requests that you want to inspect the size of. 116 SizeConstraints SizeConstraintSetSizeConstraintArrayInput 117 } 118 119 func (SizeConstraintSetState) ElementType() reflect.Type { 120 return reflect.TypeOf((*sizeConstraintSetState)(nil)).Elem() 121 } 122 123 type sizeConstraintSetArgs struct { 124 // Name or description of the Size Constraint Set. 125 Name *string `pulumi:"name"` 126 // Parts of web requests that you want to inspect the size of. 127 SizeConstraints []SizeConstraintSetSizeConstraint `pulumi:"sizeConstraints"` 128 } 129 130 // The set of arguments for constructing a SizeConstraintSet resource. 131 type SizeConstraintSetArgs struct { 132 // Name or description of the Size Constraint Set. 133 Name pulumi.StringPtrInput 134 // Parts of web requests that you want to inspect the size of. 135 SizeConstraints SizeConstraintSetSizeConstraintArrayInput 136 } 137 138 func (SizeConstraintSetArgs) ElementType() reflect.Type { 139 return reflect.TypeOf((*sizeConstraintSetArgs)(nil)).Elem() 140 } 141 142 type SizeConstraintSetInput interface { 143 pulumi.Input 144 145 ToSizeConstraintSetOutput() SizeConstraintSetOutput 146 ToSizeConstraintSetOutputWithContext(ctx context.Context) SizeConstraintSetOutput 147 } 148 149 func (*SizeConstraintSet) ElementType() reflect.Type { 150 return reflect.TypeOf((**SizeConstraintSet)(nil)).Elem() 151 } 152 153 func (i *SizeConstraintSet) ToSizeConstraintSetOutput() SizeConstraintSetOutput { 154 return i.ToSizeConstraintSetOutputWithContext(context.Background()) 155 } 156 157 func (i *SizeConstraintSet) ToSizeConstraintSetOutputWithContext(ctx context.Context) SizeConstraintSetOutput { 158 return pulumi.ToOutputWithContext(ctx, i).(SizeConstraintSetOutput) 159 } 160 161 // SizeConstraintSetArrayInput is an input type that accepts SizeConstraintSetArray and SizeConstraintSetArrayOutput values. 162 // You can construct a concrete instance of `SizeConstraintSetArrayInput` via: 163 // 164 // SizeConstraintSetArray{ SizeConstraintSetArgs{...} } 165 type SizeConstraintSetArrayInput interface { 166 pulumi.Input 167 168 ToSizeConstraintSetArrayOutput() SizeConstraintSetArrayOutput 169 ToSizeConstraintSetArrayOutputWithContext(context.Context) SizeConstraintSetArrayOutput 170 } 171 172 type SizeConstraintSetArray []SizeConstraintSetInput 173 174 func (SizeConstraintSetArray) ElementType() reflect.Type { 175 return reflect.TypeOf((*[]*SizeConstraintSet)(nil)).Elem() 176 } 177 178 func (i SizeConstraintSetArray) ToSizeConstraintSetArrayOutput() SizeConstraintSetArrayOutput { 179 return i.ToSizeConstraintSetArrayOutputWithContext(context.Background()) 180 } 181 182 func (i SizeConstraintSetArray) ToSizeConstraintSetArrayOutputWithContext(ctx context.Context) SizeConstraintSetArrayOutput { 183 return pulumi.ToOutputWithContext(ctx, i).(SizeConstraintSetArrayOutput) 184 } 185 186 // SizeConstraintSetMapInput is an input type that accepts SizeConstraintSetMap and SizeConstraintSetMapOutput values. 187 // You can construct a concrete instance of `SizeConstraintSetMapInput` via: 188 // 189 // SizeConstraintSetMap{ "key": SizeConstraintSetArgs{...} } 190 type SizeConstraintSetMapInput interface { 191 pulumi.Input 192 193 ToSizeConstraintSetMapOutput() SizeConstraintSetMapOutput 194 ToSizeConstraintSetMapOutputWithContext(context.Context) SizeConstraintSetMapOutput 195 } 196 197 type SizeConstraintSetMap map[string]SizeConstraintSetInput 198 199 func (SizeConstraintSetMap) ElementType() reflect.Type { 200 return reflect.TypeOf((*map[string]*SizeConstraintSet)(nil)).Elem() 201 } 202 203 func (i SizeConstraintSetMap) ToSizeConstraintSetMapOutput() SizeConstraintSetMapOutput { 204 return i.ToSizeConstraintSetMapOutputWithContext(context.Background()) 205 } 206 207 func (i SizeConstraintSetMap) ToSizeConstraintSetMapOutputWithContext(ctx context.Context) SizeConstraintSetMapOutput { 208 return pulumi.ToOutputWithContext(ctx, i).(SizeConstraintSetMapOutput) 209 } 210 211 type SizeConstraintSetOutput struct{ *pulumi.OutputState } 212 213 func (SizeConstraintSetOutput) ElementType() reflect.Type { 214 return reflect.TypeOf((**SizeConstraintSet)(nil)).Elem() 215 } 216 217 func (o SizeConstraintSetOutput) ToSizeConstraintSetOutput() SizeConstraintSetOutput { 218 return o 219 } 220 221 func (o SizeConstraintSetOutput) ToSizeConstraintSetOutputWithContext(ctx context.Context) SizeConstraintSetOutput { 222 return o 223 } 224 225 // Amazon Resource Name (ARN). 226 func (o SizeConstraintSetOutput) Arn() pulumi.StringOutput { 227 return o.ApplyT(func(v *SizeConstraintSet) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 228 } 229 230 // Name or description of the Size Constraint Set. 231 func (o SizeConstraintSetOutput) Name() pulumi.StringOutput { 232 return o.ApplyT(func(v *SizeConstraintSet) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) 233 } 234 235 // Parts of web requests that you want to inspect the size of. 236 func (o SizeConstraintSetOutput) SizeConstraints() SizeConstraintSetSizeConstraintArrayOutput { 237 return o.ApplyT(func(v *SizeConstraintSet) SizeConstraintSetSizeConstraintArrayOutput { return v.SizeConstraints }).(SizeConstraintSetSizeConstraintArrayOutput) 238 } 239 240 type SizeConstraintSetArrayOutput struct{ *pulumi.OutputState } 241 242 func (SizeConstraintSetArrayOutput) ElementType() reflect.Type { 243 return reflect.TypeOf((*[]*SizeConstraintSet)(nil)).Elem() 244 } 245 246 func (o SizeConstraintSetArrayOutput) ToSizeConstraintSetArrayOutput() SizeConstraintSetArrayOutput { 247 return o 248 } 249 250 func (o SizeConstraintSetArrayOutput) ToSizeConstraintSetArrayOutputWithContext(ctx context.Context) SizeConstraintSetArrayOutput { 251 return o 252 } 253 254 func (o SizeConstraintSetArrayOutput) Index(i pulumi.IntInput) SizeConstraintSetOutput { 255 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *SizeConstraintSet { 256 return vs[0].([]*SizeConstraintSet)[vs[1].(int)] 257 }).(SizeConstraintSetOutput) 258 } 259 260 type SizeConstraintSetMapOutput struct{ *pulumi.OutputState } 261 262 func (SizeConstraintSetMapOutput) ElementType() reflect.Type { 263 return reflect.TypeOf((*map[string]*SizeConstraintSet)(nil)).Elem() 264 } 265 266 func (o SizeConstraintSetMapOutput) ToSizeConstraintSetMapOutput() SizeConstraintSetMapOutput { 267 return o 268 } 269 270 func (o SizeConstraintSetMapOutput) ToSizeConstraintSetMapOutputWithContext(ctx context.Context) SizeConstraintSetMapOutput { 271 return o 272 } 273 274 func (o SizeConstraintSetMapOutput) MapIndex(k pulumi.StringInput) SizeConstraintSetOutput { 275 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *SizeConstraintSet { 276 return vs[0].(map[string]*SizeConstraintSet)[vs[1].(string)] 277 }).(SizeConstraintSetOutput) 278 } 279 280 func init() { 281 pulumi.RegisterInputType(reflect.TypeOf((*SizeConstraintSetInput)(nil)).Elem(), &SizeConstraintSet{}) 282 pulumi.RegisterInputType(reflect.TypeOf((*SizeConstraintSetArrayInput)(nil)).Elem(), SizeConstraintSetArray{}) 283 pulumi.RegisterInputType(reflect.TypeOf((*SizeConstraintSetMapInput)(nil)).Elem(), SizeConstraintSetMap{}) 284 pulumi.RegisterOutputType(SizeConstraintSetOutput{}) 285 pulumi.RegisterOutputType(SizeConstraintSetArrayOutput{}) 286 pulumi.RegisterOutputType(SizeConstraintSetMapOutput{}) 287 }