mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-06-23 15:30:45 -04:00
Add some device free space error handling
This commit is contained in:
parent
bf025726f9
commit
cc5be36e5a
@ -18,12 +18,12 @@ from threading import Thread
|
|||||||
from calibre import prints
|
from calibre import prints
|
||||||
from calibre.constants import numeric_version, DEBUG, cache_dir
|
from calibre.constants import numeric_version, DEBUG, cache_dir
|
||||||
from calibre.devices.errors import (OpenFailed, OpenFeedback, ControlError, TimeoutError,
|
from calibre.devices.errors import (OpenFailed, OpenFeedback, ControlError, TimeoutError,
|
||||||
InitialConnectionError, PacketError)
|
InitialConnectionError, PacketError, UserFeedback)
|
||||||
from calibre.devices.interface import DevicePlugin, currently_connected_device
|
from calibre.devices.interface import DevicePlugin, currently_connected_device
|
||||||
from calibre.devices.usbms.books import Book, CollectionsBookList
|
from calibre.devices.usbms.books import Book, CollectionsBookList
|
||||||
from calibre.devices.usbms.deviceconfig import DeviceConfig
|
from calibre.devices.usbms.deviceconfig import DeviceConfig
|
||||||
from calibre.devices.usbms.driver import USBMS
|
from calibre.devices.usbms.driver import USBMS
|
||||||
from calibre.devices.utils import build_template_regexp
|
from calibre.devices.utils import build_template_regexp, sanity_check
|
||||||
from calibre.ebooks import BOOK_EXTENSIONS
|
from calibre.ebooks import BOOK_EXTENSIONS
|
||||||
from calibre.ebooks.metadata import title_sort
|
from calibre.ebooks.metadata import title_sort
|
||||||
from calibre.ebooks.metadata.book.base import Metadata
|
from calibre.ebooks.metadata.book.base import Metadata
|
||||||
@ -252,6 +252,7 @@ class SMART_DEVICE_APP(DeviceConfig, DevicePlugin):
|
|||||||
'SET_LIBRARY_INFO' : 19,
|
'SET_LIBRARY_INFO' : 19,
|
||||||
'DELETE_BOOK' : 13,
|
'DELETE_BOOK' : 13,
|
||||||
'DISPLAY_MESSAGE' : 17,
|
'DISPLAY_MESSAGE' : 17,
|
||||||
|
'ERROR' : 20,
|
||||||
'FREE_SPACE' : 5,
|
'FREE_SPACE' : 5,
|
||||||
'GET_BOOK_FILE_SEGMENT' : 14,
|
'GET_BOOK_FILE_SEGMENT' : 14,
|
||||||
'GET_BOOK_METADATA' : 15,
|
'GET_BOOK_METADATA' : 15,
|
||||||
@ -702,8 +703,12 @@ class SMART_DEVICE_APP(DeviceConfig, DevicePlugin):
|
|||||||
'canSupportLpathChanges': True},
|
'canSupportLpathChanges': True},
|
||||||
print_debug_info=False,
|
print_debug_info=False,
|
||||||
wait_for_response=self.can_send_ok_to_sendbook)
|
wait_for_response=self.can_send_ok_to_sendbook)
|
||||||
|
|
||||||
if self.can_send_ok_to_sendbook:
|
if self.can_send_ok_to_sendbook:
|
||||||
|
if opcode == 'ERROR':
|
||||||
|
raise UserFeedback(msg='Sending book %s to device failed' % lpath,
|
||||||
|
details=result.get('message', ''),
|
||||||
|
level=UserFeedback.ERROR)
|
||||||
|
return
|
||||||
lpath = result.get('lpath', lpath)
|
lpath = result.get('lpath', lpath)
|
||||||
book_metadata.lpath = lpath
|
book_metadata.lpath = lpath
|
||||||
self._set_known_metadata(book_metadata)
|
self._set_known_metadata(book_metadata)
|
||||||
@ -1464,7 +1469,8 @@ class SMART_DEVICE_APP(DeviceConfig, DevicePlugin):
|
|||||||
self._debug(names)
|
self._debug(names)
|
||||||
else:
|
else:
|
||||||
self._debug()
|
self._debug()
|
||||||
|
sanity_check(on_card='', files = files, card_prefixes=[],
|
||||||
|
free_space=self.free_space())
|
||||||
paths = []
|
paths = []
|
||||||
names = iter(names)
|
names = iter(names)
|
||||||
metadata = iter(metadata)
|
metadata = iter(metadata)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user