private void produceTasks()

in S3HtsjdkPlugin/src/main/java/com/epam/cmbi/s3/parallel/ParallelPartsLoader.java [104:125]


    private void produceTasks() throws InterruptedException {
        int downlPartSize = Configuration.getMinDownloadPartSize();
        int count = 0;
        for (long curPosition = from; curPosition < to; ) {
            if (canceledFlag.get()) {
                LOG.debug("Canceled ", uri.toString());
                break;
            }

            long destPosition = Math.min(to, curPosition + downlPartSize);
            tasksQueue.put(submitTask(curPosition, destPosition));
            LOG.debug("Submit task with position:" + " " + "[" + curPosition + " - " + destPosition
                    + "] for ", uri.toString());
            curPosition = destPosition;
            count++;
            if (count == Configuration.getNumberOfConnections()
                    && downlPartSize < Configuration.getMaxDownloadPartSize()) {
                downlPartSize += downlPartSize;
                count = 0;
            }
        }
    }