code: public static <T> void isNotSame( final T argument,
                                        String argumentName,
                                        final T object,
                                        String objectName ) {
          if (argument == object) {
              if (objectName == null) objectName = getObjectName(object);
              throw new IllegalArgumentException(CommonI18n.argumentMustNotBeSameAs.text(argumentName, objectName));
          }
      }
docs: Asserts that the specified first object is not the same as (==) the specified second object.
  
  @param <T>
  @param argument The argument to assert as not the same as <code>object</code>.
  @param argumentName The name that will be used within the exception message for the argument should an exception be thrown
  @param object The object to assert as not the same as <code>argument</code>.
  @param objectName The name that will be used within the exception message for <code>object</code> should an exception be
  thrown; if <code>null</code> and <code>object</code> is not <code>null</code>, <code>object.toString()</code> will
  be used.
  @throws IllegalArgumentException If the specified objects are the same.