This is an automated email from the ASF dual-hosted git repository.

jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git


The following commit(s) were added to refs/heads/master by this push:
     new e612956  Javadocs
e612956 is described below

commit e61295688744cb6e87b139e9bce20c79b866a55a
Author: JamesBognar <[email protected]>
AuthorDate: Thu May 24 08:33:45 2018 -0400

    Javadocs
---
 .../examples/rest/petstore/PetStoreResource.java   |   7 +-
 .../apache/juneau/rest/BasicRestInfoProvider.java  |  16 +-
 .../juneau/rest/annotation/ResourceSwagger.java    | 330 +++++++++++----------
 .../apache/juneau/rest/annotation/RestMethod.java  |  15 +-
 .../juneau/rest/annotation/RestResource.java       |  16 +-
 5 files changed, 205 insertions(+), 179 deletions(-)

diff --git 
a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/petstore/PetStoreResource.java
 
b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/petstore/PetStoreResource.java
index beaf3b2..ce2ebba 100644
--- 
a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/petstore/PetStoreResource.java
+++ 
b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/petstore/PetStoreResource.java
@@ -42,9 +42,10 @@ import org.apache.juneau.rest.converters.*;
 @RestResource(
        path="/petstore",
        title="Petstore application",
-       description=
-               "This is a sample server Petstore server based on the Petstore 
sample at Swagger.io."
-               + "<br>You can find out more about Swagger at <a class='link' 
href='http://swagger.io'>http://swagger.io</a>.",
+       description= {
+               "This is a sample server Petstore server based on the Petstore 
sample at Swagger.io.",
+               "You can find out more about Swagger at <a class='link' 
href='http://swagger.io'>http://swagger.io</a>.",
+       },
        htmldoc=@HtmlDoc(
                widgets={
                        ContentTypeMenuItem.class,
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
index 4481961..0bb7549 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
@@ -128,10 +128,10 @@ public class BasicRestInfoProvider implements 
RestInfoProvider {
                        for (RestResource r : 
restResourceAnnotationsParentFirst.values()) {
                                if (! r.siteName().isEmpty())
                                        siteName = r.siteName();
-                               if (! r.title().isEmpty())
-                                       title = r.title();
-                               if (! r.description().isEmpty())
-                                       description = r.description();
+                               if (r.title().length > 0)
+                                       title = joinnl(r.title());
+                               if (r.description().length > 0)
+                                       description = joinnl(r.description());
                        }
                }
        }
@@ -188,10 +188,10 @@ public class BasicRestInfoProvider implements 
RestInfoProvider {
                for (Map.Entry<Class<?>,RestResource> e : 
findAnnotationsMapParentFirst(RestResource.class, 
resource.getClass()).entrySet()) {
                        RestResource rr = e.getValue();
 
-                       if (! rr.title().isEmpty())
-                               omSwagger.getObjectMap("info", 
true).appendIf(false, true, true, "title", vr.resolve(rr.title()));
-                       if (! rr.description().isEmpty())
-                               omSwagger.getObjectMap("info", 
true).appendIf(false, true, true, "description", vr.resolve(rr.description()));
+                       if (rr.title().length > 0)
+                               omSwagger.getObjectMap("info", 
true).appendIf(false, true, true, "title", vr.resolve(joinnl(rr.title())));
+                       if (rr.description().length > 0)
+                               omSwagger.getObjectMap("info", 
true).appendIf(false, true, true, "description", 
vr.resolve(joinnl(rr.description())));
                        
                        ResourceSwagger r = rr.swagger();
                        
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/ResourceSwagger.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/ResourceSwagger.java
index e9cf58d..ee88e70 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/ResourceSwagger.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/ResourceSwagger.java
@@ -12,10 +12,6 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.rest.annotation;
 
-import org.apache.juneau.config.vars.*;
-import org.apache.juneau.rest.vars.*;
-import org.apache.juneau.svl.vars.*;
-
 /**
  * Extended annotation for {@link RestResource#swagger() 
@RestResource.swagger()}.
  * 
@@ -27,25 +23,126 @@ import org.apache.juneau.svl.vars.*;
 public @interface ResourceSwagger {
        
        /**
-        * {@link TODO}
+        * Defines the the free-form contents of the swagger.
+        * 
+        * <p>
+        * Used to populate the auto-generated OPTIONS swagger documentation.
+        * 
+        * <h5 class='section'>Examples:</h5>
+        * <p class='bcode'>
+        *      <ja>@RestResource</ja>(
+        *              <jc>// Swagger info.</jc>
+        *              swagger=@ResourceSwagger({
+        *                      <js>"title:'Petstore application',"</js>,
+        *                      <js>"description:"</js>,
+        *                              <js>"'This is a sample server Petstore 
server based on the Petstore sample at Swagger.io."</js>,
+        *                              + <js>"\nYou can find out more about 
Swagger at &lt;a class=\'link\' 
href=\'http://swagger.io\'&gt;http://swagger.io&lt;/a&gt;.',"</js>,
+        *                      <js>"contact:{name:'John 
Smith',email:'[email protected]'},"</js>,
+        *                      <js>"license:{name:'Apache 
2.0',url:'http://www.apache.org/licenses/LICENSE-2.0.html'},"</js>,
+        *                      <js>"version:'2.0',</js>,
+        *                      <js>"termsOfService:'You are on your 
own.',"</js>,
+        *                      <js>"tags:[{name:'Java',description:'Java 
utility',externalDocs:{description:'Home 
page',url:'http://juneau.apache.org'}}],"</js>,
+        *                      <js>"externalDocs:{description:'Home 
page',url:'http://juneau.apache.org'}"</js>
+        *              })
+        *      )
+        * </p>
+        * <p class='bcode'>
+        *      <ja>@RestResource</ja>(
+        *              <jc>// Swagger info pulled from file.</jc>
+        *              swagger=@ResourceSwagger("$F{MyResource.json}")
+        *      )
+        * </p>
+        * 
+        * <h5 class='section'>Notes:</h5>
+        * <ul class='spaced-list'>
+        *      <li>
+        *              The format is a JSON object.
+        *              <br>Multiple lines are concatenated with newlines.
+        *      <li>
+        *              The starting and ending <js>'{'</js>/<js>'}'</js> 
characters are optional.
+        *      <li>
+        *              If a Swagger JSON file 
<code>{resource-class-simple-name}_{locale}.json</code> is present in the same 
package on the classpath, the values
+        *              defined in this annotation will be superimposed on the 
values pulled from the Swagger JSON file.
+        *      <li>
+        *              The other annotation values defined here are 
superimposed on the values defined by this value.
+        *      <li>
+        *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
+        *              (e.g. <js>"$L{my.localized.variable}"</js>).
+        * </ul>
         */
        String[] value() default {};
        
        /**
-        * {@link TODO}
+        * Defines the swagger value <code>/info/title</code>.
+        * 
+        * <h5 class='section'>Example:</h5>
+        * <p class='bcode'>
+        *      <ja>@RestResource</ja>(
+        *              swagger=<ja>@ResourceSwagger</ja>(
+        *                      title=<js>"Petstore application"</js>
+        *              )
+        *      )
+        * </p>
+        * 
+        * <h5 class='section'>Notes:</h5>
+        * <ul class='spaced-list'>
+        *      <li>
+        *              The format is plain-text.
+        *              <br>Multiple lines are concatenated with newlines.
+        *      <li>
+        *              The precedence of lookup for this field is:
+        *              <ol>
+        *                      <li><code>{resource-class}.title</code> 
property in resource bundle.
+        *                      <li>{@link ResourceSwagger#title()} on this 
class, then any parent classes.
+        *                      <li>Value defined in Swagger JSON file.
+        *                      <li>{@link RestResource#title()} on this class, 
then any parent classes.
+        *                      <li>
+        *              </ol>
+        *      <li>
+        *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
+        *              (e.g. <js>"$L{my.localized.variable}"</js>).
+        * </ul>
         */
        String[] title() default {};
        
        /**
-        * {@link TODO}
+        * Defines the swagger value <code>/info/description</code>.
+        * 
+        * <h5 class='section'>Example:</h5>
+        * <p class='bcode'>
+        *      <ja>@RestResource</ja>(
+        *              swagger=<ja>@ResourceSwagger</ja>(
+        *                      description={
+        *                              <js>"This is a sample server Petstore 
server based on the Petstore sample at Swagger.io."<js>,
+        *                              <js>"You can find out more about 
Swagger at &lt;a class='link' 
href='http://swagger.io'&gt;http://swagger.io&lt;/a&gt;.";</js>
+        *                      }
+        *              )
+        *      )
+        * </p>
+        * 
+        * <h5 class='section'>Notes:</h5>
+        * <ul class='spaced-list'>
+        *      <li>
+        *              The format of the value is plain-text.
+        *              <br>Multiple lines are concatenated with newlines.
+        *      <li>
+        *              The precedence of lookup for this field is:
+        *              <ol>
+        *                      <li><code>{resource-class}.description</code> 
property in resource bundle.
+        *                      <li>{@link ResourceSwagger#description()} on 
this class, then any parent classes.
+        *                      <li>Value defined in Swagger JSON file.
+        *                      <li>{@link RestResource#description()} on this 
class, then any parent classes.
+        *                      <li>
+        *              </ol>
+        *      <li>
+        *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
+        *              (e.g. <js>"$L{my.localized.variable}"</js>).
+        * </ul>
         */
        String[] description() default {};
 
        /**
-        * Optional contact information for the exposed API.
-        * 
-        * <p>
-        * It is used to populate the Swagger contact field and to display on 
HTML pages.
+        * Defines the swagger value <code>/info/contact</code>.
         * 
         * <p>
         * A simplified JSON string with the following fields:
@@ -88,35 +185,20 @@ public @interface ResourceSwagger {
        )
        swagger=@ResourceSwagger("$F{PetStoreResource.json}"),
         * 
-        * <p>
-        * Value can contain any of the following variables:  
-        * {@link ConfigVar $C} 
-        * {@link CoalesceVar $CO}
-        * {@link EnvVariablesVar $E} 
-        * {@link FileVar $F} 
-        * {@link ServletInitParamVar $I},
-        * {@link IfVar $IF}
-        * {@link LocalizationVar $L}
-        * {@link RequestAttributeVar $RA} 
-        * {@link RequestFormDataVar $RF} 
-        * {@link RequestHeaderVar $RH} 
-        * {@link RequestPathVar $RP} 
-        * {@link RequestQueryVar $RQ} 
-        * {@link RequestVar $R} 
-        * {@link SystemPropertiesVar $S}
-        * {@link SerializedRequestAttrVar $SA}
-        * {@link SwitchVar $SW}
-        * {@link UrlVar $U}
-        * {@link UrlEncodeVar $UE}
-        * {@link WidgetVar $W}
-        * 
-        * <p>
-        * Corresponds to the swagger field <code>/info/contact</code>.
+        * <h5 class='section'>Notes:</h5>
+        * <ul class='spaced-list'>
+        *      <li>
+        *              The format is a JSON object.
+        *              <br>Multiple lines are concatenated with newlines.
+        *      <li>
+        *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
+        *              (e.g. <js>"$L{my.localized.variable}"</js>).
+        * </ul>
         */
        String[] contact() default {};
 
        /**
-        * Optional external documentation information for the exposed API.
+        * Defines the swagger value <code>/externalDocs</code>.
         * 
         * <p>
         * It is used to populate the Swagger external documentation field and 
to display on HTML pages.
@@ -144,35 +226,20 @@ public @interface ResourceSwagger {
         *      )
         * </p>
         * 
-        * <p>
-        * Value can contain any of the following variables:  
-        * {@link ConfigVar $C} 
-        * {@link CoalesceVar $CO}
-        * {@link EnvVariablesVar $E} 
-        * {@link FileVar $F} 
-        * {@link ServletInitParamVar $I},
-        * {@link IfVar $IF}
-        * {@link LocalizationVar $L}
-        * {@link RequestAttributeVar $RA} 
-        * {@link RequestFormDataVar $RF} 
-        * {@link RequestHeaderVar $RH} 
-        * {@link RequestPathVar $RP} 
-        * {@link RequestQueryVar $RQ} 
-        * {@link RequestVar $R} 
-        * {@link SystemPropertiesVar $S}
-        * {@link SerializedRequestAttrVar $SA}
-        * {@link SwitchVar $SW}
-        * {@link UrlVar $U}
-        * {@link UrlEncodeVar $UE}
-        * {@link WidgetVar $W}
-        * 
-        * <p>
-        * Corresponds to the swagger field <code>/tags</code>.
+        * <h5 class='section'>Notes:</h5>
+        * <ul class='spaced-list'>
+        *      <li>
+        *              The format is a JSON object.
+        *              <br>Multiple lines are concatenated with newlines.
+        *      <li>
+        *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
+        *              (e.g. <js>"$L{my.localized.variable}"</js>).
+        * </ul>
         */
        String[] externalDocs() default {};
 
        /**
-        * Optional license information for the exposed API.
+        * Defines the swagger value <code>/info/license</code>.
         * 
         * <p>
         * It is used to populate the Swagger license field and to display on 
HTML pages.
@@ -200,34 +267,22 @@ public @interface ResourceSwagger {
         *      )
         * </p>
         * 
-        * <p>
-        * Value can contain any of the following variables:  
-        * {@link ConfigVar $C} 
-        * {@link CoalesceVar $CO}
-        * {@link EnvVariablesVar $E} 
-        * {@link FileVar $F} 
-        * {@link ServletInitParamVar $I},
-        * {@link IfVar $IF}
-        * {@link LocalizationVar $L}
-        * {@link RequestAttributeVar $RA} 
-        * {@link RequestFormDataVar $RF} 
-        * {@link RequestHeaderVar $RH} 
-        * {@link RequestPathVar $RP} 
-        * {@link RequestQueryVar $RQ} 
-        * {@link RequestVar $R} 
-        * {@link SystemPropertiesVar $S}
-        * {@link SerializedRequestAttrVar $SA}
-        * {@link SwitchVar $SW}
-        * {@link UrlVar $U}
-        * {@link UrlEncodeVar $UE}
-        * {@link WidgetVar $W}
-        * 
-        * <p>
-        * Corresponds to the swagger field <code>/info/license</code>.
+        * <h5 class='section'>Notes:</h5>
+        * <ul class='spaced-list'>
+        *      <li>
+        *              The format is a JSON object.
+        *              <br>Multiple lines are concatenated with newlines.
+        *      <li>
+        *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
+        *              (e.g. <js>"$L{my.localized.variable}"</js>).
+        * </ul>
         */
        String[] license() default {};
 
        /**
+        * Defines the swagger value <code>/tags</code>.
+        * 
+        * 
         * Optional tagging information for the exposed API.
         * 
         * <p>
@@ -262,34 +317,22 @@ public @interface ResourceSwagger {
         *      )
         * </p>
         * 
-        * <p>
-        * Value can contain any of the following variables:  
-        * {@link ConfigVar $C} 
-        * {@link CoalesceVar $CO}
-        * {@link EnvVariablesVar $E} 
-        * {@link FileVar $F} 
-        * {@link ServletInitParamVar $I},
-        * {@link IfVar $IF}
-        * {@link LocalizationVar $L}
-        * {@link RequestAttributeVar $RA} 
-        * {@link RequestFormDataVar $RF} 
-        * {@link RequestHeaderVar $RH} 
-        * {@link RequestPathVar $RP} 
-        * {@link RequestQueryVar $RQ} 
-        * {@link RequestVar $R} 
-        * {@link SystemPropertiesVar $S}
-        * {@link SerializedRequestAttrVar $SA}
-        * {@link SwitchVar $SW}
-        * {@link UrlVar $U}
-        * {@link UrlEncodeVar $UE}
-        * {@link WidgetVar $W}
-        * 
-        * <p>
-        * Corresponds to the swagger field <code>/tags</code>.
+        * <h5 class='section'>Notes:</h5>
+        * <ul class='spaced-list'>
+        *      <li>
+        *              The format is a JSON array.
+        *              <br>Multiple lines are concatenated with newlines.
+        *      <li>
+        *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
+        *              (e.g. <js>"$L{my.localized.variable}"</js>).
+        * </ul>
         */
        String[] tags() default {};
        
        /**
+        * Defines the swagger value <code>/info/termsOfService</code>.
+        * 
+        * 
         * Optional servlet terms-of-service for this API.
         * 
         * <p>
@@ -299,34 +342,23 @@ public @interface ResourceSwagger {
         * The default value pulls the description from the 
<code>termsOfService</code> entry in the servlet resource bundle.
         * (e.g. <js>"termsOfService = foo"</js> or 
<js>"MyServlet.termsOfService = foo"</js>).
         * 
-        * <p>
-        * Value can contain any of the following variables:  
-        * {@link ConfigVar $C} 
-        * {@link CoalesceVar $CO}
-        * {@link EnvVariablesVar $E} 
-        * {@link FileVar $F} 
-        * {@link ServletInitParamVar $I},
-        * {@link IfVar $IF}
-        * {@link LocalizationVar $L}
-        * {@link RequestAttributeVar $RA} 
-        * {@link RequestFormDataVar $RF} 
-        * {@link RequestHeaderVar $RH} 
-        * {@link RequestPathVar $RP} 
-        * {@link RequestQueryVar $RQ} 
-        * {@link RequestVar $R} 
-        * {@link SystemPropertiesVar $S}
-        * {@link SerializedRequestAttrVar $SA}
-        * {@link SwitchVar $SW}
-        * {@link UrlVar $U}
-        * {@link UrlEncodeVar $UE}
-        * {@link WidgetVar $W}
-        * 
-        * <p>
-        * Corresponds to the swagger field <code>/info/termsOfService</code>.
+        * <h5 class='section'>Notes:</h5>
+        * <ul class='spaced-list'>
+        *      <li>
+        *              The format is plain text.
+        *              <br>Multiple lines are concatenated with newlines.
+        *      <li>
+        *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
+        *              (e.g. <js>"$L{my.localized.variable}"</js>).
+        * </ul>
         */
        String[] termsOfService() default {};
 
        /**
+        * Defines the swagger value <code>/info/version</code>.
+        * 
+        * 
+        * 
         * Provides the version of the application API (not to be confused with 
the specification version).
         * 
         * <p>
@@ -336,30 +368,14 @@ public @interface ResourceSwagger {
         * The default value pulls the description from the 
<code>version</code> entry in the servlet resource bundle.
         * (e.g. <js>"version = 2.0"</js> or <js>"MyServlet.version = 
2.0"</js>).
         * 
-        * <p>
-        * Value can contain any of the following variables:  
-        * {@link ConfigVar $C} 
-        * {@link CoalesceVar $CO}
-        * {@link EnvVariablesVar $E} 
-        * {@link FileVar $F} 
-        * {@link ServletInitParamVar $I},
-        * {@link IfVar $IF}
-        * {@link LocalizationVar $L}
-        * {@link RequestAttributeVar $RA} 
-        * {@link RequestFormDataVar $RF} 
-        * {@link RequestHeaderVar $RH} 
-        * {@link RequestPathVar $RP} 
-        * {@link RequestQueryVar $RQ} 
-        * {@link RequestVar $R} 
-        * {@link SystemPropertiesVar $S}
-        * {@link SerializedRequestAttrVar $SA}
-        * {@link SwitchVar $SW}
-        * {@link UrlVar $U}
-        * {@link UrlEncodeVar $UE}
-        * {@link WidgetVar $W}
-        * 
-        * <p>
-        * Corresponds to the swagger field <code>/info/version</code>.
+        * <h5 class='section'>Notes:</h5>
+        * <ul class='spaced-list'>
+        *      <li>
+        *              The format is plain text.
+        *      <li>
+        *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
+        *              (e.g. <js>"$L{my.localized.variable}"</js>).
+        * </ul>
         */
        String version() default "";
 }
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestMethod.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestMethod.java
index eaf4f01..bfac48d 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestMethod.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestMethod.java
@@ -754,7 +754,20 @@ public @interface RestMethod {
         *              }
         *      )
         * </p>
-        * {@link TODO}
+        * 
+        * <h5 class='section'>Notes:</h5>
+        * <ul class='spaced-list'>
+        *      <li>
+        *              The format is JSON.
+        *              <br>Multiple lines are concatenated with newlines.
+        *      <li>
+        *              The starting and ending <js>'{'</js>/<js>'}'</js> 
characters around the entire value are optional.
+        *      <li>
+        *              These values are superimposed on top of any Swagger 
JSON file present for the resource in the classpath.
+        *      <li>
+        *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
+        *              (e.g. <js>"$L{my.localized.variable}"</js>).
+        * </ul>
         * 
         * <h5 class='section'>See Also:</h5>
         * <ul>
diff --git 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestResource.java
 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestResource.java
index 719d023..788259e 100644
--- 
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestResource.java
+++ 
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestResource.java
@@ -325,7 +325,8 @@ public @interface RestResource {
         *              Supports <a class="doclink" 
href="../../../../../overview-summary.html#DefaultRestSvlVariables">initialization-time
 and request-time variables</a> 
         *              (e.g. <js>"$L{my.localized.variable}"</js>).
         *      <li>
-        *              Corresponds to the swagger field 
<code>/info/description</code>.
+        *              The format is plain-text.
+        *              <br>Multiple lines are concatenated with newlines.
         * </ul>
         * 
         * <h5 class='section'>See Also:</h5>
@@ -333,7 +334,7 @@ public @interface RestResource {
         *      <li class='jm'>{@link 
RestInfoProvider#getDescription(RestRequest)}
         * </ul>
         */
-       String description() default "";
+       String[] description() default {};
 
        /**
         * Compression encoders. 
@@ -853,27 +854,22 @@ public @interface RestResource {
         * <p>
         * Used to populate the auto-generated OPTIONS swagger documentation.
         * 
-        * <p>
-        * The format of this annotation is JSON when all individual parts are 
concatenated.
-        * <br>The starting and ending <js>'{'</js>/<js>'}'</js> characters 
around the entire value are optional.
-        * 
         * <h5 class='section'>Example:</h5>
         * <p class='bcode'>
         *      <ja>@RestResource</ja>(
         *              path=<js>"/addressBook"</js>,
         * 
         *              <jc>// Swagger info.</jc>
-        *              swagger={
+        *              swagger=@ResourceSwagger({
         *                      <js>"contact:{name:'John 
Smith',email:'[email protected]'},"</js>,
         *                      <js>"license:{name:'Apache 
2.0',url:'http://www.apache.org/licenses/LICENSE-2.0.html'},"</js>,
         *                      <js>"version:'2.0',</js>,
         *                      <js>"termsOfService:'You are on your 
own.',"</js>,
         *                      <js>"tags:[{name:'Java',description:'Java 
utility',externalDocs:{description:'Home 
page',url:'http://juneau.apache.org'}}],"</js>,
         *                      <js>"externalDocs:{description:'Home 
page',url:'http://juneau.apache.org'}"</js>
-        *              }
+        *              })
         *      )
         * </p>
-        * {@link TODO}
         * 
         * <h5 class='section'>See Also:</h5>
         * <ul>
@@ -903,7 +899,7 @@ public @interface RestResource {
         *      <li class='jm'>{@link RestInfoProvider#getTitle(RestRequest)}
         * </ul>
         */
-       String title() default "";
+       String[] title() default {};
 
        /**
         * Configuration property:  Use classpath resource caching. 

-- 
To stop receiving notification emails like this one, please contact
[email protected].

Reply via email to