refactor SchedulerClient