'Find a show by its indexer id in the provided list of shows
:param shows: The list of shows to search in
:param indexer_id: The indexer id of the desired show
:return: The desired show if found, ``None`` if not found
:throw: ``MultipleShowObjectsException`` if multiple shows match the provided ``indexer_id``'

@staticmethod
def find(shows, indexer_id):

    if ((indexer_id is None) or (shows is None) or (len(shows) == 0)):
        return None
    indexer_ids = ([indexer_id] if (not isinstance(indexer_id, list)) else indexer_id)
    results = [show for show in shows if (show.indexerid in indexer_ids)]
    if (not results):
        return None
    if (len(results) == 1):
        return results[0]
    raise MultipleShowObjectsException()
