github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/directconnect/publicVirtualInterface.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 directconnect 5 6 import ( 7 "context" 8 "reflect" 9 10 "errors" 11 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 12 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 13 ) 14 15 // Provides a Direct Connect public virtual interface resource. 16 // 17 // ## Example Usage 18 // 19 // <!--Start PulumiCodeChooser --> 20 // ```go 21 // package main 22 // 23 // import ( 24 // 25 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/directconnect" 26 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 27 // 28 // ) 29 // 30 // func main() { 31 // pulumi.Run(func(ctx *pulumi.Context) error { 32 // _, err := directconnect.NewPublicVirtualInterface(ctx, "foo", &directconnect.PublicVirtualInterfaceArgs{ 33 // ConnectionId: pulumi.String("dxcon-zzzzzzzz"), 34 // Name: pulumi.String("vif-foo"), 35 // Vlan: pulumi.Int(4094), 36 // AddressFamily: pulumi.String("ipv4"), 37 // BgpAsn: pulumi.Int(65352), 38 // CustomerAddress: pulumi.String("175.45.176.1/30"), 39 // AmazonAddress: pulumi.String("175.45.176.2/30"), 40 // RouteFilterPrefixes: pulumi.StringArray{ 41 // pulumi.String("210.52.109.0/24"), 42 // pulumi.String("175.45.176.0/22"), 43 // }, 44 // }) 45 // if err != nil { 46 // return err 47 // } 48 // return nil 49 // }) 50 // } 51 // 52 // ``` 53 // <!--End PulumiCodeChooser --> 54 // 55 // ## Import 56 // 57 // Using `pulumi import`, import Direct Connect public virtual interfaces using the VIF `id`. For example: 58 // 59 // ```sh 60 // $ pulumi import aws:directconnect/publicVirtualInterface:PublicVirtualInterface test dxvif-33cc44dd 61 // ``` 62 type PublicVirtualInterface struct { 63 pulumi.CustomResourceState 64 65 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 66 AddressFamily pulumi.StringOutput `pulumi:"addressFamily"` 67 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 68 AmazonAddress pulumi.StringOutput `pulumi:"amazonAddress"` 69 AmazonSideAsn pulumi.StringOutput `pulumi:"amazonSideAsn"` 70 // The ARN of the virtual interface. 71 Arn pulumi.StringOutput `pulumi:"arn"` 72 // The Direct Connect endpoint on which the virtual interface terminates. 73 AwsDevice pulumi.StringOutput `pulumi:"awsDevice"` 74 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 75 BgpAsn pulumi.IntOutput `pulumi:"bgpAsn"` 76 // The authentication key for BGP configuration. 77 BgpAuthKey pulumi.StringOutput `pulumi:"bgpAuthKey"` 78 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 79 ConnectionId pulumi.StringOutput `pulumi:"connectionId"` 80 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 81 CustomerAddress pulumi.StringOutput `pulumi:"customerAddress"` 82 // The name for the virtual interface. 83 Name pulumi.StringOutput `pulumi:"name"` 84 // A list of routes to be advertised to the AWS network in this region. 85 RouteFilterPrefixes pulumi.StringArrayOutput `pulumi:"routeFilterPrefixes"` 86 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 87 Tags pulumi.StringMapOutput `pulumi:"tags"` 88 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 89 // 90 // Deprecated: Please use `tags` instead. 91 TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` 92 // The VLAN ID. 93 Vlan pulumi.IntOutput `pulumi:"vlan"` 94 } 95 96 // NewPublicVirtualInterface registers a new resource with the given unique name, arguments, and options. 97 func NewPublicVirtualInterface(ctx *pulumi.Context, 98 name string, args *PublicVirtualInterfaceArgs, opts ...pulumi.ResourceOption) (*PublicVirtualInterface, error) { 99 if args == nil { 100 return nil, errors.New("missing one or more required arguments") 101 } 102 103 if args.AddressFamily == nil { 104 return nil, errors.New("invalid value for required argument 'AddressFamily'") 105 } 106 if args.BgpAsn == nil { 107 return nil, errors.New("invalid value for required argument 'BgpAsn'") 108 } 109 if args.ConnectionId == nil { 110 return nil, errors.New("invalid value for required argument 'ConnectionId'") 111 } 112 if args.RouteFilterPrefixes == nil { 113 return nil, errors.New("invalid value for required argument 'RouteFilterPrefixes'") 114 } 115 if args.Vlan == nil { 116 return nil, errors.New("invalid value for required argument 'Vlan'") 117 } 118 opts = internal.PkgResourceDefaultOpts(opts) 119 var resource PublicVirtualInterface 120 err := ctx.RegisterResource("aws:directconnect/publicVirtualInterface:PublicVirtualInterface", name, args, &resource, opts...) 121 if err != nil { 122 return nil, err 123 } 124 return &resource, nil 125 } 126 127 // GetPublicVirtualInterface gets an existing PublicVirtualInterface resource's state with the given name, ID, and optional 128 // state properties that are used to uniquely qualify the lookup (nil if not required). 129 func GetPublicVirtualInterface(ctx *pulumi.Context, 130 name string, id pulumi.IDInput, state *PublicVirtualInterfaceState, opts ...pulumi.ResourceOption) (*PublicVirtualInterface, error) { 131 var resource PublicVirtualInterface 132 err := ctx.ReadResource("aws:directconnect/publicVirtualInterface:PublicVirtualInterface", name, id, state, &resource, opts...) 133 if err != nil { 134 return nil, err 135 } 136 return &resource, nil 137 } 138 139 // Input properties used for looking up and filtering PublicVirtualInterface resources. 140 type publicVirtualInterfaceState struct { 141 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 142 AddressFamily *string `pulumi:"addressFamily"` 143 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 144 AmazonAddress *string `pulumi:"amazonAddress"` 145 AmazonSideAsn *string `pulumi:"amazonSideAsn"` 146 // The ARN of the virtual interface. 147 Arn *string `pulumi:"arn"` 148 // The Direct Connect endpoint on which the virtual interface terminates. 149 AwsDevice *string `pulumi:"awsDevice"` 150 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 151 BgpAsn *int `pulumi:"bgpAsn"` 152 // The authentication key for BGP configuration. 153 BgpAuthKey *string `pulumi:"bgpAuthKey"` 154 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 155 ConnectionId *string `pulumi:"connectionId"` 156 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 157 CustomerAddress *string `pulumi:"customerAddress"` 158 // The name for the virtual interface. 159 Name *string `pulumi:"name"` 160 // A list of routes to be advertised to the AWS network in this region. 161 RouteFilterPrefixes []string `pulumi:"routeFilterPrefixes"` 162 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 163 Tags map[string]string `pulumi:"tags"` 164 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 165 // 166 // Deprecated: Please use `tags` instead. 167 TagsAll map[string]string `pulumi:"tagsAll"` 168 // The VLAN ID. 169 Vlan *int `pulumi:"vlan"` 170 } 171 172 type PublicVirtualInterfaceState struct { 173 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 174 AddressFamily pulumi.StringPtrInput 175 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 176 AmazonAddress pulumi.StringPtrInput 177 AmazonSideAsn pulumi.StringPtrInput 178 // The ARN of the virtual interface. 179 Arn pulumi.StringPtrInput 180 // The Direct Connect endpoint on which the virtual interface terminates. 181 AwsDevice pulumi.StringPtrInput 182 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 183 BgpAsn pulumi.IntPtrInput 184 // The authentication key for BGP configuration. 185 BgpAuthKey pulumi.StringPtrInput 186 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 187 ConnectionId pulumi.StringPtrInput 188 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 189 CustomerAddress pulumi.StringPtrInput 190 // The name for the virtual interface. 191 Name pulumi.StringPtrInput 192 // A list of routes to be advertised to the AWS network in this region. 193 RouteFilterPrefixes pulumi.StringArrayInput 194 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 195 Tags pulumi.StringMapInput 196 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 197 // 198 // Deprecated: Please use `tags` instead. 199 TagsAll pulumi.StringMapInput 200 // The VLAN ID. 201 Vlan pulumi.IntPtrInput 202 } 203 204 func (PublicVirtualInterfaceState) ElementType() reflect.Type { 205 return reflect.TypeOf((*publicVirtualInterfaceState)(nil)).Elem() 206 } 207 208 type publicVirtualInterfaceArgs struct { 209 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 210 AddressFamily string `pulumi:"addressFamily"` 211 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 212 AmazonAddress *string `pulumi:"amazonAddress"` 213 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 214 BgpAsn int `pulumi:"bgpAsn"` 215 // The authentication key for BGP configuration. 216 BgpAuthKey *string `pulumi:"bgpAuthKey"` 217 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 218 ConnectionId string `pulumi:"connectionId"` 219 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 220 CustomerAddress *string `pulumi:"customerAddress"` 221 // The name for the virtual interface. 222 Name *string `pulumi:"name"` 223 // A list of routes to be advertised to the AWS network in this region. 224 RouteFilterPrefixes []string `pulumi:"routeFilterPrefixes"` 225 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 226 Tags map[string]string `pulumi:"tags"` 227 // The VLAN ID. 228 Vlan int `pulumi:"vlan"` 229 } 230 231 // The set of arguments for constructing a PublicVirtualInterface resource. 232 type PublicVirtualInterfaceArgs struct { 233 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 234 AddressFamily pulumi.StringInput 235 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 236 AmazonAddress pulumi.StringPtrInput 237 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 238 BgpAsn pulumi.IntInput 239 // The authentication key for BGP configuration. 240 BgpAuthKey pulumi.StringPtrInput 241 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 242 ConnectionId pulumi.StringInput 243 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 244 CustomerAddress pulumi.StringPtrInput 245 // The name for the virtual interface. 246 Name pulumi.StringPtrInput 247 // A list of routes to be advertised to the AWS network in this region. 248 RouteFilterPrefixes pulumi.StringArrayInput 249 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 250 Tags pulumi.StringMapInput 251 // The VLAN ID. 252 Vlan pulumi.IntInput 253 } 254 255 func (PublicVirtualInterfaceArgs) ElementType() reflect.Type { 256 return reflect.TypeOf((*publicVirtualInterfaceArgs)(nil)).Elem() 257 } 258 259 type PublicVirtualInterfaceInput interface { 260 pulumi.Input 261 262 ToPublicVirtualInterfaceOutput() PublicVirtualInterfaceOutput 263 ToPublicVirtualInterfaceOutputWithContext(ctx context.Context) PublicVirtualInterfaceOutput 264 } 265 266 func (*PublicVirtualInterface) ElementType() reflect.Type { 267 return reflect.TypeOf((**PublicVirtualInterface)(nil)).Elem() 268 } 269 270 func (i *PublicVirtualInterface) ToPublicVirtualInterfaceOutput() PublicVirtualInterfaceOutput { 271 return i.ToPublicVirtualInterfaceOutputWithContext(context.Background()) 272 } 273 274 func (i *PublicVirtualInterface) ToPublicVirtualInterfaceOutputWithContext(ctx context.Context) PublicVirtualInterfaceOutput { 275 return pulumi.ToOutputWithContext(ctx, i).(PublicVirtualInterfaceOutput) 276 } 277 278 // PublicVirtualInterfaceArrayInput is an input type that accepts PublicVirtualInterfaceArray and PublicVirtualInterfaceArrayOutput values. 279 // You can construct a concrete instance of `PublicVirtualInterfaceArrayInput` via: 280 // 281 // PublicVirtualInterfaceArray{ PublicVirtualInterfaceArgs{...} } 282 type PublicVirtualInterfaceArrayInput interface { 283 pulumi.Input 284 285 ToPublicVirtualInterfaceArrayOutput() PublicVirtualInterfaceArrayOutput 286 ToPublicVirtualInterfaceArrayOutputWithContext(context.Context) PublicVirtualInterfaceArrayOutput 287 } 288 289 type PublicVirtualInterfaceArray []PublicVirtualInterfaceInput 290 291 func (PublicVirtualInterfaceArray) ElementType() reflect.Type { 292 return reflect.TypeOf((*[]*PublicVirtualInterface)(nil)).Elem() 293 } 294 295 func (i PublicVirtualInterfaceArray) ToPublicVirtualInterfaceArrayOutput() PublicVirtualInterfaceArrayOutput { 296 return i.ToPublicVirtualInterfaceArrayOutputWithContext(context.Background()) 297 } 298 299 func (i PublicVirtualInterfaceArray) ToPublicVirtualInterfaceArrayOutputWithContext(ctx context.Context) PublicVirtualInterfaceArrayOutput { 300 return pulumi.ToOutputWithContext(ctx, i).(PublicVirtualInterfaceArrayOutput) 301 } 302 303 // PublicVirtualInterfaceMapInput is an input type that accepts PublicVirtualInterfaceMap and PublicVirtualInterfaceMapOutput values. 304 // You can construct a concrete instance of `PublicVirtualInterfaceMapInput` via: 305 // 306 // PublicVirtualInterfaceMap{ "key": PublicVirtualInterfaceArgs{...} } 307 type PublicVirtualInterfaceMapInput interface { 308 pulumi.Input 309 310 ToPublicVirtualInterfaceMapOutput() PublicVirtualInterfaceMapOutput 311 ToPublicVirtualInterfaceMapOutputWithContext(context.Context) PublicVirtualInterfaceMapOutput 312 } 313 314 type PublicVirtualInterfaceMap map[string]PublicVirtualInterfaceInput 315 316 func (PublicVirtualInterfaceMap) ElementType() reflect.Type { 317 return reflect.TypeOf((*map[string]*PublicVirtualInterface)(nil)).Elem() 318 } 319 320 func (i PublicVirtualInterfaceMap) ToPublicVirtualInterfaceMapOutput() PublicVirtualInterfaceMapOutput { 321 return i.ToPublicVirtualInterfaceMapOutputWithContext(context.Background()) 322 } 323 324 func (i PublicVirtualInterfaceMap) ToPublicVirtualInterfaceMapOutputWithContext(ctx context.Context) PublicVirtualInterfaceMapOutput { 325 return pulumi.ToOutputWithContext(ctx, i).(PublicVirtualInterfaceMapOutput) 326 } 327 328 type PublicVirtualInterfaceOutput struct{ *pulumi.OutputState } 329 330 func (PublicVirtualInterfaceOutput) ElementType() reflect.Type { 331 return reflect.TypeOf((**PublicVirtualInterface)(nil)).Elem() 332 } 333 334 func (o PublicVirtualInterfaceOutput) ToPublicVirtualInterfaceOutput() PublicVirtualInterfaceOutput { 335 return o 336 } 337 338 func (o PublicVirtualInterfaceOutput) ToPublicVirtualInterfaceOutputWithContext(ctx context.Context) PublicVirtualInterfaceOutput { 339 return o 340 } 341 342 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 343 func (o PublicVirtualInterfaceOutput) AddressFamily() pulumi.StringOutput { 344 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringOutput { return v.AddressFamily }).(pulumi.StringOutput) 345 } 346 347 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 348 func (o PublicVirtualInterfaceOutput) AmazonAddress() pulumi.StringOutput { 349 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringOutput { return v.AmazonAddress }).(pulumi.StringOutput) 350 } 351 352 func (o PublicVirtualInterfaceOutput) AmazonSideAsn() pulumi.StringOutput { 353 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringOutput { return v.AmazonSideAsn }).(pulumi.StringOutput) 354 } 355 356 // The ARN of the virtual interface. 357 func (o PublicVirtualInterfaceOutput) Arn() pulumi.StringOutput { 358 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 359 } 360 361 // The Direct Connect endpoint on which the virtual interface terminates. 362 func (o PublicVirtualInterfaceOutput) AwsDevice() pulumi.StringOutput { 363 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringOutput { return v.AwsDevice }).(pulumi.StringOutput) 364 } 365 366 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 367 func (o PublicVirtualInterfaceOutput) BgpAsn() pulumi.IntOutput { 368 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.IntOutput { return v.BgpAsn }).(pulumi.IntOutput) 369 } 370 371 // The authentication key for BGP configuration. 372 func (o PublicVirtualInterfaceOutput) BgpAuthKey() pulumi.StringOutput { 373 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringOutput { return v.BgpAuthKey }).(pulumi.StringOutput) 374 } 375 376 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 377 func (o PublicVirtualInterfaceOutput) ConnectionId() pulumi.StringOutput { 378 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringOutput { return v.ConnectionId }).(pulumi.StringOutput) 379 } 380 381 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 382 func (o PublicVirtualInterfaceOutput) CustomerAddress() pulumi.StringOutput { 383 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringOutput { return v.CustomerAddress }).(pulumi.StringOutput) 384 } 385 386 // The name for the virtual interface. 387 func (o PublicVirtualInterfaceOutput) Name() pulumi.StringOutput { 388 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) 389 } 390 391 // A list of routes to be advertised to the AWS network in this region. 392 func (o PublicVirtualInterfaceOutput) RouteFilterPrefixes() pulumi.StringArrayOutput { 393 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringArrayOutput { return v.RouteFilterPrefixes }).(pulumi.StringArrayOutput) 394 } 395 396 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 397 func (o PublicVirtualInterfaceOutput) Tags() pulumi.StringMapOutput { 398 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) 399 } 400 401 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 402 // 403 // Deprecated: Please use `tags` instead. 404 func (o PublicVirtualInterfaceOutput) TagsAll() pulumi.StringMapOutput { 405 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) 406 } 407 408 // The VLAN ID. 409 func (o PublicVirtualInterfaceOutput) Vlan() pulumi.IntOutput { 410 return o.ApplyT(func(v *PublicVirtualInterface) pulumi.IntOutput { return v.Vlan }).(pulumi.IntOutput) 411 } 412 413 type PublicVirtualInterfaceArrayOutput struct{ *pulumi.OutputState } 414 415 func (PublicVirtualInterfaceArrayOutput) ElementType() reflect.Type { 416 return reflect.TypeOf((*[]*PublicVirtualInterface)(nil)).Elem() 417 } 418 419 func (o PublicVirtualInterfaceArrayOutput) ToPublicVirtualInterfaceArrayOutput() PublicVirtualInterfaceArrayOutput { 420 return o 421 } 422 423 func (o PublicVirtualInterfaceArrayOutput) ToPublicVirtualInterfaceArrayOutputWithContext(ctx context.Context) PublicVirtualInterfaceArrayOutput { 424 return o 425 } 426 427 func (o PublicVirtualInterfaceArrayOutput) Index(i pulumi.IntInput) PublicVirtualInterfaceOutput { 428 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *PublicVirtualInterface { 429 return vs[0].([]*PublicVirtualInterface)[vs[1].(int)] 430 }).(PublicVirtualInterfaceOutput) 431 } 432 433 type PublicVirtualInterfaceMapOutput struct{ *pulumi.OutputState } 434 435 func (PublicVirtualInterfaceMapOutput) ElementType() reflect.Type { 436 return reflect.TypeOf((*map[string]*PublicVirtualInterface)(nil)).Elem() 437 } 438 439 func (o PublicVirtualInterfaceMapOutput) ToPublicVirtualInterfaceMapOutput() PublicVirtualInterfaceMapOutput { 440 return o 441 } 442 443 func (o PublicVirtualInterfaceMapOutput) ToPublicVirtualInterfaceMapOutputWithContext(ctx context.Context) PublicVirtualInterfaceMapOutput { 444 return o 445 } 446 447 func (o PublicVirtualInterfaceMapOutput) MapIndex(k pulumi.StringInput) PublicVirtualInterfaceOutput { 448 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *PublicVirtualInterface { 449 return vs[0].(map[string]*PublicVirtualInterface)[vs[1].(string)] 450 }).(PublicVirtualInterfaceOutput) 451 } 452 453 func init() { 454 pulumi.RegisterInputType(reflect.TypeOf((*PublicVirtualInterfaceInput)(nil)).Elem(), &PublicVirtualInterface{}) 455 pulumi.RegisterInputType(reflect.TypeOf((*PublicVirtualInterfaceArrayInput)(nil)).Elem(), PublicVirtualInterfaceArray{}) 456 pulumi.RegisterInputType(reflect.TypeOf((*PublicVirtualInterfaceMapInput)(nil)).Elem(), PublicVirtualInterfaceMap{}) 457 pulumi.RegisterOutputType(PublicVirtualInterfaceOutput{}) 458 pulumi.RegisterOutputType(PublicVirtualInterfaceArrayOutput{}) 459 pulumi.RegisterOutputType(PublicVirtualInterfaceMapOutput{}) 460 }