mirror of
https://github.com/gravitl/netmaker.git
synced 2025-10-29 23:46:23 +08:00
27 lines
1 KiB
Go
27 lines
1 KiB
Go
package promodels
|
|
|
|
// NetworkUserID - ID field for a network user
|
|
type NetworkUserID string
|
|
|
|
// NetworkUser - holds fields for a network user
|
|
type NetworkUser struct {
|
|
AccessLevel int `json:"accesslevel" bson:"accesslevel" yaml:"accesslevel"`
|
|
ClientLimit int `json:"clientlimit" bson:"clientlimit" yaml:"clientlimit"`
|
|
NodeLimit int `json:"nodelimit" bson:"nodelimit" yaml:"nodelimit"`
|
|
ID NetworkUserID `json:"id" bson:"id" yaml:"id"`
|
|
Clients []string `json:"clients" bson:"clients" yaml:"clients"`
|
|
Nodes []string `json:"nodes" bson:"nodes" yaml:"nodes"`
|
|
}
|
|
|
|
// NetworkUserMap - map of network users
|
|
type NetworkUserMap map[NetworkUserID]NetworkUser
|
|
|
|
// NetworkUserMap.Delete - deletes a network user struct from a given map in memory
|
|
func (N NetworkUserMap) Delete(ID NetworkUserID) {
|
|
delete(N, ID)
|
|
}
|
|
|
|
// NetworkUserMap.Add - adds a network user struct to given network user map in memory
|
|
func (N NetworkUserMap) Add(User *NetworkUser) {
|
|
N[User.ID] = *User
|
|
}
|