All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.muserver.openapi.DiscriminatorObjectBuilder Maven / Gradle / Ivy

There is a newer version: 2.0.3
Show newest version
package io.muserver.openapi;

import java.util.Map;

/**
 * 

When request bodies or response payloads may be one of a number of different schemas, a discriminator * object can be used to aid in serialization, deserialization, and validation. The discriminator is a specific object * in a schema which is used to inform the consumer of the specification of an alternative schema based on the value associated with it.

*

When using the discriminator, inline schemas will not be considered.

*/ public class DiscriminatorObjectBuilder { private String propertyName; private Map mapping; /** * @param propertyName REQUIRED. The name of the property in the payload that will hold the discriminator value. * @return The current builder */ public DiscriminatorObjectBuilder withPropertyName(String propertyName) { this.propertyName = propertyName; return this; } /** * @param mapping An object to hold mappings between payload values and schema names or references. * @return The current builder */ public DiscriminatorObjectBuilder withMapping(Map mapping) { this.mapping = mapping; return this; } public DiscriminatorObject build() { return new DiscriminatorObject(propertyName, mapping); } /** * Creates a builder for a {@link DiscriminatorObject} * * @return A new builder */ public static DiscriminatorObjectBuilder discriminatorObject() { return new DiscriminatorObjectBuilder(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy