code: public static <O> void checkNotNull(Class<O> type, O object) throws NlsNullPointerException {
  
      if (object == null) {
        throw new NlsNullPointerException(type.getSimpleName());
      }
    }
docs: This method checks if the given {@code object} is {@code null}. <br>
  <b>ATTENTION:</b><br>
  This method is only intended to be used for specific types. It then not only saves you from a single {@code if}
  -statement, but also defines a common pattern that is refactoring-safe. <br>
  Anyhow you should never use this method with generic {@link Class}es for {@code type} such as {@link Object},
  {@link String}, {@link Integer}, etc. <br>
  <br>
  Here is an example:
  
  <pre>
  public void myMethod(MySpecificBusinessObject businessObject, String someParameter) {
  {@link NlsNullPointerException}.checkNotNull(MySpecificBusinessObject.class, businessObject);
  {@link NlsNullPointerException}.checkNotNull("someParameter", someParameter);
  doTheWork();
  }
  </pre>
  
  @param <O> is the generic type of the {@code object}.
  @param type is the class reflecting the {@code object}. Its {@link Class#getSimpleName() simple name} will be used
  in the exception-message if {@code object} is {@code null}.
  @param object is the object that is checked and should NOT be {@code null}.
  @throws NlsNullPointerException if the given {@code object} is {@code null}.