mirror of
https://github.com/jellyfin/jellyfin-kodi.git
synced 2025-11-10 18:36:33 +00:00
Created a REQUEST function with an explicit interface which forwards
onto the previous request interface. Refactored downloader module to use newer interface.
This commit is contained in:
parent
4d4f45cd42
commit
99eed5318a
2 changed files with 28 additions and 17 deletions
|
|
@ -41,21 +41,21 @@ def browse_info():
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def _http(action, url, request={}, server_id=None):
|
|
||||||
request.update({'url': url, 'type': action})
|
|
||||||
return Jellyfin(server_id).http.request(request)
|
|
||||||
|
|
||||||
|
|
||||||
def _get(handler, params=None, server_id=None):
|
def _get(handler, params=None, server_id=None):
|
||||||
return _http("GET", get_jellyfinserver_url(handler), {'params': params}, server_id)
|
url = get_jellyfinserver_url(handler)
|
||||||
|
jf = Jellyfin(server_id)
|
||||||
|
return jf.http.REQUEST(url, "GET", params)
|
||||||
|
|
||||||
def _post(handler, json=None, params=None, server_id=None):
|
def _post(handler, json=None, params=None, server_id=None):
|
||||||
return _http("POST", get_jellyfinserver_url(handler), {'params': params, 'json': json}, server_id)
|
url = get_jellyfinserver_url(handler)
|
||||||
|
jf = Jellyfin(server_id)
|
||||||
|
return jf.http.REQUEST(url, "POST", params, json)
|
||||||
|
|
||||||
|
|
||||||
def _delete(handler, params=None, server_id=None):
|
def _delete(handler, params=None, server_id=None):
|
||||||
return _http("DELETE", get_jellyfinserver_url(handler), {'params': params}, server_id)
|
url = get_jellyfinserver_url(handler)
|
||||||
|
jf = Jellyfin(server_id)
|
||||||
|
return jf.http.REQUEST(url, "DELETE", params)
|
||||||
|
|
||||||
|
|
||||||
def validate_view(library_id, item_id):
|
def validate_view(library_id, item_id):
|
||||||
|
|
@ -314,17 +314,14 @@ class GetItemWorker(threading.Thread):
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
request = {
|
url = self.server.http.get_handler_url("Users/{UserId}/Items")
|
||||||
'type': "GET",
|
params = {
|
||||||
'handler': "Users/{UserId}/Items",
|
'Ids': ','.join(str(x) for x in item_ids),
|
||||||
'params': {
|
'Fields': api.info()
|
||||||
'Ids': ','.join(str(x) for x in item_ids),
|
|
||||||
'Fields': api.info()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
try:
|
try:
|
||||||
result = self.server.http.request(request, s)
|
result = self.server.http.REQUEST(url, "GET", params, s)
|
||||||
|
|
||||||
for item in result['Items']:
|
for item in result['Items']:
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -64,6 +64,20 @@ class HTTP(object):
|
||||||
|
|
||||||
return string
|
return string
|
||||||
|
|
||||||
|
def REQUEST(self, url, type, params=None, json=None, session=None):
|
||||||
|
request = {'url': url, 'type': type}
|
||||||
|
if params is not None:
|
||||||
|
request['params'] = params
|
||||||
|
if json is not None:
|
||||||
|
request['json'] = json
|
||||||
|
return self.request(request, session)
|
||||||
|
|
||||||
|
|
||||||
|
def get_handler_url(self, handler):
|
||||||
|
server = self.config.data.get("auth.server", "")
|
||||||
|
return "%s/%s" % (server, handler)
|
||||||
|
|
||||||
|
|
||||||
def request(self, data, session=None):
|
def request(self, data, session=None):
|
||||||
|
|
||||||
''' Give a chance to retry the connection. Jellyfin sometimes can be slow to answer back
|
''' Give a chance to retry the connection. Jellyfin sometimes can be slow to answer back
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue