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

org.iris_events.asyncapi.spec.annotations.Parameter Maven / Gradle / Ivy

package org.iris_events.asyncapi.spec.annotations;

import org.iris_events.asyncapi.spec.annotations.channels.ChannelItem;
import org.iris_events.asyncapi.spec.annotations.components.Components;
import org.iris_events.asyncapi.spec.annotations.media.Schema;

/**
 * Describes operations available on a single channel
 */
public @interface Parameter {
    /**
     * Optional description of this channel item. CommonMark
     * syntax can be used for rich text representation.
     *
     * @return channel description
     */
    String description() default "";

    /**
     * Definition of the parameter.
     *
     * @return channels schema
     */
    Schema schema() default @Schema();

    /**
     * Runtime expression
     * that specifies the location of the parameter value. Even when a definition for the target field exists, it MUST NOT be
     * used to validate
     * this parameter but, instead, the schema property MUST be used.
     *
     * @return location property
     */
    String location() default "";

    /**
     * The name of the parameter.
     * 

* The name is REQUIRED when the parameter is defined within * {@link ChannelItem} or * {@link Components}. * The name will be used as the key to add this schema to the 'parameters' map for reuse. *

* * @return the name of the schema **/ String name() default ""; }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy