package module

import "time"

const (
	NoAuthProbeHeader_NoAuthID     = "overFlow-NoAuth-ID"
	NoAuthProbeHeader_NoAuthRegist = "overFlow-NoAuth-Regist"
	NoAuthProbeHeader_SetNoAuthID  = "overFlow-Set-NoAuth-ID"
)

type NoAuthProbe struct {
	ID           uint64    `json:"id"`
	Description  string    `json:"description"`
	TempProbeKey string    `json:"tempProbeKey"`
	CreateDate   time.Time `json:"createDate"`
	APIKey       string    `json:"apiKey"`
}

const (
	NoAuthProbeService_Regist            = "NoAuthProbeService.regist"
	NoAuthProbeService_AcceptNoAuthProbe = "NoAuthProbeService.acceptNoAuthProbe"
	NoAuthProbeService_DenyNoauthProbe   = "NoAuthProbeService.denyNoauthProbe"
)

type NoAuthProbeDescription struct {
	Host    NoAuthProbeDescriptionHost    `json:"host"`
	Network NoAuthProbeDescriptionNetwork `json:"network"`
}

type NoAuthProbeDescriptionHost struct {
	Name            string `json:"name"`
	OS              string `json:"os"`
	Platform        string `json:"paltform"`
	PlatformFamily  string `json:"platformFamily"`
	PlatformVersion string `json:"platformVersion"`
	KernelVersion   string `json:"kernelVersion"`
	HostID          string `json:"hostID"`
}

type NoAuthProbeDescriptionNetwork struct {
	Name       string `json:"name"`
	Address    string `json:"address"`
	Gateway    string `json:"gateway"`
	MacAddress string `json:"macAddress"`
}
