Package

com.avsystem.commons.rest.openapi

adjusters

Permalink

package adjusters

Visibility
  1. Public
  2. All

Type Members

  1. sealed trait Adjuster extends Annotation with StaticAnnotation

    Permalink
  2. trait OperationAdjuster extends Annotation with Adjuster

    Permalink

    Base trait for annotations which may adjust Operation generated for REST HTTP methods.

    Base trait for annotations which may adjust Operation generated for REST HTTP methods. Operation adjusters may also be specified on prefix methods - they will be applied to all operations generated for the result of this prefix method.

  3. trait ParameterAdjuster extends Annotation with Adjuster

    Permalink

    Base trait for annotation which may adjust Parameter generated for path, query or header parameters of REST RPC methods.

  4. trait ParameterSchemaAdjuster extends Annotation with ParameterAdjuster

    Permalink

    A SchemaAdjuster which can also be applied on a (non-body) parameter to affect its schema.

  5. trait PathItemAdjuster extends Annotation with Adjuster

    Permalink

    Base trait for annotations which may adjust PathItem generated for REST HTTP methods.

    Base trait for annotations which may adjust PathItem generated for REST HTTP methods. Path item adjusters may also be specified on prefix methods - they will be applied to all path items generated for the result this prefix method.

  6. trait RequestBodyAdjuster extends Annotation with OperationAdjuster

    Permalink

    Convenience implementation of OperationAdjuster for adjusting RequestBody of an operation.

    Convenience implementation of OperationAdjuster for adjusting RequestBody of an operation. Request body adjuster is only be applied if Operation has RequestBody defined and it's not a reference.

  7. trait SchemaAdjuster extends Annotation with Adjuster with NotInheritedFromSealedTypes

    Permalink

    Base trait for annotations which may adjust Schema derived for various symbols in REST API traits.

    Base trait for annotations which may adjust Schema derived for various symbols in REST API traits. Schema adjusters may be applied on:

    - Types for which RestStructure is macro materialized and RestSchema derived from it. This includes all types with companion extending RestDataCompanion.

    - Fields of case classes for which RestStructure is macro materialized.

    - Body parameters of REST methods (parameters tagged with BodyField or Body annotations)

    Schema adjusters DO NOT WORK on REST methods themselves and their path/header/query parameters. Instead, use OperationAdjuster and ParameterAdjuster.

    Also, be aware that schema adjusters may also be applied on schema references. In such cases, the schema reference is wrapped into a Schema object with allOf property containing the original reference. This effectively allows you to extend the referenced schema but you cannot inspect it in the process.

  8. trait SuccessfulResponseAdjuster extends Annotation with OperationAdjuster

    Permalink

    Convenience implementation of OperationAdjuster for adjusting Response associated with 200 OK status code (this may be changed by overriding statusCode method).

    Convenience implementation of OperationAdjuster for adjusting Response associated with 200 OK status code (this may be changed by overriding statusCode method). Default response adjuster is only applied if Responses contains a Response defined for 200 OK and it's not a reference.

  9. class adjustOperation extends Annotation with OperationAdjuster

    Permalink

    Convenience implementation of OperationAdjuster

  10. class adjustParameter extends Annotation with ParameterAdjuster

    Permalink

    Convenience implementation of ParameterAdjuster

  11. class adjustPathItem extends Annotation with PathItemAdjuster

    Permalink

    Convenience implementation of PathItemAdjuster

  12. class adjustSchema extends Annotation with SchemaAdjuster

    Permalink

    Convenience implementation of SchemaAdjuster

  13. class bodyDescription extends Annotation with RequestBodyAdjuster

    Permalink

    Annotation which may be applied on HTTP REST method to specify description for that method's RequestBody.

  14. class description extends Annotation with SchemaAdjuster with ParameterAdjuster with OperationAdjuster

    Permalink

    Annotation that specifies description that will be included into generated OpenAPI specification.

    Annotation that specifies description that will be included into generated OpenAPI specification. It can be applied on REST methods (OperationAdjuster), path/header/query parameters (ParameterAdjuster), body parameters (SchemaAdjuster), case class fields (SchemaAdjuster) and ADTs for which RestStructure is macro generated (SchemaAdjuster).

  15. class example[+T] extends Annotation with SchemaAdjuster with ParameterAdjuster

    Permalink

    Adds example to Schema or Parameter object

  16. class nullable extends Annotation with SchemaAdjuster with ParameterSchemaAdjuster

    Permalink

    Can be applied on REST method parameters, case class parameters and REST types themselves to include "nullable": true property into their OpenAPI Schema.

  17. class operationId extends Annotation with OperationAdjuster

    Permalink

    Allows setting custom operationId for Operation objects generated for REST HTTP methods.

    Allows setting custom operationId for Operation objects generated for REST HTTP methods.

    By default, operationId is set to method's rpcName which in turn defaults to method's regular name. If method is overloaded, method name may be prepended with lowercased HTTP method followed by underscore (e.g. "post_")

  18. class operationIdPrefix extends Annotation with StaticAnnotation

    Permalink

    Prefix methods may be annotated with this annotation to specify prefix that will be prepended to operationId of all Operation objects generated for result of that prefix method.

    Prefix methods may be annotated with this annotation to specify prefix that will be prepended to operationId of all Operation objects generated for result of that prefix method. By default, this prefix is prefix method's name with underscore, so this annotation may be used in particular to set empty prefix.

  19. class pathDescription extends Annotation with PathItemAdjuster

    Permalink

    Annotation which may be applied on HTTP REST method to specify description for PathItem associated with that method's path.

  20. class pathSummary extends Annotation with PathItemAdjuster

    Permalink

    Annotation which may be applied on HTTP REST method to specify summary for PathItem associated with that method's path.

  21. class responseDescription extends Annotation with SuccessfulResponseAdjuster

    Permalink

    Annotation which may be applied on HTTP REST method to specify description for that method's Response associated with 200 OK status code.

  22. class schemaDescription extends Annotation with SchemaAdjuster with ParameterSchemaAdjuster

    Permalink

    Like description but changes Schema description instead of Parameter description when applied on a (non-body) parameter.

    Like description but changes Schema description instead of Parameter description when applied on a (non-body) parameter. It has no effect when applied on a method.

  23. class summary extends Annotation with OperationAdjuster

    Permalink

    Annotation which may be applied on HTTP REST method to specify summary for Operation generated for that method.

  24. class tags extends Annotation with OperationAdjuster

    Permalink

    Adds OpenAPI operation tags to an Operation object.

  25. class title extends Annotation with SchemaAdjuster with ParameterSchemaAdjuster

    Permalink

    Sets the title of a Schema.

    Sets the title of a Schema. It can be applied on standard SchemaAdjuster targets and also all parameters of REST methods (not just body parameters).

Value Members

  1. object SchemaAdjuster

    Permalink

Ungrouped