Search in sources :

Example 31 with Schema

use of org.eclipse.microprofile.openapi.models.media.Schema in project Payara by payara.

the class SchemaImpl method merge.

public static void merge(Schema from, Schema to, boolean override, ApiContext context) {
    if (from == null) {
        return;
    }
    if (from.getRef() != null && !from.getRef().isEmpty()) {
        applyReference(to, from.getRef());
        return;
    }
    if (from.getType() != null) {
        to.setType(mergeProperty(to.getType(), from.getType(), override));
    }
    if (from instanceof SchemaImpl && to instanceof SchemaImpl) {
        final String fromImplementation = ((SchemaImpl) from).getImplementation();
        if (fromImplementation != null) {
            setImplementation((SchemaImpl) to, fromImplementation, override, context);
        }
    }
    to.setDefaultValue(mergeProperty(to.getDefaultValue(), from.getDefaultValue(), override));
    to.setTitle(mergeProperty(to.getTitle(), from.getTitle(), override));
    if (from.getMultipleOf() != null && from.getMultipleOf().compareTo(BigDecimal.ZERO) > 0) {
        to.setMultipleOf(mergeProperty(to.getMultipleOf(), from.getMultipleOf().stripTrailingZeros(), override));
    }
    if (from.getMaximum() != null) {
        to.setMaximum(mergeProperty(to.getMaximum(), from.getMaximum(), override));
    }
    to.setExclusiveMaximum(mergeProperty(to.getExclusiveMaximum(), from.getExclusiveMaximum(), override));
    if (from.getMinimum() != null) {
        to.setMinimum(mergeProperty(to.getMinimum(), from.getMinimum(), override));
    }
    to.setExclusiveMinimum(mergeProperty(to.getExclusiveMinimum(), from.getExclusiveMinimum(), override));
    to.setMaxLength(mergeProperty(to.getMaxLength(), from.getMaxLength(), override));
    to.setMinLength(mergeProperty(to.getMinLength(), from.getMinLength(), override));
    to.setPattern(mergeProperty(to.getPattern(), from.getPattern(), override));
    to.setMaxItems(mergeProperty(to.getMaxItems(), from.getMaxItems(), override));
    to.setMinItems(mergeProperty(to.getMinItems(), from.getMinItems(), override));
    to.setUniqueItems(mergeProperty(to.getUniqueItems(), from.getUniqueItems(), override));
    to.setMaxProperties(mergeProperty(to.getMaxProperties(), from.getMaxProperties(), override));
    to.setMinProperties(mergeProperty(to.getMinProperties(), from.getMinProperties(), override));
    if (from.getRequired() != null && !from.getRequired().isEmpty()) {
        if (to.getRequired() == null) {
            to.setRequired(createList());
        }
        for (String value : from.getRequired()) {
            if (!to.getRequired().contains(value)) {
                to.addRequired(value);
            }
        }
    }
    if (from.getProperties() != null && !from.getProperties().isEmpty()) {
        if (to.getProperties() == null) {
            to.setProperties(createMap());
        }
        final Map<String, Schema> toProperties = to.getProperties();
        for (Entry<String, Schema> fromEntry : from.getProperties().entrySet()) {
            final String name = fromEntry.getKey();
            final Schema fromSchema = fromEntry.getValue();
            if (!toProperties.containsKey(name)) {
                to.addProperty(name, fromSchema);
            } else {
                final Schema toSchema = toProperties.get(name);
                SchemaImpl.merge(fromSchema, toSchema, override, context);
            }
        }
    }
    to.setDescription(mergeProperty(to.getDescription(), from.getDescription(), override));
    to.setFormat(mergeProperty(to.getFormat(), from.getFormat(), override));
    to.setNullable(mergeProperty(to.getNullable(), from.getNullable(), override));
    to.setReadOnly(mergeProperty(to.getReadOnly(), from.getReadOnly(), override));
    to.setWriteOnly(mergeProperty(to.getWriteOnly(), from.getWriteOnly(), override));
    to.setExample(mergeProperty(to.getExample(), from.getExample(), override));
    if (from.getExternalDocs() != null) {
        if (to.getExternalDocs() == null) {
            to.setExternalDocs(new ExternalDocumentationImpl());
        }
        ExternalDocumentationImpl.merge(from.getExternalDocs(), to.getExternalDocs(), override);
    }
    to.setDeprecated(mergeProperty(to.getDeprecated(), from.getDeprecated(), override));
    if (from.getEnumeration() != null && from.getEnumeration().size() > 0) {
        if (to.getEnumeration() == null) {
            to.setEnumeration(createList());
        }
        for (Object value : from.getEnumeration()) {
            if (!to.getEnumeration().contains(value)) {
                to.addEnumeration(value);
            }
        }
    }
    if (from.getDiscriminator() != null) {
        if (to.getDiscriminator() == null) {
            to.setDiscriminator(new DiscriminatorImpl());
        }
        Discriminator discriminator = to.getDiscriminator();
        discriminator.setPropertyName(mergeProperty(discriminator.getPropertyName(), from.getDiscriminator().getPropertyName(), override));
        for (Entry<String, String> mapping : from.getDiscriminator().getMapping().entrySet()) {
            discriminator.addMapping(mapping.getKey(), mapping.getValue());
        }
    }
    if (from.getNot() != null) {
        to.setNot(from.getNot());
    }
    mergeImmutableList(from.getAnyOf(), to.getAnyOf(), to::setAnyOf);
    mergeImmutableList(from.getAllOf(), to.getAllOf(), to::setAllOf);
    mergeImmutableList(from.getOneOf(), to.getOneOf(), to::setOneOf);
}
Also used : ExternalDocumentationImpl(fish.payara.microprofile.openapi.impl.model.ExternalDocumentationImpl) Schema(org.eclipse.microprofile.openapi.models.media.Schema) Discriminator(org.eclipse.microprofile.openapi.models.media.Discriminator)

