github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/redshift/getProducerDataShares.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 redshift 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 // Data source for managing AWS Redshift Producer Data Shares. 15 // 16 // ## Example Usage 17 // 18 // ### Basic Usage 19 // 20 // <!--Start PulumiCodeChooser --> 21 // ```go 22 // package main 23 // 24 // import ( 25 // 26 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/redshift" 27 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 28 // 29 // ) 30 // 31 // func main() { 32 // pulumi.Run(func(ctx *pulumi.Context) error { 33 // _, err := redshift.GetProducerDataShares(ctx, &redshift.GetProducerDataSharesArgs{ 34 // ProducerArn: "", 35 // }, nil) 36 // if err != nil { 37 // return err 38 // } 39 // return nil 40 // }) 41 // } 42 // 43 // ``` 44 // <!--End PulumiCodeChooser --> 45 func GetProducerDataShares(ctx *pulumi.Context, args *GetProducerDataSharesArgs, opts ...pulumi.InvokeOption) (*GetProducerDataSharesResult, error) { 46 opts = internal.PkgInvokeDefaultOpts(opts) 47 var rv GetProducerDataSharesResult 48 err := ctx.Invoke("aws:redshift/getProducerDataShares:getProducerDataShares", args, &rv, opts...) 49 if err != nil { 50 return nil, err 51 } 52 return &rv, nil 53 } 54 55 // A collection of arguments for invoking getProducerDataShares. 56 type GetProducerDataSharesArgs struct { 57 // An array of all data shares in the producer. See `dataShares` below. 58 DataShares []GetProducerDataSharesDataShare `pulumi:"dataShares"` 59 // Amazon Resource Name (ARN) of the producer namespace that returns in the list of datashares. 60 // 61 // The following arguments are optional: 62 ProducerArn string `pulumi:"producerArn"` 63 // Status of a datashare in the producer. Valid values are `ACTIVE`, `AUTHORIZED`, `PENDING_AUTHORIZATION`, `DEAUTHORIZED`, and `REJECTED`. Omit this argument to return all statuses. 64 Status *string `pulumi:"status"` 65 } 66 67 // A collection of values returned by getProducerDataShares. 68 type GetProducerDataSharesResult struct { 69 // An array of all data shares in the producer. See `dataShares` below. 70 DataShares []GetProducerDataSharesDataShare `pulumi:"dataShares"` 71 // Producer ARN. 72 Id string `pulumi:"id"` 73 // ARN (Amazon Resource Name) of the producer. 74 ProducerArn string `pulumi:"producerArn"` 75 Status *string `pulumi:"status"` 76 } 77 78 func GetProducerDataSharesOutput(ctx *pulumi.Context, args GetProducerDataSharesOutputArgs, opts ...pulumi.InvokeOption) GetProducerDataSharesResultOutput { 79 return pulumi.ToOutputWithContext(context.Background(), args). 80 ApplyT(func(v interface{}) (GetProducerDataSharesResult, error) { 81 args := v.(GetProducerDataSharesArgs) 82 r, err := GetProducerDataShares(ctx, &args, opts...) 83 var s GetProducerDataSharesResult 84 if r != nil { 85 s = *r 86 } 87 return s, err 88 }).(GetProducerDataSharesResultOutput) 89 } 90 91 // A collection of arguments for invoking getProducerDataShares. 92 type GetProducerDataSharesOutputArgs struct { 93 // An array of all data shares in the producer. See `dataShares` below. 94 DataShares GetProducerDataSharesDataShareArrayInput `pulumi:"dataShares"` 95 // Amazon Resource Name (ARN) of the producer namespace that returns in the list of datashares. 96 // 97 // The following arguments are optional: 98 ProducerArn pulumi.StringInput `pulumi:"producerArn"` 99 // Status of a datashare in the producer. Valid values are `ACTIVE`, `AUTHORIZED`, `PENDING_AUTHORIZATION`, `DEAUTHORIZED`, and `REJECTED`. Omit this argument to return all statuses. 100 Status pulumi.StringPtrInput `pulumi:"status"` 101 } 102 103 func (GetProducerDataSharesOutputArgs) ElementType() reflect.Type { 104 return reflect.TypeOf((*GetProducerDataSharesArgs)(nil)).Elem() 105 } 106 107 // A collection of values returned by getProducerDataShares. 108 type GetProducerDataSharesResultOutput struct{ *pulumi.OutputState } 109 110 func (GetProducerDataSharesResultOutput) ElementType() reflect.Type { 111 return reflect.TypeOf((*GetProducerDataSharesResult)(nil)).Elem() 112 } 113 114 func (o GetProducerDataSharesResultOutput) ToGetProducerDataSharesResultOutput() GetProducerDataSharesResultOutput { 115 return o 116 } 117 118 func (o GetProducerDataSharesResultOutput) ToGetProducerDataSharesResultOutputWithContext(ctx context.Context) GetProducerDataSharesResultOutput { 119 return o 120 } 121 122 // An array of all data shares in the producer. See `dataShares` below. 123 func (o GetProducerDataSharesResultOutput) DataShares() GetProducerDataSharesDataShareArrayOutput { 124 return o.ApplyT(func(v GetProducerDataSharesResult) []GetProducerDataSharesDataShare { return v.DataShares }).(GetProducerDataSharesDataShareArrayOutput) 125 } 126 127 // Producer ARN. 128 func (o GetProducerDataSharesResultOutput) Id() pulumi.StringOutput { 129 return o.ApplyT(func(v GetProducerDataSharesResult) string { return v.Id }).(pulumi.StringOutput) 130 } 131 132 // ARN (Amazon Resource Name) of the producer. 133 func (o GetProducerDataSharesResultOutput) ProducerArn() pulumi.StringOutput { 134 return o.ApplyT(func(v GetProducerDataSharesResult) string { return v.ProducerArn }).(pulumi.StringOutput) 135 } 136 137 func (o GetProducerDataSharesResultOutput) Status() pulumi.StringPtrOutput { 138 return o.ApplyT(func(v GetProducerDataSharesResult) *string { return v.Status }).(pulumi.StringPtrOutput) 139 } 140 141 func init() { 142 pulumi.RegisterOutputType(GetProducerDataSharesResultOutput{}) 143 }