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, typesBeingResolved, 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, DatasetArg, 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, DatasetArg, 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
-