Example 32 with Schema

use of org.eclipse.microprofile.openapi.models.media.Schema in project drools by kiegroup.

the class FEELSchemaEnum method parseNumberAllowedValuesIntoSchema.

public static void parseNumberAllowedValuesIntoSchema(Schema schema, List<DMNUnaryTest> list) {
    // we leverage the property of the *base* FEEL grammar(non visited by ASTVisitor, only the ParseTree->AST Visitor) that `>x` is a Range
    List<Object> uts = evaluateUnaryTests(list);
    if (uts.size() <= 2 && uts.stream().allMatch(o -> o instanceof Range)) {
        // cast intentional.
        Range range = consolidateRanges((List) uts);
        if (range != null) {
            if (range.getLowEndPoint() != null) {
                schema.minimum((BigDecimal) range.getLowEndPoint());
                schema.exclusiveMinimum(range.getLowBoundary() == RangeBoundary.OPEN);
            }
            if (range.getHighEndPoint() != null) {
                schema.maximum((BigDecimal) range.getHighEndPoint());
                schema.exclusiveMaximum(range.getHighBoundary() == RangeBoundary.OPEN);
            }
        }
    } else if (uts.stream().allMatch(o -> o instanceof Number)) {
        schema.enumeration(uts);
    } else {
        LOG.warn("Unable to parse generic allowed value into the JSON Schema for enumeration");
    }
}
Also used : FEEL(org.kie.dmn.feel.FEEL) BigDecimal(java.math.BigDecimal) List(java.util.List) RangeBoundary(org.kie.dmn.feel.runtime.Range.RangeBoundary) UnaryTestImpl(org.kie.dmn.feel.runtime.UnaryTestImpl) Logger(org.slf4j.Logger) Schema(org.eclipse.microprofile.openapi.models.media.Schema) DMNUnaryTest(org.kie.dmn.api.core.DMNUnaryTest) LoggerFactory(org.slf4j.LoggerFactory) RangeImpl(org.kie.dmn.feel.runtime.impl.RangeImpl) Collectors(java.util.stream.Collectors) Range(org.kie.dmn.feel.runtime.Range) Range(org.kie.dmn.feel.runtime.Range)

Example 33 with Schema

