%PDF- %PDF-
Direktori : /lib/calibre/calibre/srv/ |
Current File : //lib/calibre/calibre/srv/changes.py |
#!/usr/bin/env python3 # License: GPLv3 Copyright: 2017, Kovid Goyal <kovid at kovidgoyal.net> class ChangeEvent: def __init__(self): pass def __repr__(self): return '{}(book_ids={})'.format( self.__class__.__name__, ','.join(sorted(map(str, self.book_ids))) ) class BooksAdded(ChangeEvent): def __init__(self, book_ids): ChangeEvent.__init__(self) self.book_ids = frozenset(book_ids) class BooksDeleted(ChangeEvent): def __init__(self, book_ids): ChangeEvent.__init__(self) self.book_ids = frozenset(book_ids) class FormatsAdded(ChangeEvent): def __init__(self, formats_map): ChangeEvent.__init__(self) self.formats_map = formats_map @property def book_ids(self): return frozenset(self.formats_map) class FormatsRemoved(ChangeEvent): def __init__(self, formats_map): ChangeEvent.__init__(self) self.formats_map = formats_map @property def book_ids(self): return frozenset(self.formats_map) class MetadataChanged(ChangeEvent): def __init__(self, book_ids): ChangeEvent.__init__(self) self.book_ids = frozenset(book_ids) class SavedSearchesChanged(ChangeEvent): def __init__(self, added=(), removed=()): ChangeEvent.__init__(self) self.added = frozenset(added) self.removed = frozenset(removed) def __repr__(self): return '{}(added={}, removed={})'.format( self.__class__.__name__, sorted(map(str, self.added)), sorted(map(str, self.removed)) ) books_added = BooksAdded formats_added = FormatsAdded formats_removed = FormatsRemoved books_deleted = BooksDeleted metadata = MetadataChanged saved_searches = SavedSearchesChanged