public static <S extends HasValueChangeHandlers<UTCDate> & HasHandlers> void fireIfNotEqualDates(
            S source, UTCDate oldValue, UTCDate newValue) {
        if (ValueChangeEvent.shouldFire(source, oldValue, newValue)) {
            source.fireEvent(new DateChangeEvent(newValue));
        }
    }
Fires value change event if the old value is not equal to the new value.
Use this call rather than making the decision to short circuit yourself for
safe handling of null.

@param <S>      The event source
@param source   the source of the handlers
@param oldValue the oldValue, may be null
@param newValue the newValue, may be null
stroom-core-client-widget/src/main/java/stroom/widget/datepicker/client/DateChangeEvent.java