23 lines
534 B
Go
23 lines
534 B
Go
|
package main
|
||
|
|
||
|
// Process contains an alias that will be returned when queries, and a process
|
||
|
// name to look for.
|
||
|
type Process struct {
|
||
|
Alias string `json:"alias"`
|
||
|
Process string `json:"process"`
|
||
|
}
|
||
|
|
||
|
// ProcessesState is a map of processes' aliases and its statuses.
|
||
|
type ProcessesState map[string]bool
|
||
|
|
||
|
func GetProcessesState(procs *[]Process) (ps ProcessesState) {
|
||
|
ps = make(ProcessesState)
|
||
|
|
||
|
for _, proc := range *procs {
|
||
|
pids, err := GetProcessPIDs(proc.Process)
|
||
|
ps[proc.Alias] = err == nil && len(pids) > 0
|
||
|
}
|
||
|
|
||
|
return
|
||
|
}
|