'Return an iterable of models.Resource instances
Items are unconstrained by timestamp.
:param query: project/user/source query
:param metaquery: dict with metadata to match on.
:param resource: resource filter.'

def _get_floating_resources(self, query, metaquery, resource, limit):

    if (resource is not None):
        query['_id'] = resource
    query.update(dict(((k, v) for (k, v) in six.iteritems(metaquery))))
    keys = base._handle_sort_key('resource')
    sort_keys = [('last_sample_timestamp' if (i == 'timestamp') else i) for i in keys]
    sort_instructions = self._build_sort_instructions(sort_keys)[0]
    if (limit is not None):
        results = self.db.resource.find(query, sort=sort_instructions, limit=limit)
    else:
        results = self.db.resource.find(query, sort=sort_instructions)
    for r in results:
        (yield models.Resource(resource_id=r['_id'], user_id=r['user_id'], project_id=r['project_id'], first_sample_timestamp=r.get('first_sample_timestamp', self._GENESIS), last_sample_timestamp=r.get('last_sample_timestamp', self._APOCALYPSE), source=r['source'], metadata=pymongo_utils.unquote_keys(r['metadata'])))
