code: private void generateMethodNewInstance(JClassType inputType, SourceWriter sourceWriter, PojoDescriptor<?> pojoDescriptor) {
  
      generateSourcePublicMethodDeclaration(sourceWriter, inputType.getQualifiedSourceName(), "newInstance", "", false);
  
      if (inputType.isInterface() != null) {
        sourceWriter.print("throw new ");
        sourceWriter.println(InstantiationFailedException.class.getName());
        sourceWriter.println("(getPojoClass());");
      } else {
        sourceWriter.print("return new ");
        sourceWriter.print(inputType.getQualifiedSourceName());
        sourceWriter.println("();");
      }
  
      generateSourceCloseBlock(sourceWriter);
    }
docs: Generates the method {@link AbstractPojoDescriptorImpl#newInstance()}.
  
  @param inputType is the {@link JClassType} reflecting the input-type that triggered the generation via
  {@link com.google.gwt.core.client.GWT#create(Class)}.
  @param sourceWriter is the {@link SourceWriter} where to {@link SourceWriter#print(String) write} the
  source code to.
  @param pojoDescriptor is the {@link PojoDescriptor}.