pytolino 1.1__py3-none-any.whl → 1.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
pytolino/tolino_cloud.py CHANGED
@@ -364,6 +364,51 @@ class Client(object):
364
364
  if host_response.status_code != 200:
365
365
  raise PytolinoException('add to collection failed')
366
366
 
367
+ def upload_metadata(self, book_id, **new_metadata):
368
+ """upload some metadata to a specific book on the cloud
369
+
370
+ :book_id: ref on the cloud of the book
371
+ :**meta_data: dict of metadata than can be changed
372
+
373
+ """
374
+
375
+ url = self.server_settings['meta_url'] + f'/?deliverableId={book_id}'
376
+ host_response = self.session.get(
377
+ url,
378
+ headers={
379
+ 't_auth_token': self.access_token,
380
+ 'hardware_id': self.hardware_id,
381
+ 'reseller_id': self.server_settings['partner_id'],
382
+ }
383
+ )
384
+
385
+ book = host_response.json()
386
+ self._log_requests(host_response)
387
+ if host_response.status_code != 200:
388
+ raise PytolinoException('metadata upload failed')
389
+
390
+ for key, value in new_metadata.items():
391
+ book['metadata'][key] = value
392
+
393
+ payload = {
394
+ 'uploadMetaData': book['metadata']
395
+ }
396
+
397
+ host_response = self.session.put(
398
+ url,
399
+ data=json.dumps(payload),
400
+ headers={
401
+ 'content-type': 'application/json',
402
+ 't_auth_token': self.access_token,
403
+ 'hardware_id': self.hardware_id,
404
+ 'reseller_id': self.server_settings['partner_id'],
405
+ }
406
+ )
407
+
408
+ self._log_requests(host_response)
409
+ if host_response.status_code != 200:
410
+ raise PytolinoException('metadata upload failed')
411
+
367
412
  def upload(self, file_path, name=None, extension=None):
368
413
  """upload an ebook to your cloud
369
414
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pytolino
3
- Version: 1.1
3
+ Version: 1.2
4
4
  Summary: client for tolino cloud
5
5
  Author: Imam Usmani
6
6
  Project-URL: Source Code, https://github.com/ImamAzim/pytolino
@@ -63,6 +63,7 @@ You can then upload, add to a collection or delete ebook on your cloud:
63
63
  client.add_collection(epub_id, 'science fiction') # add the previous book to the collection science-fiction
64
64
  client.delete_ebook(epub_id) # delete the previousely uploaded ebook
65
65
  inventory = client.get_inventory() # get a list of all the books on the cloud and their metadata
66
+ client.upload_metadata(epub_id, title='my title', author='someone') # you can upload various kind of metadata
66
67
  client.logout()
67
68
 
68
69
 
@@ -87,6 +88,7 @@ Features
87
88
  * delete ebook from the cloud
88
89
  * add a book to a collection
89
90
  * download inventory
91
+ * upload metadata
90
92
  * more to come...
91
93
 
92
94
 
@@ -0,0 +1,8 @@
1
+ pytolino/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ pytolino/servers_settings.ini,sha256=F8wSIWwl4XhQJKrhhbHtLhpXtfaGI7ODoD-VReaseBQ,1496
3
+ pytolino/tolino_cloud.py,sha256=qZA35bHpfMjaHd97dcsl3uRqoL64ts8o6DJ-hWUGkPQ,17402
4
+ pytolino-1.2.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
5
+ pytolino-1.2.dist-info/METADATA,sha256=74bkCmM2y9gp6fWEINEB_3KHPB7cpAfwgyBLNBEsRR0,3061
6
+ pytolino-1.2.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
7
+ pytolino-1.2.dist-info/top_level.txt,sha256=3stGCqihEMMqlWGkME45OTJ0Prg-FO_kl554rtYNeuU,9
8
+ pytolino-1.2.dist-info/RECORD,,
@@ -1,8 +0,0 @@
1
- pytolino/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- pytolino/servers_settings.ini,sha256=F8wSIWwl4XhQJKrhhbHtLhpXtfaGI7ODoD-VReaseBQ,1496
3
- pytolino/tolino_cloud.py,sha256=QeKp0lsQLi2HOvXS8XhIcRxKFoAwSoDndamn1mWFFuk,15852
4
- pytolino-1.1.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
5
- pytolino-1.1.dist-info/METADATA,sha256=EckIp1U_kMNm1cv8qxxqYcV2GQM9ZEbTt2wsEQPgQ0Y,2929
6
- pytolino-1.1.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
7
- pytolino-1.1.dist-info/top_level.txt,sha256=3stGCqihEMMqlWGkME45OTJ0Prg-FO_kl554rtYNeuU,9
8
- pytolino-1.1.dist-info/RECORD,,
File without changes