core/src/main/java/io/fabric8/maven/core/util/kubernetes/UserConfigurationCompare.java
public static boolean configEqual(Object entity1, Object entity2) {
        if (entity1 == entity2) {
            return true;
        } else if (entity1 == null || entity2 == null) {
            return false;
        } else if (entity1 instanceof Map) {
            return configEqualMap((Map) entity1, castTo(Map.class, entity2));
        } else if (entity2 instanceof Map) {
            return configEqualMap((Map) entity1, castTo(Map.class, entity2));
        } else if (entity2 instanceof ObjectMeta) {
            return configEqualObjectMeta((ObjectMeta) entity1, castTo(ObjectMeta.class, entity2));
        } else if (entity1 instanceof Collection && entity2 instanceof Collection) {
            return collectionsEqual((Collection) entity1, (Collection) entity2);
        } else {
            Class<?> aClass = getCommonDenominator(entity1.getClass(), entity2.getClass());
            if (aClass != null) {
                Object castEntity2 = castTo(aClass, entity2);
                if (castEntity2 == null) {
                    return false;
                } else if (aClass.getPackage().getName().startsWith("io.fabric8")) {
                    return configEqualKubernetesDTO(entity1, entity2, aClass);
                }
            }
            return java.util.Objects.equals(entity1, entity2);
        }
    }
public static boolean configEqual(Object entity1, Object entity2) {
        if (entity1 == entity2) {
            return true;
        } else if (entity1 == null || entity2 == null) {
            return false;
        } else if (entity1 instanceof Map) {
            return configEqualMap((Map) entity1, castTo(Map.class, entity2));
        } else if (entity2 instanceof Map) {
            return configEqualMap((Map) entity1, castTo(Map.class, entity2));
        } else if (entity2 instanceof ObjectMeta) {
            return configEqualObjectMeta((ObjectMeta) entity1, castTo(ObjectMeta.class, entity2));
        } else if (entity1 instanceof Collection && entity2 instanceof Collection) {
            return collectionsEqual((Collection) entity1, (Collection) entity2);
        } else {
            Class<?> aClass = getCommonDenominator(entity1.getClass(), entity2.getClass());
            if (aClass != null) {
                Object castEntity2 = castTo(aClass, entity2);
                if (castEntity2 == null) {
                    return false;
                } else if (aClass.getPackage().getName().startsWith("io.fabric8")) {
                    return configEqualKubernetesDTO(entity1, entity2, aClass);
                }
            }
            return java.util.Objects.equals(entity1, entity2);
        }
    }
public static boolean configEqual ( Object entity1 , Object entity2 ) { if ( entity1 == entity2 ) { return true ; } else if ( entity1 == null || entity2 == null ) { return false ; } else if ( entity1 instanceof Map ) { return configEqualMap ( ( Map ) entity1 , castTo ( Map . class , entity2 ) ) ; } else if ( entity2 instanceof Map ) { return configEqualMap ( ( Map ) entity1 , castTo ( Map . class , entity2 ) ) ; } else if ( entity2 instanceof ObjectMeta ) { return configEqualObjectMeta ( ( ObjectMeta ) entity1 , castTo ( ObjectMeta . class , entity2 ) ) ; } else if ( entity1 instanceof Collection && entity2 instanceof Collection ) { return collectionsEqual ( ( Collection ) entity1 , ( Collection ) entity2 ) ; } else { Class < ? > aClass = getCommonDenominator ( entity1 . getClass ( ) , entity2 . getClass ( ) ) ; if ( aClass != null ) { Object castEntity2 = castTo ( aClass , entity2 ) ; if ( castEntity2 == null ) { return false ; } else if ( aClass . getPackage ( ) . getName ( ) . startsWith ( "io.fabric8" ) ) { return configEqualKubernetesDTO ( entity1 , entity2 , aClass ) ; } } return java . util . Objects . equals ( entity1 , entity2 ) ; } }
This method detects if the user has changed the configuration of an entity.
<p/>
It compares the <b>user</b> configuration of 2 object trees ignoring any
runtime status or timestamp information.

@return true if the configurations are equal.
This method detects if the user has changed the configuration of an entity . <p / > It compares the <b > user< / b > configuration of 2 object trees ignoring any runtime status or timestamp information .