code: public static <T> T notNullNotEquals (final T aValue, final String sName, @Nonnull final T aUnexpectedValue)
    {
      if (isEnabled ())
        return notNullNotEquals (aValue, () -> sName, aUnexpectedValue);
      return aValue;
    }
docs: Check that the passed value is not <code>null</code> and not equal to the
  provided value.
  
  @param <T>
  Type to be checked and returned
  @param aValue
  The value to check. May not be <code>null</code>.
  @param sName
  The name of the value (e.g. the parameter name)
  @param aUnexpectedValue
  The value that may not be equal to aValue. May not be
  <code>null</code>.
  @return The passed value.