Skip to content

Commit 98894f5

Browse files
committed
refactor(apigateway-domain-name): standardization
1 parent 949fac6 commit 98894f5

File tree

1 file changed

+20
-29
lines changed

1 file changed

+20
-29
lines changed

resources/apigateway-domainnames.go renamed to resources/apigateway-domain-name.go

Lines changed: 20 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@ package resources
22

33
import (
44
"context"
5+
"fmt"
6+
7+
"github.com/gotidy/ptr"
58

6-
"github.com/aws/aws-sdk-go-v2/aws"
79
"github.com/aws/aws-sdk-go-v2/service/apigateway"
810

911
"github.com/ekristen/libnuke/pkg/registry"
@@ -32,7 +34,7 @@ func (l *APIGatewayDomainNameLister) List(ctx context.Context, o interface{}) ([
3234
var resources []resource.Resource
3335

3436
params := &apigateway.GetDomainNamesInput{
35-
Limit: aws.Int32(100),
37+
Limit: ptr.Int32(100),
3638
}
3739

3840
for {
@@ -43,18 +45,18 @@ func (l *APIGatewayDomainNameLister) List(ctx context.Context, o interface{}) ([
4345

4446
for i := range output.Items {
4547
item := &output.Items[i]
46-
48+
49+
var tags map[string]string
50+
4751
// Get tags for the domain
4852
tagsOutput, err := svc.GetTags(ctx, &apigateway.GetTagsInput{
49-
ResourceArn: aws.String("arn:aws:apigateway:" + opts.Config.Region + "::/domainnames/" + *item.DomainName),
53+
ResourceArn: ptr.String(fmt.Sprintf("arn:aws:apigateway:%s::/domainnames/%s", opts.Config.Region, *item.DomainName)),
5054
})
5155
if err != nil {
52-
return nil, err
56+
opts.Logger.WithError(err).Error("failed to get tags for domain")
5357
}
54-
55-
tags := make(map[string]string)
56-
for key, value := range tagsOutput.Tags {
57-
tags[key] = value
58+
if tagsOutput.Tags != nil {
59+
tags = tagsOutput.Tags
5860
}
5961

6062
resources = append(resources, &APIGatewayDomainName{
@@ -82,30 +84,19 @@ type APIGatewayDomainName struct {
8284
Tags map[string]string
8385
}
8486

85-
func (f *APIGatewayDomainName) Remove(ctx context.Context) error {
86-
_, err := f.svc.DeleteDomainName(ctx, &apigateway.DeleteDomainNameInput{
87-
DomainName: f.DomainName,
88-
DomainNameId: f.DomainNameID,
87+
func (r *APIGatewayDomainName) Remove(ctx context.Context) error {
88+
_, err := r.svc.DeleteDomainName(ctx, &apigateway.DeleteDomainNameInput{
89+
DomainName: r.DomainName,
90+
DomainNameId: r.DomainNameID,
8991
})
9092

9193
return err
9294
}
9395

94-
func (f *APIGatewayDomainName) Properties() types.Properties {
95-
properties := types.NewProperties()
96-
97-
// Add all tags with "tag:" prefix
98-
for key, value := range f.Tags {
99-
properties.Set("tag:"+key, value)
100-
}
101-
102-
// Add other properties
103-
properties.Set("DomainName", f.DomainName)
104-
properties.Set("DomainNameID", f.DomainNameID)
105-
106-
return properties
96+
func (r *APIGatewayDomainName) Properties() types.Properties {
97+
return types.NewPropertiesFromStruct(r)
10798
}
10899

109-
func (f *APIGatewayDomainName) String() string {
110-
return *f.DomainName
111-
}
100+
func (r *APIGatewayDomainName) String() string {
101+
return *r.DomainName
102+
}

0 commit comments

Comments
 (0)