'Reads the metadata values from a file object.'

def read_pkg_file(self, file):

    msg = message_from_file(file)
    def _read_field(name):
        value = msg[name]
        if (value == 'UNKNOWN'):
            return None
        return value
    def _read_list(name):
        values = msg.get_all(name, None)
        if (values == []):
            return None
        return values
    metadata_version = msg['metadata-version']
    self.name = _read_field('name')
    self.version = _read_field('version')
    self.description = _read_field('summary')
    self.author = _read_field('author')
    self.maintainer = None
    self.author_email = _read_field('author-email')
    self.maintainer_email = None
    self.url = _read_field('home-page')
    self.license = _read_field('license')
    if ('download-url' in msg):
        self.download_url = _read_field('download-url')
    else:
        self.download_url = None
    self.long_description = _read_field('description')
    self.description = _read_field('summary')
    if ('keywords' in msg):
        self.keywords = _read_field('keywords').split(',')
    self.platforms = _read_list('platform')
    self.classifiers = _read_list('classifier')
    if (metadata_version == '1.1'):
        self.requires = _read_list('requires')
        self.provides = _read_list('provides')
        self.obsoletes = _read_list('obsoletes')
    else:
        self.requires = None
        self.provides = None
        self.obsoletes = None
