...
1
16
17 package v1
18
19 import (
20 v1 "k8s.io/api/flowcontrol/v1"
21 "k8s.io/utils/ptr"
22 )
23
24
25 const (
26 FlowSchemaDefaultMatchingPrecedence int32 = 1000
27 )
28
29
30 const (
31 PriorityLevelConfigurationDefaultHandSize int32 = 8
32 PriorityLevelConfigurationDefaultQueues int32 = 64
33 PriorityLevelConfigurationDefaultQueueLengthLimit int32 = 50
34 PriorityLevelConfigurationDefaultNominalConcurrencyShares int32 = 30
35 )
36
37
38 func SetDefaults_FlowSchemaSpec(spec *v1.FlowSchemaSpec) {
39 if spec.MatchingPrecedence == 0 {
40 spec.MatchingPrecedence = FlowSchemaDefaultMatchingPrecedence
41 }
42 }
43
44 func SetDefaults_ExemptPriorityLevelConfiguration(eplc *v1.ExemptPriorityLevelConfiguration) {
45 if eplc.NominalConcurrencyShares == nil {
46 eplc.NominalConcurrencyShares = new(int32)
47 *eplc.NominalConcurrencyShares = 0
48 }
49 if eplc.LendablePercent == nil {
50 eplc.LendablePercent = new(int32)
51 *eplc.LendablePercent = 0
52 }
53 }
54
55 func SetDefaults_LimitedPriorityLevelConfiguration(lplc *v1.LimitedPriorityLevelConfiguration) {
56 if lplc.NominalConcurrencyShares == nil {
57 lplc.NominalConcurrencyShares = ptr.To(PriorityLevelConfigurationDefaultNominalConcurrencyShares)
58 }
59 if lplc.LendablePercent == nil {
60 lplc.LendablePercent = new(int32)
61 *lplc.LendablePercent = 0
62 }
63 }
64
65
66 func SetDefaults_QueuingConfiguration(cfg *v1.QueuingConfiguration) {
67 if cfg.HandSize == 0 {
68 cfg.HandSize = PriorityLevelConfigurationDefaultHandSize
69 }
70 if cfg.Queues == 0 {
71 cfg.Queues = PriorityLevelConfigurationDefaultQueues
72 }
73 if cfg.QueueLengthLimit == 0 {
74 cfg.QueueLengthLimit = PriorityLevelConfigurationDefaultQueueLengthLimit
75 }
76 }
77
View as plain text