def read(query)
      return [] unless query.valid?
      query.model.load(adapter.read(query), query)
    end
def read(query)
      return [] unless query.valid?
      query.model.load(adapter.read(query), query)
    end
Retrieve a collection of results of a query

   TODO: create example

 @param [Query] query
   composition of the query to perform

 @return [Array]
   result set of the query

 @api semipublic