code: public synchronized boolean addReadyTask(BuildTask task) {
          if (!task.readyToBuild()) {
              throw new IllegalArgumentException("a not ready task added to the queue: " + task);
          }
          unfinishedTasks.add(task);
          log.debug("adding task: {}", task);
          readyTasks.add(task);
          return true;
      }
docs: Add a new, ready to build task to queue
  
  @param task task to be enqueued