You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2018/04/09 00:03:27 UTC
[juneau] branch master updated: Create
org.apache.juneau.rest.helper package.
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 98e1a9f Create org.apache.juneau.rest.helper package.
98e1a9f is described below
commit 98e1a9f007e687c3f1efb0eb317d2b11845c477c
Author: JamesBognar <ja...@apache.org>
AuthorDate: Sun Apr 8 20:01:52 2018 -0400
Create org.apache.juneau.rest.helper package.
---
.../apache/juneau/dto/swagger/OperationMap.java | 2 +-
juneau-doc/src/main/javadoc/overview.html | 91 +++++++++++++---------
.../juneau/examples/rest/DirectoryResource.java | 1 +
.../examples/rest/DockerRegistryResource.java | 2 +-
.../examples/rest/MethodExampleResource.java | 2 +-
.../juneau/examples/rest/PetStoreResource.java | 1 +
.../examples/rest/PredefinedLabelsResource.java | 2 +-
.../examples/rest/SystemPropertiesResource.java | 32 ++++----
.../juneau/examples/rest/TempDirResource.java | 1 +
.../rest/addressbook/AddressBookResource.java | 1 +
.../examples/rest/petstore/PetStoreResource.java | 22 +-----
.../juneau/examples/rest/RootResourcesTest.java | 2 +-
.../microservice/resources/DebugResource.java | 2 +-
.../microservice/resources/DirectoryResource.java | 1 +
.../microservice/resources/LogsResource.java | 1 +
.../java/org/apache/juneau/rest/test/Root.java | 2 +-
.../apache/juneau/rest/BasicRestCallHandler.java | 1 +
.../apache/juneau/rest/BasicRestServletGroup.java | 2 +-
.../org/apache/juneau/rest/ResponseHandler.java | 1 +
.../java/org/apache/juneau/rest/RestContext.java | 1 +
.../java/org/apache/juneau/rest/RestRequest.java | 1 +
.../rest/{labels => helper}/BeanDescription.java | 2 +-
.../ChildResourceDescriptions.java | 2 +-
.../RedirectHandler.java => helper/Ok.java} | 87 +++++++++++----------
.../juneau/rest/{ => helper}/ReaderResource.java | 2 +-
.../rest/{ => helper}/ReaderResourceBuilder.java | 2 +-
.../apache/juneau/rest/{ => helper}/Redirect.java | 5 +-
.../RedirectServletRoot.java} | 76 ++++++++----------
.../{labels => helper}/ResourceDescription.java | 4 +-
.../juneau/rest/{ => helper}/StreamResource.java | 2 +-
.../rest/{ => helper}/StreamResourceBuilder.java | 2 +-
.../rest/{labels => helper}/package-info.java | 4 +-
.../juneau/rest/response/RedirectHandler.java | 1 +
.../juneau/rest/response/StreamableHandler.java | 1 +
.../juneau/rest/response/WritableHandler.java | 1 +
.../java/org/apache/juneau/rest/vars/FileVar.java | 1 +
36 files changed, 187 insertions(+), 176 deletions(-)
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/OperationMap.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/OperationMap.java
index f7cae77..8221758 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/OperationMap.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/OperationMap.java
@@ -67,7 +67,7 @@ public class OperationMap extends TreeMap<String,Operation> {
}
/**
- * Fluent-style {@link #put(String, Operation)} method.
+ * Fluent-style put method.
*
* @param httpMethodName The HTTP method name.
* @param operation The operation.
diff --git a/juneau-doc/src/main/javadoc/overview.html b/juneau-doc/src/main/javadoc/overview.html
index 1efcf80..21fb2a4 100644
--- a/juneau-doc/src/main/javadoc/overview.html
+++ b/juneau-doc/src/main/javadoc/overview.html
@@ -329,7 +329,7 @@
</ol>
<li><p><a class='doclink' href='#juneau-rest-server.Injection'>Using with Spring and Injection frameworks</a></p>
<li><p><a class='doclink' href='#juneau-rest-server.HTTP2'>Using HTTP/2 features</a></p>
- <li><p><a class='doclink' href='#juneau-rest-server.PredefinedLabelBeans'>Predefined Label Beans</a></p>
+ <li><p><a class='doclink' href='#juneau-rest-server.PredefinedHelperBeans'>Predefined Helper Beans</a></p>
<li><p><a class='doclink' href='#juneau-rest-server.OtherNotes'>Other Notes</a></p>
</ol>
<li><p class='toc2'><a class='doclink' href='#juneau-rest-server-jaxrs'><i>juneau-rest-server-jaxrs</i></a></p>
@@ -12003,7 +12003,7 @@
{@link org.apache.juneau.rest.RestResponse#getNegotiatedWriter()}.
<br>Note that you should call {@link org.apache.juneau.rest.RestResponse#setContentType(String)} to set
the <l>Content-Type</l> header if you use this object type.
- <li class='jc'>{@link org.apache.juneau.rest.Redirect}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.Redirect}
<br>Represents an HTTP redirect response.
<li class='jc'>{@link org.apache.juneau.Streamable}
<br>Interface that identifies that an object can be serialized directly to an output stream.
@@ -12079,13 +12079,13 @@
<h4 class='topic' onclick='toggle(this)'>7.6.11 - ReaderResource</h4>
<div class='topic'>
<p>
- The {@link org.apache.juneau.rest.ReaderResource} class is a convenience object for defining thread-safe
+ The {@link org.apache.juneau.rest.helper.ReaderResource} class is a convenience object for defining thread-safe
reusable character-based responses.
<br>In essence, it's a container for character data with optional response headers and support for
resolving SVL variables.
</p>
<p>
- The {@link org.apache.juneau.rest.ReaderResource} class implements the {@link org.apache.juneau.Writable}
+ The {@link org.apache.juneau.rest.helper.ReaderResource} class implements the {@link org.apache.juneau.Writable}
interface which is handled by the {@link org.apache.juneau.rest.response.WritableHandler} class.
<br>This allows these objects to be returned as responses by REST methods.
</p>
@@ -12107,12 +12107,12 @@
The important methods on this class are:
</p>
<ul class='doctree'>
- <li class='jc'>{@link org.apache.juneau.rest.ReaderResourceBuilder}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.ReaderResourceBuilder}
<ul>
- <li class='jm'>{@link org.apache.juneau.rest.ReaderResourceBuilder#contents(Object...) contents(Object...)}
- <li class='jm'>{@link org.apache.juneau.rest.ReaderResourceBuilder#header(String,Object) header(String,Object)}
- <li class='jm'>{@link org.apache.juneau.rest.ReaderResourceBuilder#mediaType(MediaType) mediaType(MediaType)}
- <li class='jm'>{@link org.apache.juneau.rest.ReaderResourceBuilder#varResolver(VarResolverSession) varResolver(VarResolverSession)}
+ <li class='jm'>{@link org.apache.juneau.rest.helper.ReaderResourceBuilder#contents(Object...) contents(Object...)}
+ <li class='jm'>{@link org.apache.juneau.rest.helper.ReaderResourceBuilder#header(String,Object) header(String,Object)}
+ <li class='jm'>{@link org.apache.juneau.rest.helper.ReaderResourceBuilder#mediaType(MediaType) mediaType(MediaType)}
+ <li class='jm'>{@link org.apache.juneau.rest.helper.ReaderResourceBuilder#varResolver(VarResolverSession) varResolver(VarResolverSession)}
</ul>
</ul>
</div>
@@ -12122,11 +12122,11 @@
<h4 class='topic' onclick='toggle(this)'>7.6.12 - StreamResource</h4>
<div class='topic'>
<p>
- The {@link org.apache.juneau.rest.StreamResource} class is the binary equivalent to the {@link org.apache.juneau.rest.ReaderResource} object.
+ The {@link org.apache.juneau.rest.helper.StreamResource} class is the binary equivalent to the {@link org.apache.juneau.rest.helper.ReaderResource} object.
<br>In essence, it's a container for binary data with optional response headers.
</p>
<p>
- The {@link org.apache.juneau.rest.StreamResource} class implements the {@link org.apache.juneau.Streamable}
+ The {@link org.apache.juneau.rest.helper.StreamResource} class implements the {@link org.apache.juneau.Streamable}
interface which is handled by the {@link org.apache.juneau.rest.response.StreamableHandler} class.
<br>This allows these objects to be returned as responses by REST methods.
</p>
@@ -12147,11 +12147,11 @@
The important methods on this class are:
</p>
<ul class='doctree'>
- <li class='jc'>{@link org.apache.juneau.rest.StreamResourceBuilder}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.StreamResourceBuilder}
<ul>
- <li class='jm'>{@link org.apache.juneau.rest.StreamResourceBuilder#contents(Object...) contents(Object...)}
- <li class='jm'>{@link org.apache.juneau.rest.StreamResourceBuilder#header(String,Object) header(String,Object)}
- <li class='jm'>{@link org.apache.juneau.rest.StreamResourceBuilder#mediaType(MediaType) mediaType(MediaType)}
+ <li class='jm'>{@link org.apache.juneau.rest.helper.StreamResourceBuilder#contents(Object...) contents(Object...)}
+ <li class='jm'>{@link org.apache.juneau.rest.helper.StreamResourceBuilder#header(String,Object) header(String,Object)}
+ <li class='jm'>{@link org.apache.juneau.rest.helper.StreamResourceBuilder#mediaType(MediaType) mediaType(MediaType)}
</ul>
</ul>
</div>
@@ -12161,7 +12161,7 @@
<h4 class='topic' onclick='toggle(this)'>7.6.13 - Redirect</h4>
<div class='topic'>
<p>
- The {@link org.apache.juneau.rest.Redirect} object is a convenience shortcut for performing <code>HTTP 302</code> redirects.
+ The {@link org.apache.juneau.rest.helper.Redirect} object is a convenience shortcut for performing <code>HTTP 302</code> redirects.
</p>
<p>
<l>Redirect</l> objects are handled by the {@link org.apache.juneau.rest.response.RedirectHandler} class.
@@ -15365,15 +15365,15 @@
</div>
<!-- ======================================================================================================= -->
- <a id='juneau-rest-server.PredefinedLabelBeans'></a>
- <h3 class='topic' onclick='toggle(this)'>7.35 - Predefined Label Beans</h3>
+ <a id='juneau-rest-server.PredefinedHelperBeans'></a>
+ <h3 class='topic' onclick='toggle(this)'>7.35 - Predefined Helper Beans</h3>
<div class='topic'>
<p>
- The {@link org.apache.juneau.rest.labels} package contains some reusable beans that are useful for
+ The {@link org.apache.juneau.rest.helper} package contains some reusable beans that are useful for
creating linked items in HTML views.
</p>
<p>
- The {@link org.apache.juneau.rest.labels.ResourceDescription} class is a bean with name/description
+ The {@link org.apache.juneau.rest.helper.ResourceDescription} class is a bean with name/description
properties for labeling and linking to child resources.
<br>The following examples is pulled from the REST examples:
</p>
@@ -15407,7 +15407,7 @@
}
</p>
<p>
- The {@link org.apache.juneau.rest.labels.BeanDescription} class provides a simple view
+ The {@link org.apache.juneau.rest.helper.BeanDescription} class provides a simple view
of a bean and it's properties.
</p>
<p class='bcode w800'>
@@ -17838,7 +17838,7 @@
</p>
<ul class='spaced-list'>
<li>
- Using the {@link org.apache.juneau.rest.Redirect} object to perform redirections.
+ Using the {@link org.apache.juneau.rest.helper.Redirect} object to perform redirections.
<li>
Using the various Java method parameter annotations to retrieve request attributes, parameters, etc.
<li>
@@ -18036,7 +18036,7 @@
<l>doExample()</l>
<br>The root page.
<br>Performs a simple redirection to the <l>doGetExample1()</l> method using a
- {@link org.apache.juneau.rest.Redirect} object.
+ {@link org.apache.juneau.rest.helper.Redirect} object.
<li class='jm'>
<l>example1()</l>
<br>Shows how to use the following annotations:
@@ -19894,7 +19894,7 @@
<li>
Accessing a docker registry REST API as POJOs using {@link org.apache.juneau.rest.client.RestClient}.
<li>
- Using the {@link org.apache.juneau.rest.labels.ResourceDescription} class to implement a top-level
+ Using the {@link org.apache.juneau.rest.helper.ResourceDescription} class to implement a top-level
'router' page.
<li>
Using the {@link org.apache.juneau.rest.RestContext#getConfig()} method to access external
@@ -21381,6 +21381,23 @@
<li class='ja'>{@link org.apache.juneau.rest.annotation.Path}
<li class='ja'>{@link org.apache.juneau.rest.annotation.Query}
</ul>
+ <li>
+ "Helper" classes (i.e. reusable beans that can be returned by REST methods) have been moved to the following package with some new additions:
+ <ul class='doctree'>
+ <li class='jp'>{@link org.apache.juneau.rest.helper}
+ <ul>
+ <li class='jc'>{@link org.apache.juneau.rest.helper.BeanDescription}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.ChildResourceDescriptions}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.Ok}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.ReaderResource}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.ReaderResourceBuilder}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.Redirect}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.RedirectServletRoot}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.ResourceDescription}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.StreamResource}
+ <li class='jc'>{@link org.apache.juneau.rest.helper.StreamResourceBuilder}
+ </ul>
+ </ul>
</ul>
<h5 class='topic w800'>juneau-rest-client</h5>
@@ -21789,8 +21806,8 @@
<li>
New builder classes:
<ul>
- <li>{@link org.apache.juneau.rest.ReaderResourceBuilder}
- <li>{@link org.apache.juneau.rest.StreamResourceBuilder}
+ <li><code><del>ReaderResourceBuilder</del></code>
+ <li><code><del>StreamResourceBuilder</del></code>
</ul>
<li>
{@link org.apache.juneau.rest.RestResponse#getNegotiatedOutputStream()} now returns a
@@ -22714,7 +22731,7 @@
)
</p>
<li>
- New {@link org.apache.juneau.rest.ReaderResource#toCommentStrippedString()} method.
+ New <code><del>ReaderResource.toCommentStrippedString()</del></code> method.
<li>
The <code>bpIncludes()</code> and <code>bpExcludes()</code> annotations on <ja>@RestMethod</ja>
has been replaced with the following:
@@ -23328,8 +23345,8 @@
)
</p>
<li><code><del>RestResource.stylesheet()</del></code> can now take in a comma-delimited list of stylesheet paths.
- <li>{@link org.apache.juneau.rest.StreamResource} can now contain multiple sources from a variety of source types (e.g. <code><jk>byte</jk>[]</code> arrays, <code>InputStreams</code>, <code>Files</code>, etc...)
- and is now immutable. It also includes a new {@link org.apache.juneau.rest.StreamResourceBuilder} class.
+ <li><code><del>StreamResource</del></code> can now contain multiple sources from a variety of source types (e.g. <code><jk>byte</jk>[]</code> arrays, <code>InputStreams</code>, <code>Files</code>, etc...)
+ and is now immutable. It also includes a new <code><del>StreamResourceBuilder</del></code> class.
<li>Simplified remoteable proxies using the <code><ja>@RestMethod</ja>(name=<js>"PROXY"</js>)</code> annotation on REST methods.
Used to expose interface proxies without the need for {@link org.apache.juneau.rest.remoteable.RemoteableServlet}.
<p class='bcode w800'>
@@ -24239,12 +24256,12 @@
<h5 class='topic w800'>Server</h5>
<ul class='spaced-list'>
- <li>New {@link org.apache.juneau.rest.ReaderResource} class.
+ <li>New <code><del>ReaderResource</del></code> class.
Represents the contents of a text file with convenience methods for resolving
<del><code>StringVar</code></del> variables and adding HTTP response headers.
REST Java methods can return instances of these to serialize <code>Readers</code>
containing text with <del><code>StringVarResolver</code></del> variables in them.
- <li>New {@link org.apache.juneau.rest.StreamResource} class.
+ <li>New <code><del>StreamResource</del></code> class.
REST Java methods can return instances of these to serialize <code>OutputStreams</code>.
<li>Fixed a bug in the stack trace hash algorithm in {@link org.apache.juneau.rest.RestException}.
<li>New methods in {@link org.apache.juneau.rest.RestRequest}:
@@ -24624,7 +24641,7 @@
<li><del><code>Param.description()</code></del>
<li><del><code>QParam.description()</code></del>
</ul>
- <li>Support for sorting resources by name in {@link org.apache.juneau.rest.labels.ChildResourceDescriptions}.
+ <li>Support for sorting resources by name in <code><del>ChildResourceDescriptions</del></code>.
</ul>
<h5 class='topic w800'>Samples</h5>
@@ -24673,7 +24690,7 @@
<ul class='spaced-list'>
<li>New <code><del>RestRequest.getServletParentURI()</del></code> method.
<li>New <code>$R{servletParentURI}</code> variable.
- <li>Removed final modifier from {@link org.apache.juneau.rest.labels.ChildResourceDescriptions}.
+ <li>Removed final modifier from <code><del>ChildResourceDescriptions</del></code>.
</ul>
<h5 class='topic w800'>Samples</h5>
@@ -25119,7 +25136,7 @@
Juno 5.1.0.5 is a moderate update.
</p>
<ul class='spaced-list'>
- <li>New {@link org.apache.juneau.rest.Redirect} class that simplifies performing redirections in REST methods.
+ <li>New <code><del>Redirect</del></code> class that simplifies performing redirections in REST methods.
<li>New pluggable {@link org.apache.juneau.rest.ResponseHandler} class and {@link org.apache.juneau.rest.annotation.RestResource#responseHandlers() @RestResource.responseHandlers()} annotation
for defining customer response handlers for special kinds of POJOs.
<li>New method <del><code>UrlEncodingSerializer.serializeUrlPart(Object)</code></del> method.
@@ -25132,7 +25149,7 @@
<li>Fixed bug in {@link org.apache.juneau.json.JsonSerializer} where <js>"_class"</js> and <js>"items"</js> attributes were not quoted in strict mode when using SERIALIZER_addClassAttrs feature.
<li>Fixed bug where <code>Content-Encoding</code> and<code>Character-Encoding</code> headers were being set when calling {@link org.apache.juneau.rest.RestResponse#getOutputStream()}.
These should not be set if interacting with the output streams at a low level.
- <li>Eliminated various convenience <code>RestResponse.sendRedirect(...)</code> methods due to the introduction of the {@link org.apache.juneau.rest.Redirect} class.
+ <li>Eliminated various convenience <code>RestResponse.sendRedirect(...)</code> methods due to the introduction of the <code><del>Redirect</del></code> class.
</ul>
</div>
@@ -25284,7 +25301,7 @@
<li>Various new methods added to {@link org.apache.juneau.internal.StringUtils} and {@link org.apache.juneau.internal.ClassUtils}.
<li>Improved support on <code><del>BeanContext.getClassMetaFromString(String)</del></code>.<br>
Now supports resolving <code>"long[]"</code>, and so forth.
- <li>{@link org.apache.juneau.rest.labels.ResourceDescription} name parameter is now automatically URL-encoded in links.
+ <li><code><del>ResourceDescription</del></code> name parameter is now automatically URL-encoded in links.
<li>{@link org.apache.juneau.rest.RestRequest} now correctly handles cases involving URL-encoded characters in the
path info portion of URLs (e.g. <code>http://host/contextRoot/foo%2Fbar</code>).
<li>Removed lazy-initialization that required locking in {@link org.apache.juneau.ClassMeta}.
@@ -25682,7 +25699,7 @@
Child resource paths are specified through {@link org.apache.juneau.rest.annotation.RestResource#path() @RestResource.path()}.
</li>
<li>
- New {@link org.apache.juneau.rest.labels.ChildResourceDescriptions} bean for automatically generating the contents of router resource pages.
+ New <code><del>ChildResourceDescriptions</del></code> bean for automatically generating the contents of router resource pages.
</li>
<li>
Changed <code><ja>@RestMethod</ja>.pattern()</code> to {@link org.apache.juneau.rest.annotation.RestMethod#path() @RestMethod.path()} for naming consistency.
diff --git a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/DirectoryResource.java b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/DirectoryResource.java
index 6bfd28c..ca7a2e2 100644
--- a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/DirectoryResource.java
+++ b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/DirectoryResource.java
@@ -26,6 +26,7 @@ import java.util.logging.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.converters.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.widget.*;
import org.apache.juneau.utils.*;
diff --git a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/DockerRegistryResource.java b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/DockerRegistryResource.java
index a02f634..b167a76 100644
--- a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/DockerRegistryResource.java
+++ b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/DockerRegistryResource.java
@@ -21,7 +21,7 @@ import org.apache.juneau.config.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.client.*;
-import org.apache.juneau.rest.labels.*;
+import org.apache.juneau.rest.helper.*;
/**
* Sample resource that shows how to mirror query results from a Docker registry.
diff --git a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/MethodExampleResource.java b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/MethodExampleResource.java
index fe3ae03..bcfa53b 100644
--- a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/MethodExampleResource.java
+++ b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/MethodExampleResource.java
@@ -19,7 +19,7 @@ import java.util.*;
import org.apache.juneau.http.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
-import org.apache.juneau.rest.labels.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.utils.*;
/**
diff --git a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/PetStoreResource.java b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/PetStoreResource.java
index 5ca3a92..5a1f779 100644
--- a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/PetStoreResource.java
+++ b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/PetStoreResource.java
@@ -29,6 +29,7 @@ import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.annotation.Body;
import org.apache.juneau.rest.converters.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.widget.*;
import org.apache.juneau.serializer.*;
import org.apache.juneau.transforms.*;
diff --git a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/PredefinedLabelsResource.java b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/PredefinedLabelsResource.java
index e04ae04..73fdd69 100644
--- a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/PredefinedLabelsResource.java
+++ b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/PredefinedLabelsResource.java
@@ -18,7 +18,7 @@ import org.apache.juneau.examples.addressbook.*;
import org.apache.juneau.html.annotation.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
-import org.apache.juneau.rest.labels.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.widget.*;
/**
diff --git a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SystemPropertiesResource.java b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SystemPropertiesResource.java
index ca27d3f..0b5b07d 100644
--- a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SystemPropertiesResource.java
+++ b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SystemPropertiesResource.java
@@ -23,6 +23,7 @@ import org.apache.juneau.encoders.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.annotation.Body;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.widget.*;
@RestResource(
@@ -115,13 +116,13 @@ public class SystemPropertiesResource extends BasicRestServlet {
description="Returns the value of the specified system property.",
swagger={
"responses:{",
- "200: {description:'The system property value, or null if not found.'}",
+ "200: {description:'The system property value, or null if not found'}",
"}"
}
)
public String getSystemProperty(
@Path(description="The system property name.", example="PATH") String propertyName
- ) throws Throwable {
+ ) {
return System.getProperty(propertyName);
}
@@ -132,13 +133,13 @@ public class SystemPropertiesResource extends BasicRestServlet {
description="Sets a new value for the specified system property.",
guards=AdminGuard.class
)
- public RedirectToRoot setSystemProperty(
+ public RedirectServletRoot setSystemProperty(
@Path(description="The system property name") String propertyName,
@Body(description="The new system property value") String value
) throws UserNotAdminException {
System.setProperty(propertyName, value);
- return new RedirectToRoot();
+ return RedirectServletRoot.INSTANCE;
}
@RestMethod(
@@ -147,12 +148,12 @@ public class SystemPropertiesResource extends BasicRestServlet {
description="Takes in a map of key/value pairs and creates a set of new system properties.",
guards=AdminGuard.class
)
- public RedirectToRoot setSystemProperties(
+ public RedirectServletRoot setSystemProperties(
@Body(description="The new system property values", example="{key1:'val1',key2:123}") java.util.Properties newProperties
) throws UserNotAdminException {
System.setProperties(newProperties);
- return new RedirectToRoot();
+ return RedirectServletRoot.INSTANCE;
}
@RestMethod(
@@ -161,12 +162,12 @@ public class SystemPropertiesResource extends BasicRestServlet {
description="Deletes the specified system property.",
guards=AdminGuard.class
)
- public RedirectToRoot deleteSystemProperty(
+ public RedirectServletRoot deleteSystemProperty(
@Path(description="The system property name") String propertyName
) throws UserNotAdminException {
System.clearProperty(propertyName);
- return new RedirectToRoot();
+ return RedirectServletRoot.INSTANCE;
}
@RestMethod(
@@ -205,9 +206,13 @@ public class SystemPropertiesResource extends BasicRestServlet {
description="Accepts a simple form post of a system property name/value pair.",
guards=AdminGuard.class
)
- public RedirectToRoot formPagePost(@FormData("name") String name, @FormData("value") String value) throws UserNotAdminException {
+ public RedirectServletRoot formPagePost(
+ @FormData("name") String name,
+ @FormData("value") String value
+ ) throws UserNotAdminException {
+
System.setProperty(name, value);
- return new RedirectToRoot();
+ return RedirectServletRoot.INSTANCE;
}
@@ -223,12 +228,5 @@ public class SystemPropertiesResource extends BasicRestServlet {
super("User is not an administrator");
}
}
-
- @ResponseInfo(code=302, description="Redirect to root.", headers={"Location:{description:'Redirect URI', type:'string'}"}, schema="IGNORE")
- public static class RedirectToRoot extends Redirect {
- public RedirectToRoot() {
- super("servlet:/");
- }
- }
}
\ No newline at end of file
diff --git a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/TempDirResource.java b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/TempDirResource.java
index 280884f..03cc272 100644
--- a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/TempDirResource.java
+++ b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/TempDirResource.java
@@ -24,6 +24,7 @@ import org.apache.commons.io.*;
import org.apache.juneau.dto.html5.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.widget.*;
import org.apache.juneau.utils.*;
diff --git a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/addressbook/AddressBookResource.java b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/addressbook/AddressBookResource.java
index a356770..87da92b 100644
--- a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/addressbook/AddressBookResource.java
+++ b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/addressbook/AddressBookResource.java
@@ -30,6 +30,7 @@ import org.apache.juneau.microservice.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.converters.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.widget.*;
import org.apache.juneau.transform.*;
import org.apache.juneau.utils.*;
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 f81a0ff..18f927d 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
@@ -13,6 +13,7 @@
package org.apache.juneau.examples.rest.petstore;
import static org.apache.juneau.dto.swagger.ui.SwaggerUI.*;
+import static org.apache.juneau.rest.helper.Ok.*;
import java.util.*;
@@ -20,7 +21,7 @@ import org.apache.juneau.internal.*;
import org.apache.juneau.microservice.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
-import org.apache.juneau.rest.labels.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.widget.*;
/**
@@ -474,23 +475,4 @@ public class PetStoreResource extends BasicRestServletJena {
req.getSession().removeAttribute("login-expires");
return OK;
}
-
- //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- // Helper beans
- //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-
- static final Ok OK = new Ok();
-
- @ResponseInfo(code=200, example="'OK'")
- public static class Ok {
-
- @Override
- public String toString() {
- return "OK";
- }
-
- public static Ok fromString(String s) {
- return OK;
- }
- }
}
\ No newline at end of file
diff --git a/juneau-examples/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/RootResourcesTest.java b/juneau-examples/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/RootResourcesTest.java
index c135a52..32cfa70 100644
--- a/juneau-examples/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/RootResourcesTest.java
+++ b/juneau-examples/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/RootResourcesTest.java
@@ -19,7 +19,7 @@ import org.apache.juneau.dto.swagger.*;
import org.apache.juneau.html.*;
import org.apache.juneau.json.*;
import org.apache.juneau.rest.client.*;
-import org.apache.juneau.rest.labels.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.xml.*;
import org.junit.*;
diff --git a/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/DebugResource.java b/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/DebugResource.java
index 957ba0d..c41ba77 100644
--- a/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/DebugResource.java
+++ b/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/DebugResource.java
@@ -20,7 +20,7 @@ import org.apache.juneau.internal.*;
import org.apache.juneau.microservice.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
-import org.apache.juneau.rest.labels.*;
+import org.apache.juneau.rest.helper.*;
/**
* Microservice debug utilities.
diff --git a/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/DirectoryResource.java b/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/DirectoryResource.java
index 7f1b24f..44e2b7f 100755
--- a/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/DirectoryResource.java
+++ b/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/DirectoryResource.java
@@ -28,6 +28,7 @@ import org.apache.juneau.annotation.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.converters.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.transforms.*;
import org.apache.juneau.utils.*;
diff --git a/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java b/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
index 6ba43d1..aff8328 100755
--- a/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
+++ b/juneau-microservice/juneau-microservice-server/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
@@ -29,6 +29,7 @@ import org.apache.juneau.dto.LinkString;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.converters.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.transforms.*;
/**
diff --git a/juneau-microservice/juneau-microservice-test/src/main/java/org/apache/juneau/rest/test/Root.java b/juneau-microservice/juneau-microservice-test/src/main/java/org/apache/juneau/rest/test/Root.java
index f52f038..b5fc1f4 100644
--- a/juneau-microservice/juneau-microservice-test/src/main/java/org/apache/juneau/rest/test/Root.java
+++ b/juneau-microservice/juneau-microservice-test/src/main/java/org/apache/juneau/rest/test/Root.java
@@ -17,7 +17,7 @@ import static org.apache.juneau.http.HttpMethodName.*;
import org.apache.juneau.microservice.resources.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
-import org.apache.juneau.rest.labels.*;
+import org.apache.juneau.rest.helper.*;
@RestResource(
path="/",
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestCallHandler.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestCallHandler.java
index 1b8a3a5..ed09093 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestCallHandler.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestCallHandler.java
@@ -24,6 +24,7 @@ import javax.servlet.*;
import javax.servlet.http.*;
import org.apache.juneau.rest.annotation.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.vars.*;
/**
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestServletGroup.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestServletGroup.java
index 5c437ff..7e30ff7 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestServletGroup.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestServletGroup.java
@@ -15,7 +15,7 @@ package org.apache.juneau.rest;
import static org.apache.juneau.http.HttpMethodName.*;
import org.apache.juneau.rest.annotation.*;
-import org.apache.juneau.rest.labels.*;
+import org.apache.juneau.rest.helper.*;
/**
* Specialized subclass of {@link BasicRestServlet} for showing "group" pages.
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/ResponseHandler.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/ResponseHandler.java
index 802d847..4432a08 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/ResponseHandler.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/ResponseHandler.java
@@ -18,6 +18,7 @@ import javax.servlet.http.*;
import org.apache.juneau.*;
import org.apache.juneau.rest.annotation.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.response.*;
/**
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContext.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContext.java
index 2777171..3d212b1 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContext.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContext.java
@@ -46,6 +46,7 @@ import org.apache.juneau.parser.*;
import org.apache.juneau.plaintext.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.converters.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.response.*;
import org.apache.juneau.rest.vars.*;
import org.apache.juneau.rest.widget.*;
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestRequest.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestRequest.java
index f134546..c4c9928 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestRequest.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestRequest.java
@@ -38,6 +38,7 @@ import org.apache.juneau.httppart.*;
import org.apache.juneau.internal.*;
import org.apache.juneau.parser.*;
import org.apache.juneau.rest.annotation.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.rest.widget.*;
import org.apache.juneau.serializer.*;
import org.apache.juneau.svl.*;
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/BeanDescription.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/BeanDescription.java
similarity index 96%
rename from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/BeanDescription.java
rename to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/BeanDescription.java
index 080594d..0d419a6 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/BeanDescription.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/BeanDescription.java
@@ -10,7 +10,7 @@
// * "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.apache.juneau.rest.labels;
+package org.apache.juneau.rest.helper;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/ChildResourceDescriptions.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ChildResourceDescriptions.java
similarity index 96%
rename from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/ChildResourceDescriptions.java
rename to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ChildResourceDescriptions.java
index 547acd2..d20e3ae 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/ChildResourceDescriptions.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ChildResourceDescriptions.java
@@ -10,7 +10,7 @@
// * "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.apache.juneau.rest.labels;
+package org.apache.juneau.rest.helper;
import java.util.*;
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/RedirectHandler.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/Ok.java
similarity index 59%
copy from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/RedirectHandler.java
copy to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/Ok.java
index 798378c..99c7d85 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/RedirectHandler.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/Ok.java
@@ -1,42 +1,45 @@
-// ***************************************************************************************************************************
-// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file *
-// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
-// * to you 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.apache.juneau.rest.response;
-
-import java.io.*;
-
-import org.apache.juneau.rest.*;
-
-/**
- * Response handler for {@link Redirect} objects.
- *
- * <h5 class='section'>See Also:</h5>
- * <ul>
- * <li class='link'><a class="juneau-rest-server > " href="../../../../../overview-summary.html#juneau-rest-server.MethodReturnTypes">Overview > Method Return Types</a>
- * </ul>
- */
-public final class RedirectHandler implements ResponseHandler {
-
- @Override /* ResponseHandler */
- public boolean handle(RestRequest req, RestResponse res, Object output) throws IOException, RestException {
- if (output instanceof Redirect) {
- Redirect r = (Redirect)output;
- String uri = req.getUriResolver().resolve(r.getURI());
- int rc = r.getHttpResponseCode();
- if (rc != 0)
- res.setStatus(rc); // TODO - This may get ignored by the call below.
- res.sendRedirect(uri);
- return true;
- }
- return false;
- }
-}
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
+// * to you 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.apache.juneau.rest.helper;
+
+import org.apache.juneau.rest.annotation.*;
+
+/**
+ * Represents a simple OK REST response.
+ *
+ * <p>
+ * The response consist of the serialized string <js>"OK"</js>.
+ */
+@ResponseInfo(code=200, example="'OK'")
+public class Ok {
+
+ /**
+ * Reusable instance.
+ */
+ public static final Ok OK = new Ok();
+
+ @Override /* Object */
+ public String toString() {
+ return "OK";
+ }
+
+ /**
+ * Used to convert example into an OK object.
+ *
+ * @param s Ignored.
+ * @return The static {@link #OK} object.
+ */
+ public static Ok fromString(String s) {
+ return OK;
+ }
+}
\ No newline at end of file
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/ReaderResource.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ReaderResource.java
similarity index 96%
rename from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/ReaderResource.java
rename to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ReaderResource.java
index c235cbd..d3d2360 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/ReaderResource.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ReaderResource.java
@@ -10,7 +10,7 @@
// * "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.apache.juneau.rest;
+package org.apache.juneau.rest.helper;
import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.IOUtils.*;
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/ReaderResourceBuilder.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ReaderResourceBuilder.java
similarity index 99%
rename from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/ReaderResourceBuilder.java
rename to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ReaderResourceBuilder.java
index 6cc44c7..6386433 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/ReaderResourceBuilder.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ReaderResourceBuilder.java
@@ -10,7 +10,7 @@
// * "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.apache.juneau.rest;
+package org.apache.juneau.rest.helper;
import java.io.*;
import java.util.*;
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/Redirect.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/Redirect.java
similarity index 92%
rename from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/Redirect.java
rename to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/Redirect.java
index ce222f6..3dcd402 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/Redirect.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/Redirect.java
@@ -10,13 +10,15 @@
// * "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.apache.juneau.rest;
+package org.apache.juneau.rest.helper;
import static org.apache.juneau.internal.StringUtils.*;
import java.net.*;
import java.text.*;
+import org.apache.juneau.rest.annotation.*;
+
/**
* REST methods can return this object as a shortcut for performing <code>HTTP 302</code> redirects.
*
@@ -25,6 +27,7 @@ import java.text.*;
* <li class='link'><a class="doclink" href="../../../../overview-summary.html#juneau-rest-server.Redirect">Overview > juneau-rest-server > Redirect</a>
* </ul>
*/
+@ResponseInfo(code=302, description="Redirect", headers={"Location:{description:'Redirect URI', type:'string', format:'uri'}"}, schema="IGNORE")
public class Redirect {
private final int httpResponseCode;
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/RedirectHandler.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/RedirectServletRoot.java
similarity index 59%
copy from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/RedirectHandler.java
copy to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/RedirectServletRoot.java
index 798378c..71f6f2a 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/RedirectHandler.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/RedirectServletRoot.java
@@ -1,42 +1,34 @@
-// ***************************************************************************************************************************
-// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file *
-// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
-// * to you 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.apache.juneau.rest.response;
-
-import java.io.*;
-
-import org.apache.juneau.rest.*;
-
-/**
- * Response handler for {@link Redirect} objects.
- *
- * <h5 class='section'>See Also:</h5>
- * <ul>
- * <li class='link'><a class="juneau-rest-server > " href="../../../../../overview-summary.html#juneau-rest-server.MethodReturnTypes">Overview > Method Return Types</a>
- * </ul>
- */
-public final class RedirectHandler implements ResponseHandler {
-
- @Override /* ResponseHandler */
- public boolean handle(RestRequest req, RestResponse res, Object output) throws IOException, RestException {
- if (output instanceof Redirect) {
- Redirect r = (Redirect)output;
- String uri = req.getUriResolver().resolve(r.getURI());
- int rc = r.getHttpResponseCode();
- if (rc != 0)
- res.setStatus(rc); // TODO - This may get ignored by the call below.
- res.sendRedirect(uri);
- return true;
- }
- return false;
- }
-}
+// ***************************************************************************************************************************
+// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file *
+// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
+// * to you 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.apache.juneau.rest.helper;
+
+import org.apache.juneau.rest.annotation.*;
+
+/**
+ * Convenience subclass of {@link Redirect} for redirecting a response to the servlet root.
+ */
+@ResponseInfo(description="Redirect to servlet root")
+public class RedirectServletRoot extends Redirect {
+
+ /**
+ * Reusable instance.
+ */
+ public static final RedirectServletRoot INSTANCE = new RedirectServletRoot();
+
+ /**
+ * Constructor.
+ */
+ public RedirectServletRoot() {
+ super("servlet:/");
+ }
+}
\ No newline at end of file
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/ResourceDescription.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ResourceDescription.java
similarity index 94%
rename from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/ResourceDescription.java
rename to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ResourceDescription.java
index 68376b0..d419358 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/ResourceDescription.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/ResourceDescription.java
@@ -10,10 +10,11 @@
// * "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.apache.juneau.rest.labels;
+package org.apache.juneau.rest.helper;
import org.apache.juneau.annotation.*;
import org.apache.juneau.html.annotation.*;
+import org.apache.juneau.rest.annotation.*;
/**
* Shortcut label for child resources. Typically used in router resources.
@@ -29,6 +30,7 @@ import org.apache.juneau.html.annotation.*;
* </ul>
*/
@Bean(properties="name,description", fluentSetters=true)
+@ResponseInfo(schema="IGNORE")
public final class ResourceDescription implements Comparable<ResourceDescription> {
private String name, description;
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/StreamResource.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/StreamResource.java
similarity index 96%
rename from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/StreamResource.java
rename to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/StreamResource.java
index 999c80e..0a68c36 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/StreamResource.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/StreamResource.java
@@ -10,7 +10,7 @@
// * "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.apache.juneau.rest;
+package org.apache.juneau.rest.helper;
import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.IOUtils.*;
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/StreamResourceBuilder.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/StreamResourceBuilder.java
similarity index 99%
rename from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/StreamResourceBuilder.java
rename to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/StreamResourceBuilder.java
index df55172..226de63 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/StreamResourceBuilder.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/StreamResourceBuilder.java
@@ -10,7 +10,7 @@
// * "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.apache.juneau.rest;
+package org.apache.juneau.rest.helper;
import java.io.*;
import java.util.*;
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/package-info.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/package-info.java
similarity index 93%
rename from juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/package-info.java
rename to juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/package-info.java
index 3ea441b..fa950f7 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/labels/package-info.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/helper/package-info.java
@@ -13,6 +13,6 @@
***************************************************************************************************************************/
/**
- * REST Interface Label Classes
+ * REST Interface Helper Classes
*/
-package org.apache.juneau.rest.labels;
\ No newline at end of file
+package org.apache.juneau.rest.helper;
\ No newline at end of file
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/RedirectHandler.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/RedirectHandler.java
index 798378c..9964c42 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/RedirectHandler.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/RedirectHandler.java
@@ -15,6 +15,7 @@ package org.apache.juneau.rest.response;
import java.io.*;
import org.apache.juneau.rest.*;
+import org.apache.juneau.rest.helper.*;
/**
* Response handler for {@link Redirect} objects.
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/StreamableHandler.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/StreamableHandler.java
index 766016b..6a92040 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/StreamableHandler.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/StreamableHandler.java
@@ -20,6 +20,7 @@ import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.http.*;
import org.apache.juneau.rest.*;
+import org.apache.juneau.rest.helper.*;
/**
* Response handler for {@link Writable} and {@link ReaderResource} objects.
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/WritableHandler.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/WritableHandler.java
index dad3bec..b5f37b8 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/WritableHandler.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/response/WritableHandler.java
@@ -20,6 +20,7 @@ import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.http.*;
import org.apache.juneau.rest.*;
+import org.apache.juneau.rest.helper.*;
/**
* Response handler for {@link Writable} and {@link ReaderResource} objects.
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/FileVar.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/FileVar.java
index 1f3e3e8..384c81b 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/FileVar.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/FileVar.java
@@ -13,6 +13,7 @@
package org.apache.juneau.rest.vars;
import org.apache.juneau.rest.*;
+import org.apache.juneau.rest.helper.*;
import org.apache.juneau.svl.*;
import org.apache.juneau.utils.*;
--
To stop receiving notification emails like this one, please contact
jamesbognar@apache.org.