use of org.eclipse.microprofile.openapi.models.media.Schema in project drools by kiegroup.

the class DMNTypeSchemas method schemaFromCompositeType.

private Schema schemaFromCompositeType(CompositeTypeImpl ct) {
    Schema schema = OASFactory.createObject(Schema.class).type(SchemaType.OBJECT);
    if (ct.getBaseType() == null) {
        // main case
        for (Entry<String, DMNType> fkv : ct.getFields().entrySet()) {
            schema.addProperty(fkv.getKey(), refOrBuiltinSchema(fkv.getValue()));
        }
        if (isIOSetForInputScope(ct) && ct.getFields().size() > 0) {
            schema.required(new ArrayList<>(ct.getFields().keySet()));
        }
    } else {
        schema = refOrBuiltinSchema(ct.getBaseType());
    }
    schema = nestAsItemIfCollection(schema, ct);
    schema.addExtension(X_DMN_TYPE, getDMNTypeSchemaXDMNTYPEdescr(ct));
    processIoSetDoc(schema, ct);
    return schema;
}
Also used : Schema(org.eclipse.microprofile.openapi.models.media.Schema) DMNType(org.kie.dmn.api.core.DMNType)

Example 34 with Schema

use of org.eclipse.microprofile.openapi.models.media.Schema in project drools by kiegroup.

the class DMNTypeSchemas method schemaFromSimpleType.

private Schema schemaFromSimpleType(SimpleTypeImpl t) {
    DMNType baseType = t.getBaseType();
    if (baseType == null) {
        throw new IllegalStateException();
    }
    Schema schema = refOrBuiltinSchema(baseType);
    if (t.getAllowedValues() != null && !t.getAllowedValues().isEmpty()) {
        schema.addExtension(DMNOASConstants.X_DMN_ALLOWED_VALUES, t.getAllowedValuesFEEL().stream().map(UnaryTest::toString).collect(Collectors.joining(", ")));
        if (DMNTypeUtils.getFEELBuiltInType(ancestor(t)) == BuiltInType.NUMBER) {
            FEELSchemaEnum.parseNumberAllowedValuesIntoSchema(schema, t.getAllowedValues());
        } else {
            FEELSchemaEnum.parseAllowedValuesIntoSchema(schema, t.getAllowedValues());
        }
    }
    schema = nestAsItemIfCollection(schema, t);
    schema.addExtension(X_DMN_TYPE, getDMNTypeSchemaXDMNTYPEdescr(t));
    processIoSetDoc(schema, t);
    return schema;
}
Also used : Schema(org.eclipse.microprofile.openapi.models.media.Schema) UnaryTest(org.kie.dmn.feel.runtime.UnaryTest) DMNType(org.kie.dmn.api.core.DMNType)

Example 35 with Schema

use of org.eclipse.microprofile.openapi.models.media.Schema in project Payara by payara.

the class ModelInvariantsTest method addKeyValueIgnoresNull.

