package pd_ctl

// Execute `pd-ctl scheduler` base command
func (p *PDCtl) SchedulerExec(command ...string) ([]byte, error) {
	cmdString := []string{"scheduler"}
	cmdString = append(cmdString, command...)
	return p.Exec(cmdString...)
}

// Execute `pd-ctl scheduler show` command, returns scheduler list
func (p *PDCtl) ShowSchedulers() ([]byte, error) {
	return p.SchedulerExec("show")
}

// Execute `pd-ctl scheduler add $name` command
func (p *PDCtl) AddScheduler(name string) error {
	_, err := p.SchedulerExec(name)
	return err
}

// Execute `pd-ctl scheduler remove` command
func (p *PDCtl) RemoveScheduler(name string) error {
	_, err := p.SchedulerExec("remove", name)
	return err
}
