public Map<String, String> scheduleMinionTasks(@Nullable String taskType, @Nullable String tableNameWithType)
      throws IOException, HttpException {
    HttpPost httpPost = createHttpPostRequest(
        MinionRequestURLBuilder.baseUrl(_controllerUrl).forTaskSchedule(taskType, tableNameWithType));
    try (CloseableHttpResponse response = HTTP_CLIENT.execute(httpPost)) {
      int statusCode = response.getCode();
      final String responseString = EntityUtils.toString(response.getEntity());
      if (statusCode >= 400) {
        throw new HttpException(
            String.format("Unable to schedule minion tasks. Error code %d, Error message: %s", statusCode,
                responseString));
      }
      return JsonUtils.stringToObject(responseString, TYPEREF_MAP_STRING_STRING);
    }
  }
@Test
  public void testTaskSchedule()
      throws IOException, HttpException {
    HttpServer httpServer = startServer(14202, "/tasks/schedule",
        createHandler(200, "{\"SegmentGenerationAndPushTask\":\"Task_SegmentGenerationAndPushTask_1607470525615\"}",
            0));
    MinionClient minionClient = new MinionClient("http://localhost:14202/", null);
    Assert.assertEquals(minionClient.scheduleMinionTasks(null, null).get("SegmentGenerationAndPushTask"),
        "Task_SegmentGenerationAndPushTask_1607470525615");
    httpServer.stop(0);
  }