Changeset 3625

Show
Ignore:
Timestamp:
17/10/08 18:06:52 (3 months ago)
Author:
dmeyer
Message:

fix directory query for non monitored directories

Location:
trunk/beacon
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/beacon/bin/beacon-search

    r3624 r3625  
    265265    t1 = time.time() 
    266266    if 'dirname' in query: 
    267         async = kaa.beacon.get(query['dirname']) 
    268         if isinstance(async, kaa.InProgress): 
    269             yield async 
    270             directory = async.get_result() 
     267        directory = yield kaa.beacon.get(query['dirname']) 
    271268        if 'recursive' in query: 
    272269            result = yield directory.list(recursive=True) 
  • trunk/beacon/src/db.py

    r3611 r3625  
    202202        if 'id' in query and qlen == 1: 
    203203            return kaa.InProgress().execute(self._db_query_id, query['id']) 
     204        if 'recursive' in query and not query.get('recursive'): 
     205            del query['recursive'] 
     206            qlen -= 1 
    204207        if 'parent' in query and 'recursive' in query and qlen == 2: 
    205208            if not query['parent']._beacon_isdir: 
     
    366369        while directories: 
    367370            parent = directories.pop(0) 
    368             if not parent._beacon_id: 
    369                 continue 
    370             for i in self._db.query(parent = parent._beacon_id): 
     371            for i in (yield self._db_query_dir(parent)): 
    371372                if i['type'] == 'dir': 
    372373                    child = create_directory(i, parent)