Copyright(C) 2024. Huawei Technologies Co.,Ltd. All rights reserved.
*/
Package generator is interface of Ranktable generator.
*/
package generator
import (
"k8s.io/api/core/v1"
"ascend-operator/pkg/ranktable/utils"
)
type FileManager interface {
WriteToFile() error
DeleteFile() error
}
type RankTableGenerator interface {
FileManager
GetNeedGenerate() bool
SetStatus(utils.RankTableStatus)
GetStatus() utils.RankTableStatus
AddPod(*v1.Pod) error
DeletePod()
PodSetChanged(pods []*v1.Pod) bool
GatherServerList()
ToString() (string, error)
GetConfigmapExist() utils.ConfigmapCheck
SetConfigmapExist(utils.ConfigmapCheck)
GetTimeStamp() uint64
SetTimeStamp(uint64)
GetConfigmapStatus() utils.RankTableStatus
SetConfigmapStatus(utils.RankTableStatus)
GetFileStatus() utils.RankTableStatus
SetFileStatus(utils.RankTableStatus)
Lock()
Unlock()
GetSpBlockNum() int
SetSpBlockNum(int)
}