X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/eff37344f3cecd5aed259c9852aca4bdcdfb6922..0aa01993bc8533d417dc510b1860a4a583e093b4:/services/arv-web/arv-web.py diff --git a/services/arv-web/arv-web.py b/services/arv-web/arv-web.py index e7315585a0..f440aa6087 100755 --- a/services/arv-web/arv-web.py +++ b/services/arv-web/arv-web.py @@ -5,8 +5,9 @@ # See http://doc.arvados.org/user/topics/arv-web.html import arvados +from arvados.safeapi import ThreadSafeApiCache import subprocess -from arvados_fuse import Operations, SafeApi, CollectionDirectory +from arvados_fuse import Operations, CollectionDirectory import tempfile import os import llfuse @@ -32,7 +33,7 @@ class ArvWeb(object): self.override_docker_image = docker_image self.port = port self.evqueue = Queue.Queue() - self.api = SafeApi(arvados.config) + self.api = ThreadSafeApiCache(arvados.config.settings()) if arvados.util.group_uuid_pattern.match(project) is None: raise arvados.errors.ArgumentError("Project uuid is not valid") @@ -71,7 +72,7 @@ class ArvWeb(object): et = 'add' else: et = 'remove' - if ev['properties']['new_attributes']['expires_at'] is not None: + if ev['properties']['new_attributes']['trash_at'] is not None: et = 'remove' self.evqueue.put((self.project, et, ev['object_uuid'])) @@ -82,7 +83,7 @@ class ArvWeb(object): def run_fuse_mount(self): self.mountdir = tempfile.mkdtemp() - self.operations = Operations(os.getuid(), os.getgid(), "utf-8") + self.operations = Operations(os.getuid(), os.getgid(), self.api, "utf-8") self.cdir = CollectionDirectory(llfuse.ROOT_INODE, self.operations.inodes, self.api, 2, self.collection) self.operations.inodes.add_entry(self.cdir)