Skip to content

Commit ea6f76b

Browse files
committed
refactor: improved readability of switch/case with fallthrough
1 parent 6e5ff39 commit ea6f76b

File tree

1 file changed

+32
-36
lines changed

1 file changed

+32
-36
lines changed

internal/driver/f5/declaration.go

Lines changed: 32 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -86,31 +86,29 @@ func buildAS3DomainTenant(
8686
tenant := as3.Tenant{}
8787
rpcUpdates := []*server.ProvisioningStatusRequest_ProvisioningStatus{}
8888
switch domain.ProvisioningStatus {
89-
case server.ProvisioningStatusRequest_ProvisioningStatus_DELETED.String(),
90-
server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String():
91-
if domain.ProvisioningStatus == server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String() {
92-
rpcUpdates = append(rpcUpdates, &server.ProvisioningStatusRequest_ProvisioningStatus{
93-
Id: domain.Id,
94-
Model: server.ProvisioningStatusRequest_ProvisioningStatus_DOMAIN,
95-
Status: server.ProvisioningStatusRequest_ProvisioningStatus_DELETED,
96-
})
97-
}
89+
case server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String():
90+
rpcUpdates = append(rpcUpdates, &server.ProvisioningStatusRequest_ProvisioningStatus{
91+
Id: domain.Id,
92+
Model: server.ProvisioningStatusRequest_ProvisioningStatus_DOMAIN,
93+
Status: server.ProvisioningStatusRequest_ProvisioningStatus_DELETED,
94+
})
95+
fallthrough
96+
case server.ProvisioningStatusRequest_ProvisioningStatus_DELETED.String():
9897
// by excluding the entity from the AS3 declaration the API will delete it from the F5 device
9998
return tenant, rpcUpdates, errEntityPendingDeletion
10099
}
101100
application := as3.Application{}
102101
as3PoolReferences := []as3.PointerGSLBPool{}
103102
for _, p := range domain.Pools {
104103
switch p.ProvisioningStatus {
105-
case server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String(),
106-
server.ProvisioningStatusRequest_ProvisioningStatus_DELETED.String():
107-
if p.ProvisioningStatus == server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String() {
108-
rpcUpdates = append(rpcUpdates, &server.ProvisioningStatusRequest_ProvisioningStatus{
109-
Id: p.Id,
110-
Model: server.ProvisioningStatusRequest_ProvisioningStatus_POOL,
111-
Status: server.ProvisioningStatusRequest_ProvisioningStatus_DELETED,
112-
})
113-
}
104+
case server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String():
105+
rpcUpdates = append(rpcUpdates, &server.ProvisioningStatusRequest_ProvisioningStatus{
106+
Id: p.Id,
107+
Model: server.ProvisioningStatusRequest_ProvisioningStatus_POOL,
108+
Status: server.ProvisioningStatusRequest_ProvisioningStatus_DELETED,
109+
})
110+
fallthrough
111+
case server.ProvisioningStatusRequest_ProvisioningStatus_DELETED.String():
114112
// by excluding the entity from the AS3 declaration the API will delete it from the F5 device
115113
continue
116114
}
@@ -177,15 +175,14 @@ func buildAS3CommonTenant(
177175
monitorsByPoolID[pool.Id] = pool.Monitors
178176
for _, monitor := range pool.Monitors {
179177
switch monitor.ProvisioningStatus {
180-
case server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String(),
181-
server.ProvisioningStatusRequest_ProvisioningStatus_DELETED.String():
182-
if monitor.ProvisioningStatus == server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String() {
183-
rpcUpdates = append(rpcUpdates, &server.ProvisioningStatusRequest_ProvisioningStatus{
184-
Id: monitor.Id,
185-
Model: server.ProvisioningStatusRequest_ProvisioningStatus_MONITOR,
186-
Status: server.ProvisioningStatusRequest_ProvisioningStatus_DELETED,
187-
})
188-
}
178+
case server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String():
179+
rpcUpdates = append(rpcUpdates, &server.ProvisioningStatusRequest_ProvisioningStatus{
180+
Id: monitor.Id,
181+
Model: server.ProvisioningStatusRequest_ProvisioningStatus_MONITOR,
182+
Status: server.ProvisioningStatusRequest_ProvisioningStatus_DELETED,
183+
})
184+
fallthrough
185+
case server.ProvisioningStatusRequest_ProvisioningStatus_DELETED.String():
189186
// by excluding the entity from the AS3 declaration the API will delete it from the F5 device
190187
continue
191188
}
@@ -214,15 +211,14 @@ func buildAS3CommonTenant(
214211
}
215212
for _, member := range members {
216213
switch member.ProvisioningStatus {
217-
case server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String(),
218-
server.ProvisioningStatusRequest_ProvisioningStatus_DELETED.String():
219-
if member.ProvisioningStatus == server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String() {
220-
rpcUpdates = append(rpcUpdates, &server.ProvisioningStatusRequest_ProvisioningStatus{
221-
Id: member.Id,
222-
Model: server.ProvisioningStatusRequest_ProvisioningStatus_MEMBER,
223-
Status: server.ProvisioningStatusRequest_ProvisioningStatus_DELETED,
224-
})
225-
}
214+
case server.ProvisioningStatusRequest_ProvisioningStatus_PENDING_DELETE.String():
215+
rpcUpdates = append(rpcUpdates, &server.ProvisioningStatusRequest_ProvisioningStatus{
216+
Id: member.Id,
217+
Model: server.ProvisioningStatusRequest_ProvisioningStatus_MEMBER,
218+
Status: server.ProvisioningStatusRequest_ProvisioningStatus_DELETED,
219+
})
220+
fallthrough
221+
case server.ProvisioningStatusRequest_ProvisioningStatus_DELETED.String():
226222
// by excluding the entity from the AS3 declaration the API will delete it from the F5 device
227223
continue
228224
}

0 commit comments

Comments
 (0)