   # @param key [String] - attribute
   # @param value [Any] - actual value
   # @return [Array<Model>]
-  findAll: (key, value) ->
+  find_all: (key, value) ->
     for model in @_array when model.get(key) == value then model
 
   #

          for model in result then @push(klass.from_json(model, @_klasses))
        else
          @push(klass.from_json(result, @_klasses))
          
    @_timer    = null
    _start_sync(every)


  # @param on_add [Function] - callback, which will be call when add new instance to collection
  # @param on_rmeove [Function] - callback, which will be call when remove model from collection
  # @param on_remote [Function] - callback, which will be call when synchronize collection, must be return json
  constructor: (klass, klasses = [], options = {every: 0, on_add: @on_add, on_remove: @on_remove, remote: null}) ->
    throw new Error("Collection must be used only with `BaseModel` inheritor") if klass.__super__.constructor.name isnt 'BaseModel'
    @_array = []
