Package org.apache.tapestry5.internal.services.rest

## Class DefaultOpenApiDescriptionGenerator

- java.lang.Object
- - org.apache.tapestry5.internal.services.rest.DefaultOpenApiDescriptionGenerator

- All Implemented Interfaces:
    `OpenApiDescriptionGenerator`

      public class DefaultOpenApiDescriptionGenerator
      extends java.lang.Object
      implements OpenApiDescriptionGenerator

  OpenApiDescriptionGenerator that generates lots, if not most, of the application's OpenAPI 3.0 documentation.
  Since:
    5.8.0

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DefaultOpenApiDescriptionGenerator​(OpenApiTypeDescriber typeDescriber, MappedEntityManager mappedEntityManager, BaseURLSource baseUrlSource, SymbolSource symbolSource, ComponentMessagesSource componentMessagesSource, ThreadLocale threadLocale, PageSource pageSource, ComponentClassResolver componentClassResolver, PageRenderLinkSource pageRenderLinkSource, Request request)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.reflect.Method` | `findMethod​(java.lang.Class<?> pageClass, java.lang.String name, java.util.List<java.lang.Class> parameterTypes)` |
    `JSONObject` | `generate​(JSONObject documentation)` | Generates or customizes the OpenAPI 3.0 documentation for this webapp's REST endpoints.
    `java.util.Optional<java.lang.String>` | `getValue​(java.lang.reflect.Method method, java.lang.String suffix, boolean skipClassNameLookup)` |
    `java.util.Optional<java.lang.String>` | `getValue​(java.lang.reflect.Method method, java.lang.String path, java.lang.String httpMethod, int statusCode)` |
    `java.util.Optional<java.lang.String>` | `getValue​(java.lang.reflect.Method method, java.lang.String path, java.lang.String httpMethod, java.lang.reflect.Parameter parameter, java.lang.String property)` |
    `java.util.Optional<java.lang.String>` | `getValue​(java.lang.reflect.Method method, java.lang.String path, java.lang.String httpMethod, java.lang.String middle, java.lang.String propertyName)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### DefaultOpenApiDescriptionGenerator

          public DefaultOpenApiDescriptionGenerator​(OpenApiTypeDescriber typeDescriber,
                                                    MappedEntityManager mappedEntityManager,
                                                    BaseURLSource baseUrlSource,
                                                    SymbolSource symbolSource,
                                                    ComponentMessagesSource componentMessagesSource,
                                                    ThreadLocale threadLocale,
                                                    PageSource pageSource,
                                                    ComponentClassResolver componentClassResolver,
                                                    PageRenderLinkSource pageRenderLinkSource,
                                                    Request request)

  - ### Method Detail

    - #### generate

          public JSONObject generate​(JSONObject documentation)

      Description copied from interface: `OpenApiDescriptionGenerator`
      Generates or customizes the OpenAPI 3.0 documentation for this webapp's REST endpoints.
      Specified by:
        `generate` in interface `OpenApiDescriptionGenerator`
      Parameters:
        `documentation` - a `JSONObject` object.
      Returns:
        the generated or customized OpenAPI 3.0 documentation as a JSON object.

    - #### getValue

          public java.util.Optional<java.lang.String> getValue​(java.lang.reflect.Method method,
                                                               java.lang.String path,
                                                               java.lang.String httpMethod,
                                                               java.lang.reflect.Parameter parameter,
                                                               java.lang.String property)

    - #### getValue

          public java.util.Optional<java.lang.String> getValue​(java.lang.reflect.Method method,
                                                               java.lang.String path,
                                                               java.lang.String httpMethod,
                                                               int statusCode)

    - #### getValue

          public java.util.Optional<java.lang.String> getValue​(java.lang.reflect.Method method,
                                                               java.lang.String path,
                                                               java.lang.String httpMethod,
                                                               java.lang.String middle,
                                                               java.lang.String propertyName)

    - #### getValue

          public java.util.Optional<java.lang.String> getValue​(java.lang.reflect.Method method,
                                                               java.lang.String suffix,
                                                               boolean skipClassNameLookup)

    - #### findMethod

          public java.lang.reflect.Method findMethod​(java.lang.Class<?> pageClass,
                                                     java.lang.String name,
                                                     java.util.List<java.lang.Class> parameterTypes)
                                              throws java.lang.NoSuchMethodException

      Throws:
        `java.lang.NoSuchMethodException`