code: @Override
      protected TaskProcessor createImpl(Task task) throws TaskProcessorCreationFailedException {
  
          try {
              BitIntegrityCheckReportTask bitTask = new BitIntegrityCheckReportTask();
              bitTask.readTask(task);
              String account = bitTask.getAccount();
              StorageProviderCredentials credentials =
                  getCredentialRepo().getStorageProviderCredentials(account, bitTask.getStoreId());
              StorageProvider store = storageProviderFactory.create(credentials);
              StorageProviderType storageProviderType = credentials.getProviderType();
  
              return new SpaceComparisonTaskProcessor(bitTask,
                                                      bitLogStore,
                                                      manifestStore,
                                                      store,
                                                      storageProviderType);
          } catch (Exception e) {
              log.error("failed to create TaskProcessor: " + e.getMessage(), e);
              throw new TaskProcessorCreationFailedException("failed to create TaskProcessor: ", e);
          }
      }
docs: /*
  (non-Javadoc)
  
  @see
  org.duracloud.mill.workman.TaskProcessorFactoryBase#createImpl(org.duracloud
  .common.queue.task.Task)