+ directories = []
+ files = []
+
+ if self.useServiceRef:
+ root = eServiceReference("2:0:1:0:0:0:0:0:0:0:" + directory)
+ serviceHandler = eServiceCenter.getInstance()
+ list = serviceHandler.list(root)
+
+ while 1:
+ s = list.getNext()
+ if not s.valid():
+ del list
+ break
+ if s.flags & s.mustDescent:
+ directories.append(s.getPath())
+ else:
+ files.append(s)
+ print s.getName(), s.flags
+ directories.sort()
+ files.sort()
+ else:
+ files = os.listdir(directory)
+ files.sort()
+ tmpfiles = files[:]
+ for x in tmpfiles:
+ if os.path.isdir(directory + x):
+ directories.append(directory + x + "/")
+ files.remove(x)