@Override public boolean onFlushDirty( Object entity, Serializable id, Object[] currentState, Object[] previousState, String[] propertyNames, Type[] types) { try { logger.info("onFlushDirty: Detected dirty object " + entity + " with id " + id); final int length = currentState.length; logger.info("onFlushDirty: Object Details are as below: "); for (int i = 0; i < length; i++) { logger.info( "onFlushDirty: propertyName : " + propertyNames[i] + " ,type : " + types[i] + " , previous state : " + previousState[i] + " , current state : " + currentState[i]); } return tryToCastToCurrentObject(entity, cl, InterceptorOperations.UPDATE); } catch (CallbackException e) { logger.error(e.getMessage(), e); } return false; // as no change made to object here }