v16.0.0
This commit is contained in:
122
pkg/cloudbroker/qospolicy/models.go
Normal file
122
pkg/cloudbroker/qospolicy/models.go
Normal file
@@ -0,0 +1,122 @@
|
||||
package qospolicy
|
||||
|
||||
type ListQoSPolicies struct {
|
||||
// List
|
||||
Data []ItemQoSPolicy `json:"data"`
|
||||
|
||||
// Entry count
|
||||
EntryCount uint64 `json:"entryCount"`
|
||||
}
|
||||
|
||||
type ItemQoSPolicy struct {
|
||||
// ID of the QoS policy
|
||||
ID uint64 `json:"id"`
|
||||
|
||||
// GUID
|
||||
GUID uint64 `json:"guid"`
|
||||
|
||||
// Account ID that owns the QoS policy
|
||||
AccountID uint64 `json:"account_id"`
|
||||
|
||||
// Name of the QoS policy
|
||||
Name string `json:"name"`
|
||||
|
||||
// Description of the QoS policy
|
||||
Description string `json:"description"`
|
||||
|
||||
// Status of the QoS policy
|
||||
Status string `json:"status"`
|
||||
|
||||
// Created at (unix timestamp)
|
||||
CreatedAt uint64 `json:"created_at"`
|
||||
|
||||
// Updated at (unix timestamp)
|
||||
UpdatedAt uint64 `json:"updated_at"`
|
||||
|
||||
// Created by
|
||||
CreatedBy string `json:"created_by"`
|
||||
|
||||
// Updated by
|
||||
UpdatedBy string `json:"updated_by"`
|
||||
|
||||
// List of rules
|
||||
Rules Rules `json:"rules"`
|
||||
}
|
||||
|
||||
type RecordQoSPolicy struct {
|
||||
// ID of the QoS policy
|
||||
ID uint64 `json:"id"`
|
||||
|
||||
// GUID
|
||||
GUID uint64 `json:"guid"`
|
||||
|
||||
// Account ID that owns the QoS policy
|
||||
AccountID uint64 `json:"account_id"`
|
||||
|
||||
// Name of the QoS policy
|
||||
Name string `json:"name"`
|
||||
|
||||
// Description of the QoS policy
|
||||
Description string `json:"description"`
|
||||
|
||||
// Status of the QoS policy
|
||||
Status string `json:"status"`
|
||||
|
||||
// Created at (unix timestamp)
|
||||
CreatedAt uint64 `json:"created_at"`
|
||||
|
||||
// Updated at (unix timestamp)
|
||||
UpdatedAt uint64 `json:"updated_at"`
|
||||
|
||||
// Created by
|
||||
CreatedBy string `json:"created_by"`
|
||||
|
||||
// Updated by
|
||||
UpdatedBy string `json:"updated_by"`
|
||||
|
||||
// List of rules
|
||||
Rules Rules `json:"rules"`
|
||||
}
|
||||
|
||||
type Rules []Rule
|
||||
|
||||
type Rule struct {
|
||||
// ID of the rule
|
||||
ID uint64 `json:"id"`
|
||||
|
||||
// Description of the rule
|
||||
Description string `json:"description"`
|
||||
|
||||
// Rule priority in OVS (higher number = higher priority)
|
||||
Priority uint64 `json:"priority"`
|
||||
|
||||
// Traffic direction
|
||||
Direction string `json:"direction"`
|
||||
|
||||
// IP protocol
|
||||
Protocol string `json:"protocol"`
|
||||
|
||||
// Priority Code Point (0-7). L2 marking
|
||||
PCPTag uint64 `json:"pcp_tag"`
|
||||
|
||||
// DSCP value (0-63). L3 marking
|
||||
DSCPValue uint64 `json:"dscp_value"`
|
||||
|
||||
// Source IP address
|
||||
SrcIP string `json:"src_ip"`
|
||||
|
||||
// Destination IP address
|
||||
DstIP string `json:"dst_ip"`
|
||||
|
||||
// Source MAC address
|
||||
SrcMAC string `json:"src_mac"`
|
||||
|
||||
// Destination MAC address
|
||||
DstMAC string `json:"dst_mac"`
|
||||
|
||||
// Source port
|
||||
SrcPort uint64 `json:"src_port"`
|
||||
|
||||
// Destination port
|
||||
DstPort uint64 `json:"dst_port"`
|
||||
}
|
||||
Reference in New Issue
Block a user