Set custom priority in FileNeed and FileGet command

When you use `FileNeed` or `FileGet` command the default priority is set to `6`.
You cannot change that value because is hardcoded.

Now you can set priority of downloading files manually:

```
this.cmd("fileNeed", {
    "inner_path": inner_path + "|all",
    "priority": 10
})
```
This commit is contained in:
krzotr 2019-09-08 11:51:46 +02:00 committed by GitHub
parent 62d278a367
commit 55c7585334
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -677,11 +677,11 @@ class UiWebsocket(object):
# Return file content
@flag.async_run
def actionFileGet(self, to, inner_path, required=True, format="text", timeout=300):
def actionFileGet(self, to, inner_path, required=True, format="text", timeout=300, priority=6):
try:
if required or inner_path in self.site.bad_files:
with gevent.Timeout(timeout):
self.site.needFile(inner_path, priority=6)
self.site.needFile(inner_path, priority=priority)
body = self.site.storage.read(inner_path, "rb")
except (Exception, gevent.Timeout) as err:
self.log.error("%s fileGet error: %s" % (inner_path, Debug.formatException(err)))
@ -697,10 +697,10 @@ class UiWebsocket(object):
self.response(to, body)
@flag.async_run
def actionFileNeed(self, to, inner_path, timeout=300):
def actionFileNeed(self, to, inner_path, timeout=300, priority=6):
try:
with gevent.Timeout(timeout):
self.site.needFile(inner_path, priority=6)
self.site.needFile(inner_path, priority=priority)
except (Exception, gevent.Timeout) as err:
return self.response(to, {"error": Debug.formatExceptionMessage(err)})
return self.response(to, "ok")