code: public boolean hasValueChanged(Object oldValue, Object newValue) {
          return !(oldValue == newValue || (oldValue != null && oldValue.equals( newValue )));
      }
docs: Determines if there has been a change in value between the provided arguments. The
  objects are compared using the <code>equals</code> method.
  
  @param oldValue Original object value
  @param newValue New object value
  @return true if the objects are different enough to indicate a change in the value
  model