'Fill in all metadata fields from a MongoDB document.
The asset_id prop is initialized upon construction only.'

@contract(asset_doc='dict|None')
def from_storable(self, asset_doc):

    if (asset_doc is None):
        return
    self.pathname = asset_doc['pathname']
    self.internal_name = asset_doc['internal_name']
    self.locked = asset_doc['locked']
    self.contenttype = asset_doc['contenttype']
    self.thumbnail = asset_doc['thumbnail']
    self.fields = asset_doc['fields']
    self.curr_version = asset_doc['edit_info']['curr_version']
    self.prev_version = asset_doc['edit_info']['prev_version']
    self.created_by = asset_doc['edit_info']['created_by']
    self.created_by_email = asset_doc['edit_info']['created_by_email']
    self.created_on = asset_doc['edit_info']['created_on']
    self.edited_by = asset_doc['edit_info']['edited_by']
    self.edited_by_email = asset_doc['edit_info']['edited_by_email']
    self.edited_on = asset_doc['edit_info']['edited_on']
