Package ubic.gemma.rest.swagger.resolver
Class CustomModelResolver
java.lang.Object
io.swagger.v3.core.jackson.AbstractModelConverter
io.swagger.v3.core.jackson.ModelResolver
ubic.gemma.rest.swagger.resolver.CustomModelResolver
- All Implemented Interfaces:
io.swagger.v3.core.converter.ModelConverter
@Component
@ParametersAreNonnullByDefault
public class CustomModelResolver
extends io.swagger.v3.core.jackson.ModelResolver
Resolve
Arg parameters' schema.
This should always be added last with ModelConverters.addConverter(ModelConverter) to take priority as it
addresses a glitch in the original ModelResolver.
- Author:
- poirigui
-
Field Summary
Fields inherited from class io.swagger.v3.core.jackson.ModelResolver
composedModelPropertiesAsSibling, configuration, enumsAsRef, NOT_NULL_ANNOTATIONS, SET_PROPERTY_OF_COMPOSED_MODEL_AS_SIBLING, SET_PROPERTY_OF_ENUMS_AS_REF, validatorProcessorFields inherited from class io.swagger.v3.core.jackson.AbstractModelConverter
_mapper, _resolvedTypeNames, _typeNameResolver -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionio.swagger.v3.oas.models.media.Schema<?> resolve(io.swagger.v3.core.converter.AnnotatedType type, io.swagger.v3.core.converter.ModelConverterContext context, Iterator<io.swagger.v3.core.converter.ModelConverter> chain) resolveAllowableValues(com.fasterxml.jackson.databind.introspect.Annotated a, Annotation[] annotations, io.swagger.v3.oas.annotations.media.Schema schema) Resolves allowed values for theSearchWebService.search(QueryArg, TaxonArg, PlatformArg, List, LimitArg, ExcludeArg)resultTypes argument.protected StringresolveDescription(com.fasterxml.jackson.databind.introspect.Annotated a, Annotation[] annotations, io.swagger.v3.oas.annotations.media.Schema schema) resolveExtensions(com.fasterxml.jackson.databind.introspect.Annotated a, Annotation[] annotations, io.swagger.v3.oas.annotations.media.Schema schema) Methods inherited from class io.swagger.v3.core.jackson.ModelResolver
_addEnumProps, _createSchemaForEnum, _isOptionalType, addRequiredItem, applyBeanValidatorAnnotations, applyBeanValidatorAnnotations, applyBeanValidatorAnnotationsNoGroups, applySchemaResolution, buildRefSchemaIfObject, checkGroupValidation, configuration, decorateModelName, findJsonValueType, getComposedSchemaReferencedClasses, getConfiguration, getSchemaResolution, hasHiddenAnnotation, hiddenByJsonView, ignore, ignore, isArraySchema, isInferredObjectSchema, isNumberSchema, isObjectSchema, isOpenapi31, isStringSchema, objectMapper, openapi31, resolve$anchor, resolve$comment, resolve$dynamicAnchor, resolve$dynamicRef, resolve$schema, resolve$vocabulary, resolveAccessMode, resolveConst, resolveContains, resolveContentEncoding, resolveContentMediaType, resolveDefaultValue, resolveDependentRequired, resolveDependentSchemas, resolveDependentSchemas, resolveDeprecated, resolveDiscriminator, resolveDiscriminatorProperty, resolveExample, resolveExclusiveMaximum, resolveExclusiveMaximumValue, resolveExclusiveMinimum, resolveExclusiveMinimumValue, resolveExtensions, resolveExternalDocumentation, resolveExternalDocumentation, resolveFormat, resolveGroupsValidationStrategy, resolveId, resolveIgnoredProperties, resolveIgnoredProperties, resolveMaxContains, resolveMaximum, resolveMaxItems, resolveMaxLength, resolveMaxProperties, resolveMinContains, resolveMinimum, resolveMinItems, resolveMinLength, resolveMinProperties, resolveMultipleOf, resolveNullable, resolvePattern, resolvePatternProperties, resolvePatternProperties, resolveProperties, resolveReadOnly, resolveRequiredMode, resolveRequiredProperties, resolveSchemaMembers, resolveSchemaMembers, resolveSchemaMembers, resolveSchemaProperties, resolveTitle, resolveUnevaluatedItems, resolveUniqueItems, resolveValidationInvocationAnnotations, resolveValidationInvocationGroups, resolveWrapping, resolveWriteOnly, resolveXml, schemaResolution, setConfiguration, setOpenapi31, setSchemaResolution, shouldIgnoreClass, updateRequiredItemMethods inherited from class io.swagger.v3.core.jackson.AbstractModelConverter
_findTypeName, _intr, _isSetType, _subTypeName, _typeName, _typeName, _typeQName
-
Constructor Details
-
CustomModelResolver
public CustomModelResolver()
-
-
Method Details
-
resolve
public io.swagger.v3.oas.models.media.Schema<?> resolve(io.swagger.v3.core.converter.AnnotatedType type, io.swagger.v3.core.converter.ModelConverterContext context, Iterator<io.swagger.v3.core.converter.ModelConverter> chain) - Specified by:
resolvein interfaceio.swagger.v3.core.converter.ModelConverter- Overrides:
resolvein classio.swagger.v3.core.jackson.ModelResolver
-
resolveAllowableValues
protected List<String> resolveAllowableValues(com.fasterxml.jackson.databind.introspect.Annotated a, Annotation[] annotations, @Nullable io.swagger.v3.oas.annotations.media.Schema schema) Resolves allowed values for theSearchWebService.search(QueryArg, TaxonArg, PlatformArg, List, LimitArg, ExcludeArg)resultTypes argument.This ensures that the OpenAPI specification exposes all supported search result types in the
SearchServiceas allowable values.- Overrides:
resolveAllowableValuesin classio.swagger.v3.core.jackson.ModelResolver
-
resolveDescription
protected String resolveDescription(@Nullable com.fasterxml.jackson.databind.introspect.Annotated a, Annotation[] annotations, @Nullable io.swagger.v3.oas.annotations.media.Schema schema) - Overrides:
resolveDescriptionin classio.swagger.v3.core.jackson.ModelResolver
-
resolveExtensions
protected Map<String,Object> resolveExtensions(@Nullable com.fasterxml.jackson.databind.introspect.Annotated a, Annotation[] annotations, @Nullable io.swagger.v3.oas.annotations.media.Schema schema) - Overrides:
resolveExtensionsin classio.swagger.v3.core.jackson.ModelResolver
-