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

org.eclipse.microprofile.openapi.annotations.ExternalDocumentation Maven / Gradle / Ivy

/**
 * Copyright (c) 2017 Contributors to the Eclipse Foundation
 * Copyright 2017 SmartBear Software
 * 

* Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *

* http://www.apache.org/licenses/LICENSE-2.0 *

* Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.eclipse.microprofile.openapi.annotations; import java.lang.annotation.ElementType; import java.lang.annotation.Inherited; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; import org.eclipse.microprofile.openapi.annotations.extensions.Extension; /** * This annotation allows referencing an external resource for extended documentation. *

* When it is applied to a method the value of the annotation is added to the corresponding OpenAPI operation * definition. *

* When it is applied to a type and one or more of the fields are not empty strings the annotation value is added to the * OpenAPI document root. If more than one non-empty annotation is applied to a type in the application or if the * externalDocs field of the OpenAPIDefinition annotation is supplied the results are not defined. * * @see OpenAPI * Specification External Documentation Object **/ @Target({ElementType.METHOD, ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Inherited public @interface ExternalDocumentation { /** * A short description of the target documentation. * * @return the documentation description **/ String description() default ""; /** * The URL for the target documentation. Value must be in the format of a URL. * * @return the documentation URL **/ String url() default ""; /** * List of extensions to be added to the {@link org.eclipse.microprofile.openapi.models.ExternalDocumentation * ExternalDocumentation} model corresponding to the containing annotation. * * @return array of extensions * * @since 3.1 */ Extension[] extensions() default {}; }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy