Пример #1
0
    def refresh(self):
        DataProvider.TwoWay.refresh(self)
        #cache the filesystem type for speed
        self.fstype = Vfs.uri_get_filesystem_type(self.folder)

        #scan the folder
        scanThread = Vfs.FolderScanner(self.folder, self.includeHidden, self.followSymlinks)
        scanThread.start()
        scanThread.join()
        self.files = scanThread.get_uris()
Пример #2
0
    stm = Vfs.FolderScannerThreadManager(maxConcurrentThreads=1)

    def prog(*args): pass
    def done(*args): pass

    t1 = stm.make_thread("file:///tmp", False, False, prog, done)
    t2 = stm.make_thread("file://"+tmpdiruri, False, False, prog, done)
    stm.join_all_threads()

    ok("Scanned /tmp ok - found %s" % fileuri, "file://"+fileuri in t1.get_uris())
    ok("Scanned %s ok (empty)" % tmpdiruri, t2.get_uris() == [])

    # Test the volume management stuff
    ntfsUri = get_external_resources('folder')['ntfs-volume']
    if Vfs.uri_exists(ntfsUri):
        fstype = Vfs.uri_get_filesystem_type(ntfsUri)
        ok("Get filesystem type (%s)" % fstype,fstype == "ntfs", False)
        #ok("Escape illegal chars in filenames", 
        #        Vfs.uri_sanitize_for_filesystem("invalid:name","ntfs") == "invalid name")
        #ok("Escape illegal chars in uris", 
        #        Vfs.uri_sanitize_for_filesystem("file:///i:n/i:n","ntfs") == "file:///i n/i n")

    localUri = get_external_resources('folder')['folder']
    ok("Local uri --> path", Vfs.uri_to_local_path(localUri) == "/tmp")
    ok("Local uri not removable", Vfs.uri_is_on_removable_volume(localUri) == False)

    removableUri = get_external_resources('folder')['removable-volume']
    if Vfs.uri_exists(removableUri):
        fstype = Vfs.uri_get_filesystem_type(removableUri)
        ok("Get filesystem type (%s)" % fstype,fstype in ("vfat","msdos"))
        ok("Removable volume detected removable", Vfs.uri_is_on_removable_volume(removableUri))