@@ -23,6 +23,24 @@ type GlobalAccelerator interface {
2323 // DeleteAccelerator deletes an accelerator.
2424 DeleteAcceleratorWithContext (ctx context.Context , input * globalaccelerator.DeleteAcceleratorInput ) (* globalaccelerator.DeleteAcceleratorOutput , error )
2525
26+ // CreateListener creates a new listener.
27+ CreateListenerWithContext (ctx context.Context , input * globalaccelerator.CreateListenerInput ) (* globalaccelerator.CreateListenerOutput , error )
28+
29+ // DescribeListener describes a listener.
30+ DescribeListenerWithContext (ctx context.Context , input * globalaccelerator.DescribeListenerInput ) (* globalaccelerator.DescribeListenerOutput , error )
31+
32+ // UpdateListener updates a listener.
33+ UpdateListenerWithContext (ctx context.Context , input * globalaccelerator.UpdateListenerInput ) (* globalaccelerator.UpdateListenerOutput , error )
34+
35+ // DeleteListener deletes a listener.
36+ DeleteListenerWithContext (ctx context.Context , input * globalaccelerator.DeleteListenerInput ) (* globalaccelerator.DeleteListenerOutput , error )
37+
38+ // wrapper to ListListeners API, which aggregates paged results into list.
39+ ListListenersAsList (ctx context.Context , input * globalaccelerator.ListListenersInput ) ([]types.Listener , error )
40+
41+ // ListListenersForAccelerator lists all listeners for an accelerator.
42+ ListListenersForAcceleratorWithContext (ctx context.Context , input * globalaccelerator.ListListenersInput ) (* globalaccelerator.ListListenersOutput , error )
43+
2644 // TagResource tags a resource.
2745 TagResourceWithContext (ctx context.Context , input * globalaccelerator.TagResourceInput ) (* globalaccelerator.TagResourceOutput , error )
2846
@@ -117,3 +135,60 @@ func (c *defaultGlobalAccelerator) ListTagsForResourceWithContext(ctx context.Co
117135 }
118136 return client .ListTagsForResource (ctx , input )
119137}
138+
139+ func (c * defaultGlobalAccelerator ) CreateListenerWithContext (ctx context.Context , input * globalaccelerator.CreateListenerInput ) (* globalaccelerator.CreateListenerOutput , error ) {
140+ client , err := c .awsClientsProvider .GetGlobalAcceleratorClient (ctx , "CreateListener" )
141+ if err != nil {
142+ return nil , err
143+ }
144+ return client .CreateListener (ctx , input )
145+ }
146+
147+ func (c * defaultGlobalAccelerator ) DescribeListenerWithContext (ctx context.Context , input * globalaccelerator.DescribeListenerInput ) (* globalaccelerator.DescribeListenerOutput , error ) {
148+ client , err := c .awsClientsProvider .GetGlobalAcceleratorClient (ctx , "DescribeListener" )
149+ if err != nil {
150+ return nil , err
151+ }
152+ return client .DescribeListener (ctx , input )
153+ }
154+
155+ func (c * defaultGlobalAccelerator ) UpdateListenerWithContext (ctx context.Context , input * globalaccelerator.UpdateListenerInput ) (* globalaccelerator.UpdateListenerOutput , error ) {
156+ client , err := c .awsClientsProvider .GetGlobalAcceleratorClient (ctx , "UpdateListener" )
157+ if err != nil {
158+ return nil , err
159+ }
160+ return client .UpdateListener (ctx , input )
161+ }
162+
163+ func (c * defaultGlobalAccelerator ) DeleteListenerWithContext (ctx context.Context , input * globalaccelerator.DeleteListenerInput ) (* globalaccelerator.DeleteListenerOutput , error ) {
164+ client , err := c .awsClientsProvider .GetGlobalAcceleratorClient (ctx , "DeleteListener" )
165+ if err != nil {
166+ return nil , err
167+ }
168+ return client .DeleteListener (ctx , input )
169+ }
170+
171+ func (c * defaultGlobalAccelerator ) ListListenersForAcceleratorWithContext (ctx context.Context , input * globalaccelerator.ListListenersInput ) (* globalaccelerator.ListListenersOutput , error ) {
172+ client , err := c .awsClientsProvider .GetGlobalAcceleratorClient (ctx , "ListListeners" )
173+ if err != nil {
174+ return nil , err
175+ }
176+ return client .ListListeners (ctx , input )
177+ }
178+
179+ func (c * defaultGlobalAccelerator ) ListListenersAsList (ctx context.Context , input * globalaccelerator.ListListenersInput ) ([]types.Listener , error ) {
180+ var result []types.Listener
181+ client , err := c .awsClientsProvider .GetGlobalAcceleratorClient (ctx , "ListListeners" )
182+ if err != nil {
183+ return nil , err
184+ }
185+ paginator := globalaccelerator .NewListListenersPaginator (client , input )
186+ for paginator .HasMorePages () {
187+ output , err := paginator .NextPage (ctx )
188+ if err != nil {
189+ return nil , err
190+ }
191+ result = append (result , output .Listeners ... )
192+ }
193+ return result , nil
194+ }
0 commit comments