Files
dynamix-golang-sdk/pkg/cloudbroker/qospolicy/models.go

123 lines
2.3 KiB
Go
Raw Normal View History

2026-08-21 18:12:55 +04:00
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"`
}