code: def set(self, image_file, source=None):
          
          image_file.set_size()  # make sure its got a size
          self._set(image_file.key, image_file)
          if source is not None:
              if not self.get(source):
                  # make sure the source is in kvstore
                  raise ThumbnailError('Cannot add thumbnails for source: `%s` '
                                       'that is not in kvstore.' % source.name)
  
              # Update the list of thumbnails for source.
              thumbnails = self._get(source.key, identity='thumbnails') or []
              thumbnails = set(thumbnails)
              thumbnails.add(image_file.key)
  
              self._set(source.key, list(thumbnails), identity='thumbnails')
docs: Updates store for the `image_file`. Makes sure the `image_file` has a
          size set.