Skip to content

filter class not loaded #3144

@vikrantk365

Description

@vikrantk365

I'm using swagger gradle plugin to generate openapi spec from jax rs.
As part of it, I have extended the ResolveTask

    @TaskAction
    def generateDoc() {
        def modelConverter = ["my.EntityConverter"] as LinkedHashSet
        setModelConverterClasses(modelConverter)
        setFilterClass("my.ApiOperationFilter")
        println "Model converter classes ${getModelConverterClasses()}, ${getModelConverterClasses()?.size()}"
        println "Filter class ${getFilterClass()}"
        super.resolve()
    }

Everything works except filter class doesn't get invoked.
When I use this in a gradle task, I can see that filter class is getting added to the Resolve Task
but anything I print in the filter class simply doesn't get invoked.
Any idea what might be wrong.

Here is filter class

public class ApiOperationFilter extends AbstractSpecFilter {
  private static Logger LOGGER = LoggerFactory.getLogger(ApiOperationFilter.class);

  @Override
  public Optional<OpenAPI> filterOpenAPI(
      OpenAPI openAPI,
      Map<String, List<String>> params,
      Map<String, String> cookies,
      Map<String, List<String>> headers) {
    LOGGER.info("Adding common schemas");
    System.out.println(">>Adding common schemas");
    //  some processing
    return super.filterOpenAPI(openAPI, params, cookies, headers);
  }

  @Override
  public Optional<io.swagger.v3.oas.models.Operation> filterOperation(
      Operation operation,
      ApiDescription api,
      Map<String, List<String>> params,
      Map<String, String> cookies,
      Map<String, List<String>> headers) {
    LOGGER.info("Adding common responses");
    System.out.println(">>Adding common responses");
   // some processing
    return Optional.of(operation);
  }

}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions