'Internal; deletes a single asset\'s metadata.
Arguments:
asset_key (AssetKey): key containing original asset filename
Returns:
Number of asset metadata entries deleted (0 or 1)'

@contract(asset_key='AssetKey', user_id='int|long')
def delete_asset_metadata(self, asset_key, user_id):

    (course_assets, asset_idx) = self._find_course_asset(asset_key)
    if (asset_idx is None):
        return 0
    all_asset_info = course_assets[asset_key.asset_type]
    all_asset_info.pop(asset_idx)
    self.asset_collection.update({'_id': course_assets.doc_id}, {'$set': {self._make_mongo_asset_key(asset_key.asset_type): all_asset_info}})
    return 1
