swagger-codegen icon indicating copy to clipboard operation
swagger-codegen copied to clipboard

v3.0.0: CodegenParameter examples have values like “param_name_example” instead of actual value

Open inferrna opened this issue 2 years ago • 0 comments

This is only actual for examples of API parameters provided in the yaml file. Examples for models properties are working fine. For example, this code

  @Override
  public void postProcessParameter(CodegenParameter parameter) {
    super.postProcessParameter(parameter);
    if(parameter.example != null) System.out.printf("Example for %s is %s\n", parameter.paramName, parameter.example);
  }

will output

Example for portfolio is portfolio_example
Example for ticker is ticker_example
Example for query is query_example

inferrna avatar Jun 18 '23 13:06 inferrna

Needed same example variable and I overrode the fromParameter function in DefaultCodegenConfig.class and replaced:

else if (getBooleanValue(codegenParameter, CodegenConstants.IS_STRING_EXT_NAME)) {
            codegenParameter.example = codegenParameter.paramName + "_example";

with:

    else if (
      getBooleanValue(codegenParameter, CodegenConstants.IS_STRING_EXT_NAME)
    ) {
      codegenParameter.example =
        parameter.getExample() != null
          ? parameter.getExample().toString()
          : null;

Maybe not best solution but it works.

jarnoweemen avatar Oct 20 '23 11:10 jarnoweemen