sprintf to strings builder

This commit is contained in:
crn4
2025-10-30 00:27:05 +01:00
parent a654c286bf
commit b96dfb834e
+41 -8
View File
@@ -23,6 +23,9 @@ import (
const ( const (
allPeers = "0.0.0.0" allPeers = "0.0.0.0"
fw = "fw:"
rfw = "route-fw:"
nr = "network-resource-"
) )
type NetworkMapCache struct { type NetworkMapCache struct {
@@ -948,14 +951,41 @@ func (b *NetworkMapBuilder) assembleNetworkMap(
} }
func (b *NetworkMapBuilder) generateFirewallRuleID(rule *FirewallRule) string { func (b *NetworkMapBuilder) generateFirewallRuleID(rule *FirewallRule) string {
portRange := fmt.Sprintf("%d-%d", rule.PortRange.Start, rule.PortRange.End) var s strings.Builder
return fmt.Sprintf("fw:%s:%s:%d:%s:%s:%s:%s", s.WriteString(fw)
rule.PolicyID, rule.PeerIP, rule.Direction, rule.Protocol, rule.Action, rule.Port, portRange) s.WriteString(rule.PolicyID)
s.WriteRune(':')
s.WriteString(rule.PeerIP)
s.WriteRune(':')
s.WriteString(strconv.Itoa(rule.Direction))
s.WriteRune(':')
s.WriteString(rule.Protocol)
s.WriteRune(':')
s.WriteString(rule.Action)
s.WriteRune(':')
s.WriteString(rule.Port)
s.WriteRune(':')
s.WriteString(strconv.Itoa(int(rule.PortRange.Start)))
s.WriteRune('-')
s.WriteString(strconv.Itoa(int(rule.PortRange.End)))
return s.String()
} }
func (b *NetworkMapBuilder) generateRouteFirewallRuleID(rule *RouteFirewallRule) string { func (b *NetworkMapBuilder) generateRouteFirewallRuleID(rule *RouteFirewallRule) string {
return fmt.Sprintf("route-fw:%s:%s:%s:%s:%s:%d", var s strings.Builder
rule.RouteID, rule.Destination, rule.Action, strings.Join(rule.SourceRanges, ","), rule.Protocol, rule.Port) s.WriteString(rfw)
s.WriteString(string(rule.RouteID))
s.WriteRune(':')
s.WriteString(rule.Destination)
s.WriteRune(':')
s.WriteString(rule.Action)
s.WriteRune(':')
s.WriteString(strings.Join(rule.SourceRanges, ","))
s.WriteRune(':')
s.WriteString(rule.Protocol)
s.WriteRune(':')
s.WriteString(strconv.Itoa(int(rule.Port)))
return s.String()
} }
func (b *NetworkMapBuilder) isPeerInGroups(groupIDs []string, peerGroups []string) bool { func (b *NetworkMapBuilder) isPeerInGroups(groupIDs []string, peerGroups []string) bool {
@@ -1303,11 +1333,14 @@ func (b *NetworkMapBuilder) calculateNetworkResourceFirewallUpdates(
} }
updates[routerPeerID] = delta updates[routerPeerID] = delta
} }
var resourceRouteID strings.Builder
resourceRouteID := fmt.Sprintf("network-resource-%s-%s", resource.ID, routerPeerID) resourceRouteID.WriteString(nr)
resourceRouteID.WriteString(resource.ID)
resourceRouteID.WriteRune('-')
resourceRouteID.WriteString(routerPeerID)
delta.UpdateRouteFirewallRules = append(delta.UpdateRouteFirewallRules, &RouteFirewallRuleUpdate{ delta.UpdateRouteFirewallRules = append(delta.UpdateRouteFirewallRules, &RouteFirewallRuleUpdate{
RuleID: resourceRouteID, RuleID: resourceRouteID.String(),
AddSourceIP: newPeer.IP.String(), AddSourceIP: newPeer.IP.String(),
}) })
} }