Repository: incubator-juneau Updated Branches: refs/heads/master 33f89d581 -> b59ffb4f3
Clean up javadocs Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/b59ffb4f Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/b59ffb4f Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/b59ffb4f Branch: refs/heads/master Commit: b59ffb4f3229ee65b573719fecc74410b44d46d6 Parents: 33f89d5 Author: JamesBognar <[email protected]> Authored: Mon Jun 26 11:00:38 2017 -0400 Committer: JamesBognar <[email protected]> Committed: Mon Jun 26 11:00:38 2017 -0400 ---------------------------------------------------------------------- .../juneau/microservice/Microservice.java | 21 +-- .../apache/juneau/microservice/Resource.java | 12 +- .../juneau/microservice/ResourceGroup.java | 12 +- .../org/apache/juneau/microservice/package.html | 144 ++++++++++++------- 4 files changed, 121 insertions(+), 68 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/b59ffb4f/juneau-microservice/src/main/java/org/apache/juneau/microservice/Microservice.java ---------------------------------------------------------------------- diff --git a/juneau-microservice/src/main/java/org/apache/juneau/microservice/Microservice.java b/juneau-microservice/src/main/java/org/apache/juneau/microservice/Microservice.java index 12c0a9d..b65aa34 100755 --- a/juneau-microservice/src/main/java/org/apache/juneau/microservice/Microservice.java +++ b/juneau-microservice/src/main/java/org/apache/juneau/microservice/Microservice.java @@ -29,16 +29,15 @@ import org.apache.juneau.utils.*; /** * Parent class for all microservices. * <p> - * A microservice defines a simple API for starting and stopping simple Java services - * contained in executable jars. + * A microservice defines a simple API for starting and stopping simple Java services contained in executable jars. * <p> * The general command for invoking these services is... * <p class='bcode'> * java -jar mymicroservice.jar [mymicroservice.cfg] * </p> * <p> - * Your microservice class must be specified as the <jk>Main-Class</jk> entry in - * the manifest file of your microservice jar file. + * Your microservice class must be specified as the <jk>Main-Class</jk> entry in the manifest file of your microservice + * jar file. * * <h6 class='topic'>Microservice Configuration</h6> * @@ -50,7 +49,7 @@ import org.apache.juneau.utils.*; * <li>{@link #getManifest()} - The manifest file for the main jar file. * </ul> * - * <h6 class='topic'>Entrypoint Method</h6> + * <h6 class='topic'>Entry point Method</h6> * * Subclasses must implement a static void main method as the entry point for the microservice. * Typically, this method will simply consist of the following... @@ -87,7 +86,8 @@ import org.apache.juneau.utils.*; * Subclasses can optionally override the following methods to provide customized behavior: * <p> * <ul class='spaced-list'> - * <li>{@link #createVarResolver()} - Creates the {@link VarResolver} used to resolve variables in the config file returned by {@link #getConfig()}. + * <li>{@link #createVarResolver()} - Creates the {@link VarResolver} used to resolve variables in the config file + * returned by {@link #getConfig()}. * </ul> */ public abstract class Microservice { @@ -196,7 +196,8 @@ public abstract class Microservice { } /** - * Same as {@link #setManifest(Manifest)} except finds and loads the manifest file of the jar file that the specified class is contained within. + * Same as {@link #setManifest(Manifest)} except finds and loads the manifest file of the jar file that the + * specified class is contained within. * * @param c The class whose jar file contains the manifest to use for this microservice. * @return This object (for method chaining). @@ -219,7 +220,8 @@ public abstract class Microservice { * <li><code>$MF{key}</code>, <code>$MF{key,default}</code> - Manifest file entries. * <li><code>$ARG{key}</code>, <code>$ARG{key,default}</code> - Command-line arguments. * <li><code>$IF{boolArg,thenValue}</code>, <code>$IF{boolArg,thenValue,elseValue}</code> - If-block logic. - * <li><code>$SWITCH{stringArg,pattern,thenVal...}</code>, <code>$SWITCH{stringArg,pattern,thenVal,elseVal...}</code> - Switch-block logic. + * <li><code>$SWITCH{stringArg,pattern,thenVal...}</code>, + * <code>$SWITCH{stringArg,pattern,thenVal,elseVal...}</code> - Switch-block logic. * </ul> * <p> * Subclasses can override this method to provide their own variables. @@ -285,7 +287,8 @@ public abstract class Microservice { * <ol class='spaced-list'> * <li>The first argument passed to the microservice jar. * <li>The <code>Main-ConfigFile</code> entry in the microservice jar manifest file. - * <li>The name of the microservice jar with a <js>".cfg"</js> suffix (e.g. <js>"mymicroservice.jar"</js>-><js>"mymicroservice.cfg"</js>). + * <li>The name of the microservice jar with a <js>".cfg"</js> suffix (e.g. + * <js>"mymicroservice.jar"</js>-><js>"mymicroservice.cfg"</js>). * </ol> * <p> * If all methods for locating the config file fail, then this method returns <jk>null</jk>. http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/b59ffb4f/juneau-microservice/src/main/java/org/apache/juneau/microservice/Resource.java ---------------------------------------------------------------------- diff --git a/juneau-microservice/src/main/java/org/apache/juneau/microservice/Resource.java b/juneau-microservice/src/main/java/org/apache/juneau/microservice/Resource.java index eaeb701..38b5c69 100755 --- a/juneau-microservice/src/main/java/org/apache/juneau/microservice/Resource.java +++ b/juneau-microservice/src/main/java/org/apache/juneau/microservice/Resource.java @@ -22,16 +22,18 @@ import org.apache.juneau.svl.vars.*; * In additional to the functionality of the {@link RestServletDefault} group, * augments the {@link RestContext#getVarResolver()} method with the following additional variable types: * <ul class='spaced-list'> - * <li><code class='snippet'>$ARG{...}</code> - Command line arguments pulled from {@link Microservice#getArgs()}.<br> + * <li><code class='snippet'>$ARG{...}</code> - Command line arguments pulled from {@link Microservice#getArgs()}. + * <br> * <h6 class='figure'>Example:</h6> * <p class='bcode'> - * String firstArg = request.getVarResolver().resolve(<js>"$ARG{0}"</js>); <jc>// First argument.</jc> - * String namedArg = request.getVarResolver().resolve(<js>"$ARG{myarg}"</js>); <jc>// Named argument (e.g. "myarg=foo"). </jc> + * String firstArg = request.getVarResolver().resolve(<js>"$ARG{0}"</js>); <jc>// First argument.</jc> + * String namedArg = request.getVarResolver().resolve(<js>"$ARG{myarg}"</js>); <jc>// Named argument (e.g. "myarg=foo"). </jc> * </p> - * <li><code class='snippet'>$MF{...}</code> - Manifest file entries pulled from {@link Microservice#getManifest()}.<br> + * <li><code class='snippet'>$MF{...}</code> - Manifest file entries pulled from {@link Microservice#getManifest()}. + * <br> * <h6 class='figure'>Example:</h6> * <p class='bcode'> - * String mainClass = request.getVarResolver().resolve(<js>"$MF{Main-Class}"</js>); <jc>// Main class. </jc> + * String mainClass = request.getVarResolver().resolve(<js>"$MF{Main-Class}"</js>); <jc>// Main class. </jc> * </p> * </ul> */ http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/b59ffb4f/juneau-microservice/src/main/java/org/apache/juneau/microservice/ResourceGroup.java ---------------------------------------------------------------------- diff --git a/juneau-microservice/src/main/java/org/apache/juneau/microservice/ResourceGroup.java b/juneau-microservice/src/main/java/org/apache/juneau/microservice/ResourceGroup.java index e48ccb5..8728c00 100755 --- a/juneau-microservice/src/main/java/org/apache/juneau/microservice/ResourceGroup.java +++ b/juneau-microservice/src/main/java/org/apache/juneau/microservice/ResourceGroup.java @@ -22,17 +22,19 @@ import org.apache.juneau.svl.vars.*; * In additional to the functionality of the {@link RestServletGroupDefault} group, * augments the {@link RestContext#getVarResolver()} method with the following additional variable types: * <ul class='spaced-list'> - * <li><jk>$ARG{...}</jk> - Command line arguments.<br> - * Resolves values from {@link Microservice#getArgs()}.<br> + * <li><jk>$ARG{...}</jk> - Command line arguments. + * <br> + * Resolves values from {@link Microservice#getArgs()}. + * <br> * <h6>Example:</h6> * <p class='bcode'> - * String firstArg = request.getVarResolver().resolve(<js>"$ARG{0}"</js>); <jc>// First argument.</jc> - * String namedArg = request.getVarResolver().resolve(<js>"$ARG{myarg}"</js>); <jc>// Named argument (e.g. "myarg=foo"). </jc> + * String firstArg = request.getVarResolver().resolve(<js>"$ARG{0}"</js>); <jc>// First argument.</jc> + * String namedArg = request.getVarResolver().resolve(<js>"$ARG{myarg}"</js>); <jc>// Named argument (e.g. "myarg=foo"). </jc> * </p> * <li><jk>$MF{...}</jk> - Manifest file entries. * <h6>Example:</h6> * <p class='bcode'> - * String mainClass = request.getVarResolver().resolve(<js>"$MF{Main-Class}"</js>); <jc>// Main class. </jc> + * String mainClass = request.getVarResolver().resolve(<js>"$MF{Main-Class}"</js>); <jc>// Main class. </jc> * </p> * </ul> */ http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/b59ffb4f/juneau-microservice/src/main/java/org/apache/juneau/microservice/package.html ---------------------------------------------------------------------- diff --git a/juneau-microservice/src/main/java/org/apache/juneau/microservice/package.html b/juneau-microservice/src/main/java/org/apache/juneau/microservice/package.html index 36d8e9f..02b427a 100755 --- a/juneau-microservice/src/main/java/org/apache/juneau/microservice/package.html +++ b/juneau-microservice/src/main/java/org/apache/juneau/microservice/package.html @@ -85,7 +85,7 @@ <h2 class='topic' onclick='toggle(this)'>1 - Microservice Introduction</h2> <div class='topic'> <p> - The Juneau Cloud Microservice is an API for creating standalone executable jars that can be used to + The Juneau Cloud Microservice is an API for creating stand-alone executable jars that can be used to start lightweight configurable REST interfaces with all the power of the Juneau REST server and client APIs. </p> <p> @@ -98,9 +98,11 @@ <ul class='spaced-list'> <li>An out-of-the-box zipped Eclipse project to get started quickly. <li>Packaged as a simple executable jar and configuration file. - <li>All the power of the Juneau Cloud Tools for defining REST servlets and clients with the ability to serialize and parse POJOs as HTML, JSON, XML, RDF, URL-Encoding, and others. + <li>All the power of the Juneau Cloud Tools for defining REST servlets and clients with the ability to + serialize and parse POJOs as HTML, JSON, XML, RDF, URL-Encoding, and others. <li>An extensible API that allows you to hook into various lifecycle events. - <li>Simple-to-use APIs for accessing manifest file entries, command-line arguments, and external configuration file properties. + <li>Simple-to-use APIs for accessing manifest file entries, command-line arguments, and external configuration + file properties. <li>Predefined REST resources for configuring microservice and accessing log files. </ul> </div> @@ -123,11 +125,15 @@ </p> <ol class='spaced-list'> <li>Download the latest microservice-project zip file (e.g. <l>microservice-project-5.2.zip</l>). - <li>In your Eclipse workspace, go to <b>File->Import->General->Existing Projects into Workspace</b> and click <b>Next</b>.<br><br> + <li>In your Eclipse workspace, go to <b>File->Import->General->Existing Projects into Workspace</b> + and click <b>Next</b>. + <br><br> <img class='bordered' src="doc-files/instructions1.png"> - <li>Select the zip file and click <b>Finish</b>.<br><br> + <li>Select the zip file and click <b>Finish</b>. + <br><br> <img class='bordered' src="doc-files/instructions2.png"> - <li>In your workspace, you should now see the following project:<br><br> + <li>In your workspace, you should now see the following project: + <br><br> <img class='bordered' src="doc-files/instructions3.png"> </ol> <p> @@ -135,7 +141,9 @@ </p> <ul class='spaced-list'> <li><l>META-INF/MANIFEST.MF</l> - The manifest file. <br> - This defines the entry point, classpath, top-level REST resources, and location of external configuration file. <br><br> + This defines the entry point, classpath, top-level REST resources, and location of external + configuration file. + <br><br> <p class='bcode'> <mk>Main-Class</mk>: org.apache.juneau.microservice.RestMicroservice <mk>Rest-Resources</mk>: @@ -153,10 +161,13 @@ lib/juneau-all-5.2.jar lib/org.apache.commons.fileupload_1.3.1.jar </p> - <li><l>RestMicroservice.java</l> - The application class. <br> + <li><l>RestMicroservice.java</l> - The application class. + <br> This is a specialized microservice in Juneau for exposing REST servlets. - <li><l>RootResources.java</l> - The top-level REST resource. <br> - This class routes HTTP requests to child resources:<br><br> + <li><l>RootResources.java</l> - The top-level REST resource. + <br> + This class routes HTTP requests to child resources: + <br><br> <p class='bcode'> <jd>/** * Root microservice page. @@ -179,7 +190,8 @@ } </p> <li><l>microservice.cfg</l> - The external configuration file. <br> - A deceivingly simple yet powerful INI-style configuration file:<br><br> + A deceivingly simple yet powerful INI-style configuration file: + <br><br> <p class='bcode'> <cc>#================================================================================ # Basic configuration file for SaaS microservices @@ -239,15 +251,18 @@ </p> <p> To build your microservice, right-click on <l>build.xml</l> and select <b>Run As->Ant Build</b>. - Once complete (which should only take about 1 second), if you refresh your project, you should see the following new directory: + Once complete (which should only take about 1 second), if you refresh your project, you should see the + following new directory: </p> <img class='bordered' src='doc-files/build1.png'> <p> - If you open up a command prompt in the <l>build/microservice</l> folder, you can start your microservice as follows: + If you open up a command prompt in the <l>build/microservice</l> folder, you can start your microservice as + follows: </p> <img class='bordered' src='doc-files/build2.png'> <p> - If you get this error message: <code class='snippet'>java.net.BindException: Address already in use</code>, then this microservice is already running elsewhere and so it cannot bind to port 10000. + If you get this error message: <code class='snippet'>java.net.BindException: Address already in use</code>, + then this microservice is already running elsewhere and so it cannot bind to port 10000. </p> </div> </div> @@ -286,11 +301,14 @@ </p> <p> The <mk>Rest-Resources</mk> entry is a comma-delimited list of REST resources. - These are classes that subclass from either {@link org.apache.juneau.microservice.Resource} or {@link org.apache.juneau.microservice.ResourceGroup}. + These are classes that subclass from either {@link org.apache.juneau.microservice.Resource} or + {@link org.apache.juneau.microservice.ResourceGroup}. This is a specialized entry when using <l>org.apache.juneau.microservice.RestMicroservice</l>. - In most cases, you'll want to specify a single top-level "grouping" REST resource mapped to <l>"/"</l> that extends from {@link org.apache.juneau.microservice.ResourceGroup} - so that you can define multiple child resources. - In this case, we're pointing to a resource defined in our project: <l>org.apache.juneau.microservice.sample.RootResources</l>. + In most cases, you'll want to specify a single top-level "grouping" REST resource mapped to <l>"/"</l> that + extends from {@link org.apache.juneau.microservice.ResourceGroup} so that you can define multiple child + resources. + In this case, we're pointing to a resource defined in our project: + <l>org.apache.juneau.microservice.sample.RootResources</l>. </p> <p> The <mk>Main-ConfigFile</mk> entry points to the location of an external configuration file for our microservice. @@ -306,9 +324,12 @@ <ul class='spaced-list'> <li><mk>Rest-Port</mk> - The HTTP port to use. Default is <l>10000</l>. <li><mk>Rest-ContextPath</mk> - The servlet context path. Default is <l>"/"</l>. - <li><mk>Rest-AuthType</mk> - Authentication support.<br> - Possible values are <l>"NONE"</l> and <l>"BASIC"</l>.<br> - Default is <l>"NONE"</l>.<br> + <li><mk>Rest-AuthType</mk> - Authentication support. + <br> + Possible values are <l>"NONE"</l> and <l>"BASIC"</l>. + <br> + Default is <l>"NONE"</l>. + <br> Used with the following additional settings: <ul> <li><mk>Rest-LoginUser</mk> @@ -337,8 +358,9 @@ String[] restResources = Microservice.<jsm>getManifest</jsm>().getStringArray(<js>"Rest-Resources"</js>); </p> <p> - Since this method returns an {@link org.apache.juneau.ObjectMap}, it's possible to retrieve entries as a wide variety - of object types such as java primitives, arrays, collections, maps, or even POJOs serialized as JSON. + Since this method returns an {@link org.apache.juneau.ObjectMap}, it's possible to retrieve entries as a + wide variety of object types such as java primitives, arrays, collections, maps, or even POJOs serialized + as JSON. </p> </div> </div> @@ -515,10 +537,12 @@ In your microservice, you can remove all lines from your config file that have default values. </ul> <p> - Although the config file looks deceptively simple, the config file API is a very powerful feature with many capabilities, including: + Although the config file looks deceptively simple, the config file API is a very powerful feature with many + capabilities, including: </p> <ul class='spaced-list'> - <li>The ability to use variables to reference environment variables, system properties, other config file entries, and a host of other types. + <li>The ability to use variables to reference environment variables, system properties, other config file + entries, and a host of other types. <li>The ability to store and retrieve POJOs as JSON. <li>APIs for updating, modifying, and saving configuration files without losing comments or formatting. <li>Extensive listener APIs. @@ -592,7 +616,8 @@ </p> <h6 class='topic'>Additional Information</h6> <ul class='doctree'> - <li class='jp'><a href='../core/ini/package-summary.html#TOC'><l>org.apache.juneau.ini</l></a> - Juneau Configuration API Javadocs. + <li class='jp'><a href='../core/ini/package-summary.html#TOC'><l>org.apache.juneau.ini</l></a> + - Juneau Configuration API Javadocs. </ul> <!-- ======================================================================================================== --> @@ -603,8 +628,9 @@ There are 3 primary ways of getting access to the config file. </p> <ul class='doctree'> - <li class='jm'>{@link org.apache.juneau.microservice.Microservice#getConfig()} - A static method that can be used to access - the config file from anywhere in your application.<br> + <li class='jm'>{@link org.apache.juneau.microservice.Microservice#getConfig()} + - A static method that can be used to access the config file from anywhere in your application. + <br> When using this method, any of the following variables can be resolved: <ul> <li><l>$S{key}, $S{key,default}</l> - System properties. @@ -613,9 +639,12 @@ <li><l>$MF{key}, $MF{key,default}</l> - Manifest file entries. <li><l>$ARG{key}, $ARG{key,default}</l> - Command-line arguments. </ul> - Additional user-defined variables can be defined by overriding the {@link org.apache.juneau.microservice.Microservice#createVarResolver()} method + Additional user-defined variables can be defined by overriding the + {@link org.apache.juneau.microservice.Microservice#createVarResolver()} method and using the {@link org.apache.juneau.rest.RestConfig#addVars(Class...)} method. - <li class='jm'>{@link org.apache.juneau.rest.RestContext#getConfigFile()} - An instance method to access it from inside a REST servlet.<br> + <li class='jm'>{@link org.apache.juneau.rest.RestContext#getConfigFile()} + - An instance method to access it from inside a REST servlet. + <br> The following variables are available in addition to the variables defined above: <ul> <li><l>$I{key}, $I{key,default}</l> - Servlet initialization parameters. @@ -642,13 +671,17 @@ } </p> <p> - Additional user-defined variables can be defined at this level by overriding the {@link org.apache.juneau.microservice.Resource#init(RestConfig)} method + Additional user-defined variables can be defined at this level by overriding the + {@link org.apache.juneau.microservice.Resource#init(RestConfig)} method and using the {@link org.apache.juneau.rest.RestConfig#addVars(Class...)} method. </p> - <li class='jm'>{@link org.apache.juneau.rest.RestRequest#getConfigFile()} - An instance method to access it from inside a REST method.<br> + <li class='jm'>{@link org.apache.juneau.rest.RestRequest#getConfigFile()} + - An instance method to access it from inside a REST method. + <br> The following variables are available in addition to the variables defined above: <ul> - <li><l>$L{key}, $L{key,args}</l> - Localized variables pulled from {@link org.apache.juneau.rest.RestRequest#getMessage(String, Object...)}. + <li><l>$L{key}, $L{key,args}</l> - Localized variables pulled from + {@link org.apache.juneau.rest.RestRequest#getMessage(String, Object...)}. <li><l>$R{key}</l> - Request variables. <ul> <li><l>$R{attribute.X}</l> - Value returned by {@link org.apache.juneau.rest.RestRequest#getAttribute(String)} converted to a string. @@ -711,7 +744,8 @@ <ck>MyHelloResource.HelloMessage</ck> = <cv>Hello {0}!</cv> </p> <p> - Additional user-defined variables can be defined at this level by overriding the {@link org.apache.juneau.rest.RestConfig#addVars(Class...)} method. + Additional user-defined variables can be defined at this level by overriding the + {@link org.apache.juneau.rest.RestConfig#addVars(Class...)} method. </p> </ul> <p> @@ -725,12 +759,15 @@ <li>The call to <l>req.getConfig().getString("MyHelloResource/localizedGreeting")</l> finds the value <l>"$L{HelloMessage,$R{path.person}}"</l>. <li>The arguments in the <l>$L{}</l> variable get resolved, resulting in <l>"$L{HelloMessage,Bob}"</l>. - <li>The <l>$L{}</l> variable gets resolved to the message <l>"Hello {0}!"</l> in the localized properties file of the servlet based on the <l>Accept-Language</l> header on the request. + <li>The <l>$L{}</l> variable gets resolved to the message <l>"Hello {0}!"</l> in the localized properties + file of the servlet based on the <l>Accept-Language</l> header on the request. <li>The arguments get replaced in the message resulting in <l>"Hello Bob!"</l>. - <li>The resulting message <l>"Hello Bob!"</l> is returned as a POJO to be serialized to whatever content type was specified on the <l>Accept</l> header on the request. -</ol> + <li>The resulting message <l>"Hello Bob!"</l> is returned as a POJO to be serialized to whatever content + type was specified on the <l>Accept</l> header on the request. + </ol> <p> - This particular example is needlessly complex, but it gives an idea of how variables can be used recursively to produce sophisticated results + This particular example is needlessly complex, but it gives an idea of how variables can be used + recursively to produce sophisticated results </p> </div> </div> @@ -768,13 +805,16 @@ } </p> <ul class='spaced-list'> - <li>The </l>label</l> and <l>description</l> annotations define the titles on the page.<br> - These can be globalized using <l>$L{...}</l> variables, or by defining specially-named properties in the properties - file for the resource. + <li>The </l>label</l> and <l>description</l> annotations define the titles on the page. + <br> + These can be globalized using <l>$L{...}</l> variables, or by defining specially-named properties in the + properties file for the resource. <li>In this case, the <l>path</l> annotation defines the context root of your application since it was - not specified in the manifest or config file.<br> + not specified in the manifest or config file. + <br> Therefore, this resource is mapped to <l>http://localhost:10000</l>. - <li>The <l>children</l> annotation make up the list of child resources.<br> + <li>The <l>children</l> annotation make up the list of child resources. + <br> These child resources can be anything that extends from <l>Servlet</l>, although usually they will be subclasses of {@link org.apache.juneau.microservice.Resource} or other resource groups. </ul> @@ -804,12 +844,14 @@ } </p> <p> - The {@link org.apache.juneau.microservice.Resource} and {@link org.apache.juneau.microservice.ResourceGroup} classes - are powerful servlets designed specifically for creating REST APIs using nothing more than serialized and parsed POJOs. + The {@link org.apache.juneau.microservice.Resource} and {@link org.apache.juneau.microservice.ResourceGroup} + classes are powerful servlets designed specifically for creating REST APIs using nothing more than serialized + and parsed POJOs. </p> <h6 class='topic'>Additional Information</h6> <ul class='doctree'> - <li class='jp'><a href='../server/package-summary.html#TOC'><l>org.apache.juneau.rest</l></a> - Juneau Server API Javadocs. + <li class='jp'><a href='../server/package-summary.html#TOC'><l>org.apache.juneau.rest</l></a> + - Juneau Server API Javadocs. </ul> </div> @@ -819,15 +861,19 @@ <h2 class='topic' onclick='toggle(this)'>6 - RestMicroservice</h2> <div class='topic'> <p> - The {@link org.apache.juneau.microservice.RestMicroservice} class is the main application entrypoint for REST microservices. + The {@link org.apache.juneau.microservice.RestMicroservice} class is the main application entry-point for REST + microservices. </p> <p> The class hierarchy is: </p> <ul class='doctree'> - <li class='jac'>{@link org.apache.juneau.microservice.Microservice} - Abstract class that defines simple start/stop methods and access to the manifest file, config file, and arguments. + <li class='jac'>{@link org.apache.juneau.microservice.Microservice} + - Abstract class that defines simple start/stop methods and access to the manifest file, config file, and + arguments. <ul> - <li class='jc'>{@link org.apache.juneau.microservice.RestMicroservice} - Specialized microservice for starting up REST interfaces using Jetty and specifying REST servlets + <li class='jc'>{@link org.apache.juneau.microservice.RestMicroservice} + - Specialized microservice for starting up REST interfaces using Jetty and specifying REST servlets through the manifest file or config file. </ul> </ul>