@Test
public void addKeyValueIgnoresNull() {
    BiPredicate<Extensible<?>, String> hasExtension = (obj, key) -> obj.getExtensions().containsKey(key);
    assertAddIgnoresNull(new CallbackImpl(), Callback::addPathItem, Callback::hasPathItem);
    assertAddIgnoresNull(new CallbackImpl(), Callback::addExtension, hasExtension);
    assertAddIgnoresNull(new ExampleImpl(), Example::addExtension, hasExtension);
    assertAddIgnoresNull(new HeaderImpl(), Header::addExample, (obj, key) -> obj.getExamples().containsKey(key));
    assertAddIgnoresNull(new HeaderImpl(), Header::addExtension, hasExtension);
    assertAddIgnoresNull(new ContactImpl(), Contact::addExtension, hasExtension);
    assertAddIgnoresNull(new InfoImpl(), Info::addExtension, hasExtension);
    assertAddIgnoresNull(new LicenseImpl(), License::addExtension, hasExtension);
    assertAddIgnoresNull(new LinkImpl(), Link::addParameter, (obj, key) -> obj.getParameters().containsKey(key));
    assertAddIgnoresNull(new LinkImpl(), Link::addExtension, hasExtension);
    assertAddIgnoresNull(new ContentImpl(), Content::addMediaType, Content::hasMediaType);
    assertAddIgnoresNull(new DiscriminatorImpl(), Discriminator::addMapping, (obj, key) -> obj.getMapping().containsKey(key));
    assertAddIgnoresNull(new EncodingImpl(), Encoding::addHeader, (obj, key) -> obj.getHeaders().containsKey(key));
    assertAddIgnoresNull(new EncodingImpl(), Encoding::addExtension, hasExtension);
    assertAddIgnoresNull(new MediaTypeImpl(), MediaType::addEncoding, (obj, key) -> obj.getEncoding().containsKey(key));
    assertAddIgnoresNull(new MediaTypeImpl(), MediaType::addExample, (obj, key) -> obj.getExamples().containsKey(key));
    assertAddIgnoresNull(new MediaTypeImpl(), MediaType::addExtension, hasExtension);
    assertAddIgnoresNull(new SchemaImpl(), Schema::addProperty, (obj, key) -> obj.getProperties().containsKey(key));
    assertAddIgnoresNull(new SchemaImpl(), Schema::addExtension, hasExtension);
    assertAddIgnoresNull(new XMLImpl(), XML::addExtension, hasExtension);
    assertAddIgnoresNull(new ParameterImpl(), Parameter::addExample, (obj, key) -> obj.getExamples().containsKey(key));
    assertAddIgnoresNull(new ParameterImpl(), Parameter::addExtension, hasExtension);
    assertAddIgnoresNull(new RequestBodyImpl(), RequestBody::addExtension, hasExtension);
    assertAddIgnoresNull(new APIResponseImpl(), APIResponse::addHeader, (obj, key) -> obj.getHeaders().containsKey(key));
    assertAddIgnoresNull(new APIResponseImpl(), APIResponse::addLink, (obj, key) -> obj.getLinks().containsKey(key));
    assertAddIgnoresNull(new APIResponseImpl(), APIResponse::addExtension, hasExtension);
    assertAddIgnoresNull(new APIResponsesImpl(), APIResponses::addAPIResponse, APIResponses::hasAPIResponse);
    assertAddIgnoresNull(new APIResponsesImpl(), APIResponses::addExtension, hasExtension);
    assertAddIgnoresNull(new OAuthFlowImpl(), OAuthFlow::addExtension, hasExtension);
    assertAddIgnoresNull(new OAuthFlowsImpl(), OAuthFlows::addExtension, hasExtension);
    assertAddIgnoresNull(new SecuritySchemeImpl(), SecurityScheme::addExtension, hasExtension);
    assertAddIgnoresNull(new ServerImpl(), Server::addExtension, hasExtension);
    assertAddIgnoresNull(new ServerVariableImpl(), ServerVariable::addExtension, hasExtension);
    assertAddIgnoresNull(new TagImpl(), Tag::addExtension, hasExtension);
    assertAddIgnoresNull(new ComponentsImpl(), Components::addCallback, (obj, key) -> obj.getCallbacks().containsKey(key));
    assertAddIgnoresNull(new ComponentsImpl(), Components::addExample, (obj, key) -> obj.getExamples().containsKey(key));
    assertAddIgnoresNull(new ComponentsImpl(), Components::addHeader, (obj, key) -> obj.getHeaders().containsKey(key));
    assertAddIgnoresNull(new ComponentsImpl(), Components::addLink, (obj, key) -> obj.getLinks().containsKey(key));
    assertAddIgnoresNull(new ComponentsImpl(), Components::addParameter, (obj, key) -> obj.getParameters().containsKey(key));
    assertAddIgnoresNull(new ComponentsImpl(), Components::addRequestBody, (obj, key) -> obj.getRequestBodies().containsKey(key));
    assertAddIgnoresNull(new ComponentsImpl(), Components::addResponse, (obj, key) -> obj.getResponses().containsKey(key));
    assertAddIgnoresNull(new ComponentsImpl(), Components::addSchema, (obj, key) -> obj.getSchemas().containsKey(key));
    assertAddIgnoresNull(new ComponentsImpl(), Components::addSecurityScheme, (obj, key) -> obj.getSecuritySchemes().containsKey(key));
    assertAddIgnoresNull(new ComponentsImpl(), Components::addExtension, hasExtension);
    assertAddIgnoresNull(new ExternalDocumentationImpl(), ExternalDocumentation::addExtension, hasExtension);
    assertAddIgnoresNull(new OpenAPIImpl(), OpenAPI::addExtension, hasExtension);
    assertAddIgnoresNull(new OperationImpl(), Operation::addCallback, (obj, key) -> obj.getCallbacks().containsKey(key));
    assertAddIgnoresNull(new OperationImpl(), Operation::addExtension, hasExtension);
    assertAddIgnoresNull(new PathItemImpl(), PathItem::addExtension, hasExtension);
    assertAddIgnoresNull(new PathsImpl(), Paths::addPathItem, Paths::hasPathItem);
    assertAddIgnoresNull(new PathsImpl(), Paths::addExtension, hasExtension);
}
Also used : RequestBodyImpl(fish.payara.microprofile.openapi.impl.model.parameters.RequestBodyImpl) Components(org.eclipse.microprofile.openapi.models.Components) Discriminator(org.eclipse.microprofile.openapi.models.media.Discriminator) Info(org.eclipse.microprofile.openapi.models.info.Info) ExampleImpl(fish.payara.microprofile.openapi.impl.model.examples.ExampleImpl) EncodingImpl(fish.payara.microprofile.openapi.impl.model.media.EncodingImpl) HeaderImpl(fish.payara.microprofile.openapi.impl.model.headers.HeaderImpl) License(org.eclipse.microprofile.openapi.models.info.License) PathItem(org.eclipse.microprofile.openapi.models.PathItem) Tag(org.eclipse.microprofile.openapi.models.tags.Tag) OAuthFlowsImpl(fish.payara.microprofile.openapi.impl.model.security.OAuthFlowsImpl) Header(org.eclipse.microprofile.openapi.models.headers.Header) MediaTypeImpl(fish.payara.microprofile.openapi.impl.model.media.MediaTypeImpl) RequestBody(org.eclipse.microprofile.openapi.models.parameters.RequestBody) SecurityScheme(org.eclipse.microprofile.openapi.models.security.SecurityScheme) Contact(org.eclipse.microprofile.openapi.models.info.Contact) OAuthFlows(org.eclipse.microprofile.openapi.models.security.OAuthFlows) OpenAPI(org.eclipse.microprofile.openapi.models.OpenAPI) List(java.util.List) ServerImpl(fish.payara.microprofile.openapi.impl.model.servers.ServerImpl) TagImpl(fish.payara.microprofile.openapi.impl.model.tags.TagImpl) APIResponseImpl(fish.payara.microprofile.openapi.impl.model.responses.APIResponseImpl) ExternalDocumentation(org.eclipse.microprofile.openapi.models.ExternalDocumentation) Assert.assertFalse(org.junit.Assert.assertFalse) SchemaImpl(fish.payara.microprofile.openapi.impl.model.media.SchemaImpl) Server(org.eclipse.microprofile.openapi.models.servers.Server) LicenseImpl(fish.payara.microprofile.openapi.impl.model.info.LicenseImpl) ContentImpl(fish.payara.microprofile.openapi.impl.model.media.ContentImpl) ServerVariableImpl(fish.payara.microprofile.openapi.impl.model.servers.ServerVariableImpl) Example(org.eclipse.microprofile.openapi.models.examples.Example) SecuritySchemeImpl(fish.payara.microprofile.openapi.impl.model.security.SecuritySchemeImpl) SecurityRequirement(org.eclipse.microprofile.openapi.models.security.SecurityRequirement) Paths(org.eclipse.microprofile.openapi.models.Paths) APIResponse(org.eclipse.microprofile.openapi.models.responses.APIResponse) MediaType(org.eclipse.microprofile.openapi.models.media.MediaType) OAuthFlow(org.eclipse.microprofile.openapi.models.security.OAuthFlow) DiscriminatorImpl(fish.payara.microprofile.openapi.impl.model.media.DiscriminatorImpl) Encoding(org.eclipse.microprofile.openapi.models.media.Encoding) ServerVariable(org.eclipse.microprofile.openapi.models.servers.ServerVariable) LinkImpl(fish.payara.microprofile.openapi.impl.model.links.LinkImpl) SecurityRequirementImpl(fish.payara.microprofile.openapi.impl.model.security.SecurityRequirementImpl) Assert.assertSame(org.junit.Assert.assertSame) BiPredicate(java.util.function.BiPredicate) InfoImpl(fish.payara.microprofile.openapi.impl.model.info.InfoImpl) Operation(org.eclipse.microprofile.openapi.models.Operation) Schema(org.eclipse.microprofile.openapi.models.media.Schema) Callback(org.eclipse.microprofile.openapi.models.callbacks.Callback) Assert.assertNotNull(org.junit.Assert.assertNotNull) Content(org.eclipse.microprofile.openapi.models.media.Content) CallbackImpl(fish.payara.microprofile.openapi.impl.model.callbacks.CallbackImpl) APIResponsesImpl(fish.payara.microprofile.openapi.impl.model.responses.APIResponsesImpl) Assert.assertTrue(org.junit.Assert.assertTrue) Test(org.junit.Test) Link(org.eclipse.microprofile.openapi.models.links.Link) Parameter(org.eclipse.microprofile.openapi.models.parameters.Parameter) ParameterImpl(fish.payara.microprofile.openapi.impl.model.parameters.ParameterImpl) APIResponses(org.eclipse.microprofile.openapi.models.responses.APIResponses) OAuthFlowImpl(fish.payara.microprofile.openapi.impl.model.security.OAuthFlowImpl) ContactImpl(fish.payara.microprofile.openapi.impl.model.info.ContactImpl) XMLImpl(fish.payara.microprofile.openapi.impl.model.media.XMLImpl) Assert.assertEquals(org.junit.Assert.assertEquals) Extensible(org.eclipse.microprofile.openapi.models.Extensible) XML(org.eclipse.microprofile.openapi.models.media.XML) OAuthFlowsImpl(fish.payara.microprofile.openapi.impl.model.security.OAuthFlowsImpl) Server(org.eclipse.microprofile.openapi.models.servers.Server) Schema(org.eclipse.microprofile.openapi.models.media.Schema) SecuritySchemeImpl(fish.payara.microprofile.openapi.impl.model.security.SecuritySchemeImpl) License(org.eclipse.microprofile.openapi.models.info.License) ServerVariable(org.eclipse.microprofile.openapi.models.servers.ServerVariable) Components(org.eclipse.microprofile.openapi.models.Components) SchemaImpl(fish.payara.microprofile.openapi.impl.model.media.SchemaImpl) PathItem(org.eclipse.microprofile.openapi.models.PathItem) EncodingImpl(fish.payara.microprofile.openapi.impl.model.media.EncodingImpl) ExternalDocumentation(org.eclipse.microprofile.openapi.models.ExternalDocumentation) ContactImpl(fish.payara.microprofile.openapi.impl.model.info.ContactImpl) Example(org.eclipse.microprofile.openapi.models.examples.Example) MediaType(org.eclipse.microprofile.openapi.models.media.MediaType) ExampleImpl(fish.payara.microprofile.openapi.impl.model.examples.ExampleImpl) SecurityScheme(org.eclipse.microprofile.openapi.models.security.SecurityScheme) Encoding(org.eclipse.microprofile.openapi.models.media.Encoding) RequestBodyImpl(fish.payara.microprofile.openapi.impl.model.parameters.RequestBodyImpl) ContentImpl(fish.payara.microprofile.openapi.impl.model.media.ContentImpl) Header(org.eclipse.microprofile.openapi.models.headers.Header) ParameterImpl(fish.payara.microprofile.openapi.impl.model.parameters.ParameterImpl) OAuthFlow(org.eclipse.microprofile.openapi.models.security.OAuthFlow) Content(org.eclipse.microprofile.openapi.models.media.Content) MediaTypeImpl(fish.payara.microprofile.openapi.impl.model.media.MediaTypeImpl) OpenAPI(org.eclipse.microprofile.openapi.models.OpenAPI) Link(org.eclipse.microprofile.openapi.models.links.Link) APIResponse(org.eclipse.microprofile.openapi.models.responses.APIResponse) CallbackImpl(fish.payara.microprofile.openapi.impl.model.callbacks.CallbackImpl) HeaderImpl(fish.payara.microprofile.openapi.impl.model.headers.HeaderImpl) APIResponsesImpl(fish.payara.microprofile.openapi.impl.model.responses.APIResponsesImpl) Operation(org.eclipse.microprofile.openapi.models.Operation) LicenseImpl(fish.payara.microprofile.openapi.impl.model.info.LicenseImpl) OAuthFlowImpl(fish.payara.microprofile.openapi.impl.model.security.OAuthFlowImpl) ServerImpl(fish.payara.microprofile.openapi.impl.model.servers.ServerImpl) LinkImpl(fish.payara.microprofile.openapi.impl.model.links.LinkImpl) APIResponses(org.eclipse.microprofile.openapi.models.responses.APIResponses) Paths(org.eclipse.microprofile.openapi.models.Paths) RequestBody(org.eclipse.microprofile.openapi.models.parameters.RequestBody) DiscriminatorImpl(fish.payara.microprofile.openapi.impl.model.media.DiscriminatorImpl) Extensible(org.eclipse.microprofile.openapi.models.Extensible) OAuthFlows(org.eclipse.microprofile.openapi.models.security.OAuthFlows) TagImpl(fish.payara.microprofile.openapi.impl.model.tags.TagImpl) APIResponseImpl(fish.payara.microprofile.openapi.impl.model.responses.APIResponseImpl) Info(org.eclipse.microprofile.openapi.models.info.Info) XMLImpl(fish.payara.microprofile.openapi.impl.model.media.XMLImpl) Discriminator(org.eclipse.microprofile.openapi.models.media.Discriminator) Contact(org.eclipse.microprofile.openapi.models.info.Contact) ServerVariableImpl(fish.payara.microprofile.openapi.impl.model.servers.ServerVariableImpl) Callback(org.eclipse.microprofile.openapi.models.callbacks.Callback) XML(org.eclipse.microprofile.openapi.models.media.XML) Parameter(org.eclipse.microprofile.openapi.models.parameters.Parameter) Tag(org.eclipse.microprofile.openapi.models.tags.Tag) InfoImpl(fish.payara.microprofile.openapi.impl.model.info.InfoImpl) Test(org.junit.Test)

