def convert_event_type_case(event, case_force_upper=False):
    """ Forces upper of lower case for event types at the end of the code engine.  For Snowfalke force UPPER and for Redshift force lower.

    :param event: A dict with the entire event
    :param case_force_upper: True to for upper case.
    :return: An event with the case altered in event_type

    Examples:

    .. code-block:: python

        # Example #1
        event = {'_metadata': {'event_type': 'My_SCHEMA.my_table'}}
        event = convert_event_type_case(event)
        event = {'_metadata': {'event_type': 'my_schema.my_table'}}

        # Example #2
        event = {'_metadata': {'event_type': 'My_SCHEMA.my_table'}}
        event = convert_event_type_case(event, case_force_upper=True)
        event = {'_metadata': {'event_type': 'MY_SCHEMA.MY_TABLE'}}

    """

    if case_force_upper:
        if type(event) == list:
            for each_event in event:
                if 'event_type' in each_event['_metadata']:
                    each_event['_metadata']['event_type'] = each_event['_metadata']['event_type'].upper()
        else:
            if 'event_type' in event['_metadata']:
                event['_metadata']['event_type'] = event['_metadata']['event_type'].upper()
    else:
        if type(event) == list:
            for each_event in event:
                if 'event_type' in each_event['_metadata']:
                    each_event['_metadata']['event_type'] = each_event['_metadata']['event_type'].lower()
        else:
            if 'event_type' in event['_metadata']:
                event['_metadata']['event_type'] = event['_metadata']['event_type'].lower()

    return event