       Q.all(current)
       .then (result) ->
         if _.size(current) < numberOfParallelRequest
-          # @success = true
           deferred.resolve true
         else
           doBatch _.tail(list, numberOfParallelRequest), numberOfParallelRequest
       .fail (error) ->
-        # @logger.error "Error batch processing; #{error}"
-        # @logger.error "Error stack: #{error.stack}" if error.stack
-        # @success = false
         deferred.reject error
      doBatch(list, numberOfParallelRequest)
      deferred.promise

      @logger.error "Error stack: #{error.stack}" if error.stack
      @_processResult(callback)
    .done (result) =>
      @_processResult(callback)

  _processResult: (callback) ->

  2.1) Send product type updates

  3) Build category creates (new categories only)
  3.1) Send category creates

  4) Fetch categories (get fresh list after category creates)

