-
Notifications
You must be signed in to change notification settings - Fork 21
/
resmgr.go
79 lines (73 loc) · 2.21 KB
/
resmgr.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
package core
import (
"github.com/MG-RAST/AWE/lib/user"
)
type ClientMgr interface {
RegisterNewClient(FormFiles, *ClientGroup) (*Client, error)
ClientHeartBeat(string, *ClientGroup) (HBmsg, error)
GetClient(string) (*Client, error)
GetClientByUser(string, *user.User) (*Client, error)
GetAllClients() []*Client
GetAllClientsByUser(*user.User) []*Client
DeleteClient(string) error
DeleteClientByUser(string, *user.User) error
SuspendClient(string) error
SuspendClientByUser(string, *user.User) error
ResumeClient(string) error
ResumeClientByUser(string, *user.User) error
ResumeSuspendedClients() int
ResumeSuspendedClientsByUser(*user.User) int
SuspendAllClients() int
SuspendAllClientsByUser(*user.User) int
ClientChecker()
UpdateSubClients(string, int)
UpdateSubClientsByUser(string, int, *user.User)
}
type WorkMgr interface {
GetWorkById(string) (*Workunit, error)
ShowWorkunits(string) []*Workunit
ShowWorkunitsByUser(string, *user.User) []*Workunit
CheckoutWorkunits(string, string, int) ([]*Workunit, error)
NotifyWorkStatus(Notice)
EnqueueWorkunit(*Workunit) error
FetchDataToken(string, string) (string, error)
FetchPrivateEnv(string, string) (map[string]string, error)
}
type JobMgr interface {
JobRegister() (string, error)
EnqueueTasksByJobId(string, []*Task) error
GetActiveJobs() map[string]*JobPerf
IsJobRegistered(string) bool
GetSuspendJobs() map[string]bool
SuspendJob(string, string, string) error
ResumeSuspendedJob(string) error
ResumeSuspendedJobByUser(string, *user.User) error
ResumeSuspendedJobs() int
ResumeSuspendedJobsByUser(*user.User) int
ResubmitJob(string) error
DeleteJob(string) error
DeleteJobByUser(string, *user.User) error
DeleteSuspendedJobs() int
DeleteSuspendedJobsByUser(*user.User) int
DeleteZombieJobs() int
DeleteZombieJobsByUser(*user.User) int
InitMaxJid() error
RecoverJobs() error
FinalizeWorkPerf(string, string) error
SaveStdLog(string, string, string) error
GetReportMsg(string, string) (string, error)
RecomputeJob(string, string) error
UpdateGroup(string, string) error
UpdatePriority(string, int) error
}
type ClientWorkMgr interface {
ClientMgr
WorkMgr
}
type ResourceMgr interface {
ClientWorkMgr
JobMgr
Handle()
ShowStatus() string
Timer()
}