       model = @_mapEntity(model, args) ? model
       if args.forEachEntity
         model = args.forEachEntity.call(EntityImporter, {entity: model, c3ml: c3ml}) ? model
+        if model == false
+          return modelDf.resolve(null)
 
       callback = (err, insertId) ->
         if err

            Logger.error('Failed to log entity insert failure', e)
          modelDf.reject(err)
        else
          modelDf.resolve(insertId)
      
      Entities.insert model, callback
      args.counterLog.increment()


    modelsPromise = Q.all(modelDfs)
    modelsPromise.fail(df.reject)
    modelsPromise.then Meteor.bindEnvironment (models) ->
      modelMap = {}
      # modelIds also includes null values for entities which were skipped and not inserted.
      models = _.filter models, (model) -> model?
      importCount = 0
      _.each models, (model) ->
        modelMap[model._id] = model
        importCount++

      requirejs ['atlas/model/GeoPoint'], Meteor.bindEnvironment (GeoPoint) ->
        resolve = -> df.resolve(modelMap)
        Logger.info 'Imported ' + importCount + ' entities'
        missingParentIds = _.keys missingParentsIdMap
        if missingParentIds.length > 0
