home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2010 November / maximum-cd-2010-11.iso / DiscContents / calibre-0.7.13.msi / file_948 (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2010-08-06  |  4.2 KB  |  117 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4. __license__ = 'GPL v3'
  5. __copyright__ = '2010, Kovid Goyal <kovid@kovidgoyal.net>'
  6. __docformat__ = 'restructuredtext en'
  7. import copy
  8. from calibre.ebooks.metadata.book import RESERVED_METADATA_FIELDS
  9. NULL_VALUES = {
  10.     'user_metadata': { },
  11.     'cover_data': (None, None),
  12.     'tags': [],
  13.     'classifiers': { },
  14.     'languages': [],
  15.     'device_collections': [],
  16.     'author_sort_map': { },
  17.     'authors': [
  18.         _('Unknown')],
  19.     'title': _('Unknown') }
  20.  
  21. class Metadata(object):
  22.     
  23.     def __init__(self):
  24.         object.__setattr__(self, '_data', copy.deepcopy(NULL_VALUES))
  25.  
  26.     
  27.     def __getattribute__(self, field):
  28.         _data = object.__getattribute__(self, '_data')
  29.         if field in RESERVED_METADATA_FIELDS:
  30.             return _data.get(field, None)
  31.         
  32.         try:
  33.             return object.__getattribute__(self, field)
  34.         except AttributeError:
  35.             field in RESERVED_METADATA_FIELDS
  36.             field in RESERVED_METADATA_FIELDS
  37.         except:
  38.             field in RESERVED_METADATA_FIELDS
  39.  
  40.         if field in _data['user_metadata'].iterkeys():
  41.             pass
  42.         
  43.         raise AttributeError('Metadata object has no attribute named: ' + repr(field))
  44.  
  45.     
  46.     def __setattr__(self, field, val):
  47.         _data = object.__getattribute__(self, '_data')
  48.         if field in RESERVED_METADATA_FIELDS:
  49.             if field != 'user_metadata':
  50.                 if not val:
  51.                     val = NULL_VALUES[field]
  52.                 
  53.                 _data[field] = val
  54.             else:
  55.                 raise AttributeError('You cannot set user_metadata directly.')
  56.         field != 'user_metadata'
  57.         if field in _data['user_metadata'].iterkeys():
  58.             pass
  59.         else:
  60.             self.__dict__[field] = val
  61.  
  62.     
  63.     def user_metadata_names(self):
  64.         _data = object.__getattribute__(self, '_data')
  65.         return frozenset(_data['user_metadata'].iterkeys())
  66.  
  67.     user_metadata_names = property(user_metadata_names)
  68.     
  69.     def copy(self):
  70.         pass
  71.  
  72.     
  73.     def print_all_attributes(self):
  74.         pass
  75.  
  76.     
  77.     def smart_update(self, other, replace_metadata = False):
  78.         pass
  79.  
  80.     
  81.     def format_series_index(self):
  82.         pass
  83.  
  84.     
  85.     def authors_from_string(self, raw):
  86.         pass
  87.  
  88.     
  89.     def format_authors(self):
  90.         pass
  91.  
  92.     
  93.     def format_tags(self):
  94.         pass
  95.  
  96.     
  97.     def format_rating(self):
  98.         return unicode(self.rating)
  99.  
  100.     
  101.     def __unicode__(self):
  102.         pass
  103.  
  104.     
  105.     def to_html(self):
  106.         pass
  107.  
  108.     
  109.     def __str__(self):
  110.         return self.__unicode__().encode('utf-8')
  111.  
  112.     
  113.     def __nonzero__(self):
  114.         return True
  115.  
  116.  
  117.