:return: a list of sorted trumba.Permission objects
             corresponding to the given campus calendar.
             None if error, [] if not exists
    raise DataFailureException if the request failed.

def get_campus_permissions(calendar_id, campus_code):
    """
    :return: a list of sorted trumba.Permission objects
             corresponding to the given campus calendar.
             None if error, [] if not exists
    raise DataFailureException if the request failed.
    """
    if is_bot(campus_code):
        return get_bot_permissions(calendar_id)
    elif is_sea(campus_code):
        return get_sea_permissions(calendar_id)
    elif is_tac(campus_code):
        return get_tac_permissions(calendar_id)
    else:
        logger.warn(
            "Calling get_campus_permissions with invalid campus code: %s"
            % campus_code)
        return None