--- OSA_system2/OSAS_browser.py 2005/03/07 19:33:42 1.16 +++ OSA_system2/OSAS_browser.py 2005/03/17 19:26:51 1.17 @@ -198,6 +198,7 @@ class OSAS_storeOnline(SimpleItem): @todo: Rueckgabe einer Beschreibung gemaess Metadaten """ ret={} + startPath=path server=xmlrpclib.Server(self.serverUrl) indexMeta,stats=server.findIndexMetaWithStats(path)#findex index.meta zu path. @@ -211,11 +212,11 @@ class OSAS_storeOnline(SimpleItem): - #teste ob schon im cache zur Zeit kein chache wenn index.meta file nicht im selben ordner wir path. - print "PPP",path,"x",realPath - if self._v_metaFiles.has_key(realPath) and (self._v_metaFiles[realPath][0]==stats[stat.ST_MTIME]) and (path==""): - print "from cache" - return self._v_metaFiles[realPath][1] + #teste ob schon im cache zur Zeit kein chache wenn index.meta file nicht im selben ordner wie path. + + if self._v_metaFiles.has_key(startPath) and (self._v_metaFiles[realPath][0]==stats[stat.ST_MTIME]) and (path==""): + + return self._v_metaFiles[startPath][1] try: dom=xml.dom.minidom.parseString(server.getFile(indexMeta)) @@ -248,7 +249,7 @@ class OSAS_storeOnline(SimpleItem): object=os.path.join(realPath,pathX,name) ret[object.encode('utf-8')]=(fileType,'') - self._v_metaFiles[realPath]=(stats[stat.ST_MTIME],ret) # speicher im chache + self._v_metaFiles[startPath]=(stats[stat.ST_MTIME],ret) # speicher im chache return ret @@ -393,18 +394,24 @@ class OSAS_storeOnline(SimpleItem): - (string) handler sind die Ergebnisse von giveHandlers fuer dieses Objekt - (string) metainformationen die Metainformationen zum Objekt als Ergebnis von readObjectsFromPath """ - objects=self.readObjectsFromPath(path) - if not objects: - objects={} + + objects=self.getSubDirsFromIndexMeta(path) + + print "obje",objects + + im=self.readObjectsFromPath(path) + if not im: + im={} - im=self.getSubDirsFromIndexMeta(path) + + for key in im.keys(): - #virtuelle pfade hinzufuegen + #relle pfade hinzufuegen, virtueller wird ueberschrieben - if not objects.has_key(key): - objects[key]=im[key] - + objects[key]=im[key] + + def sortLow(x,y): return cmp(x.lower(),y.lower())