@Override
  public Task[] getIssues(@Nullable String query, int offset, int limit, boolean withClosed) throws Exception {
    List<RedmineIssue> issues = fetchIssues(query, offset, limit, withClosed);
    List<Task> result = ContainerUtil.map(issues, issue -> new RedmineTask(this, issue));
    if (query != null && ID_PATTERN.matcher(query).matches()) {
      LOG.debug("Query '" + query + "' looks like an issue ID. Requesting it explicitly from the server " + this);
      final Task found = findTask(query);
      if (found != null) {
        result = ContainerUtil.append(result, found);
      }
    }
    return result.toArray(Task.EMPTY_ARRAY);
  }
@Override
  public Task[] getIssues(@Nullable String query, int offset, int limit, boolean withClosed)