Aggregations

Schema (org.eclipse.microprofile.openapi.models.media.Schema)51 Type (org.jboss.jandex.Type)15 Test (org.junit.Test)15 SchemaImpl (fish.payara.microprofile.openapi.impl.model.media.SchemaImpl)10 ClassType (org.jboss.jandex.ClassType)10 MediaType (org.eclipse.microprofile.openapi.models.media.MediaType)7 ArrayList (java.util.ArrayList)5 Parameter (org.eclipse.microprofile.openapi.models.parameters.Parameter)5 AnnotationModel (org.glassfish.hk2.classmodel.reflect.AnnotationModel)5 SchemaImpl (org.wildfly.swarm.microprofile.openapi.api.models.media.SchemaImpl)5 RequestBodyImpl (fish.payara.microprofile.openapi.impl.model.parameters.RequestBodyImpl)4 LinkedHashMap (java.util.LinkedHashMap)4 List (java.util.List)4 DMNType (org.kie.dmn.api.core.DMNType)4 Components (org.eclipse.microprofile.openapi.models.Components)3 Operation (org.eclipse.microprofile.openapi.models.Operation)3 Callback (org.eclipse.microprofile.openapi.models.callbacks.Callback)3 SchemaType (org.eclipse.microprofile.openapi.models.media.Schema.SchemaType)3 APIResponse (org.eclipse.microprofile.openapi.models.responses.APIResponse)3 APIResponses (org.eclipse.microprofile.openapi.models.responses.APIResponses)3