Issue #984 Improve module listing
This commit is contained in:
parent
9148678dad
commit
91e9e7b76a
|
@ -1,6 +1,10 @@
|
||||||
[description]
|
[description]
|
||||||
Enables GCloud Datastore API and implementation
|
Enables GCloud Datastore API and implementation
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
3rdparty
|
||||||
|
gcloud
|
||||||
|
|
||||||
[depends]
|
[depends]
|
||||||
gcloud
|
gcloud
|
||||||
jcl-api
|
jcl-api
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
[description]
|
[description]
|
||||||
Control GCloud API classpath
|
Control GCloud API classpath
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
3rdparty
|
||||||
|
gcloud
|
||||||
|
|
||||||
[files]
|
[files]
|
||||||
basehome:modules/gcloud/gcloud.xml|etc/gcloud.xml
|
basehome:modules/gcloud/gcloud.xml|etc/gcloud.xml
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
[description]
|
[description]
|
||||||
Enables GCloudDatastore session management.
|
Enables GCloudDatastore session management.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
gcloud
|
||||||
|
|
||||||
[provides]
|
[provides]
|
||||||
session-store
|
session-store
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Deploys the Hawtio console as a webapplication.
|
Deploys the Hawtio console as a webapplication.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
3rdparty
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
stats
|
stats
|
||||||
deploy
|
deploy
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Deploys the JAMon webapplication
|
Deploys the JAMon webapplication
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
3rdparty
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
stats
|
stats
|
||||||
deploy
|
deploy
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Deploys the Jminix JMX Console within the server
|
Deploys the Jminix JMX Console within the server
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
3rdparty
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
stats
|
stats
|
||||||
jmx
|
jmx
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Deploys the Jolokia console as a web application.
|
Deploys the Jolokia console as a web application.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
3rdparty
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
stats
|
stats
|
||||||
deploy
|
deploy
|
||||||
|
|
|
@ -2,6 +2,12 @@
|
||||||
Enables HTTP2 protocol support on the TLS(SSL) Connector,
|
Enables HTTP2 protocol support on the TLS(SSL) Connector,
|
||||||
using the ALPN extension to select which protocol to use.
|
using the ALPN extension to select which protocol to use.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
http2
|
||||||
|
http
|
||||||
|
ssl
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
ssl
|
ssl
|
||||||
alpn
|
alpn
|
||||||
|
|
|
@ -2,6 +2,11 @@
|
||||||
Enables the HTTP2C protocol on the HTTP Connector
|
Enables the HTTP2C protocol on the HTTP Connector
|
||||||
The connector will accept both HTTP/1 and HTTP/2 connections.
|
The connector will accept both HTTP/1 and HTTP/2 connections.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
http2
|
||||||
|
http
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
http
|
http
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Enables session data store in a local Infinispan cache
|
Enables session data store in a local Infinispan cache
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
|
||||||
[provides]
|
[provides]
|
||||||
session-store
|
session-store
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Enables session data store in a remote Infinispan cache
|
Enables session data store in a remote Infinispan cache
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
|
||||||
[provides]
|
[provides]
|
||||||
session-store
|
session-store
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Memcache cache for SessionData
|
Memcache cache for SessionData
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
|
||||||
[depends]
|
[depends]
|
||||||
session-store
|
session-store
|
||||||
slf4j-api
|
slf4j-api
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Enables NoSql session management with a MongoDB driver.
|
Enables NoSql session management with a MongoDB driver.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
|
||||||
[provides]
|
[provides]
|
||||||
session-store
|
session-store
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,9 @@ Enables the DebugListener to generate additional
|
||||||
logging regarding detailed request handling events.
|
logging regarding detailed request handling events.
|
||||||
Renames threads to include request URI.
|
Renames threads to include request URI.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
debug
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
deploy
|
deploy
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Deprecated Debug Log using the DebugHandle.
|
Deprecated Debug Log using the DebugHandle.
|
||||||
Replaced with the debug module.
|
Replaced with the debug module.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
debug
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
server
|
server
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Adds all jar files discovered in $JETTY_HOME/lib/ext
|
Adds all jar files discovered in $JETTY_HOME/lib/ext
|
||||||
and $JETTY_BASE/lib/ext to the servers classpath.
|
and $JETTY_BASE/lib/ext to the servers classpath.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
classpath
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
lib/ext/**.jar
|
lib/ext/**.jar
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Enable GzipHandler for dynamic gzip compression
|
Enable GzipHandler for dynamic gzip compression
|
||||||
for the entire server.
|
for the entire server.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
handler
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
server
|
server
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Adds a forwarded request customizer to the HTTP Connector
|
Adds a forwarded request customizer to the HTTP Connector
|
||||||
to process forwarded-for style headers from a proxy.
|
to process forwarded-for style headers from a proxy.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
http
|
http
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,10 @@ Enables a HTTP connector on the server.
|
||||||
By default HTTP/1 is support, but HTTP2C can
|
By default HTTP/1 is support, but HTTP2C can
|
||||||
be added to the connector with the http2c module.
|
be added to the connector with the http2c module.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
http
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
server
|
server
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,12 @@
|
||||||
[description]
|
[description]
|
||||||
Adds HTTPS protocol support to the TLS(SSL) Connector
|
Adds HTTPS protocol support to the TLS(SSL) Connector
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
https
|
||||||
|
http
|
||||||
|
ssl
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
ssl
|
ssl
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Enable the ipaccess handler to apply a white/black list
|
Enable the ipaccess handler to apply a white/black list
|
||||||
control of the remote IP of requests.
|
control of the remote IP of requests.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
handler
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
server
|
server
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
[description]
|
[description]
|
||||||
A noop module that creates an ini template useful for
|
A noop module that creates an ini template useful for
|
||||||
setting JVM arguments (eg -Xmx )
|
setting JVM arguments (eg -Xmx )
|
||||||
|
|
||||||
[ini-template]
|
[ini-template]
|
||||||
## JVM Configuration
|
## JVM Configuration
|
||||||
## If JVM args are include in an ini file then --exec is needed
|
## If JVM args are include in an ini file then --exec is needed
|
||||||
|
|
|
@ -1,6 +1,11 @@
|
||||||
[description]
|
[description]
|
||||||
Enables logback request log.
|
Enables logback request log.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
requestlog
|
||||||
|
logging
|
||||||
|
logback
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
server
|
server
|
||||||
logback-core
|
logback-core
|
||||||
|
|
|
@ -5,6 +5,10 @@ This allows a Proxy operating in TCP mode to transport
|
||||||
details of the proxied connection to the server.
|
details of the proxied connection to the server.
|
||||||
Both V1 and V2 versions of the protocol are supported.
|
Both V1 and V2 versions of the protocol are supported.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
ssl
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
ssl
|
ssl
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Enables a NCSA style request log.
|
Enables a NCSA style request log.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
requestlog
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
server
|
server
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,9 @@ Adds the $JETTY_HOME/resources and/or $JETTY_BASE/resources
|
||||||
directory to the server classpath. Useful for configuration
|
directory to the server classpath. Useful for configuration
|
||||||
property files (eg jetty-logging.properties)
|
property files (eg jetty-logging.properties)
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
classpath
|
||||||
|
|
||||||
[lib]
|
[lib]
|
||||||
resources/
|
resources/
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,9 @@ If not enabled, sessions will use a HashSessionCache by default, so enabling
|
||||||
via this module is only needed if the configuration properties need to be
|
via this module is only needed if the configuration properties need to be
|
||||||
changed.
|
changed.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
|
||||||
[provides]
|
[provides]
|
||||||
session-cache
|
session-cache
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
A trivial SessionCache that does not actually cache sessions.
|
A trivial SessionCache that does not actually cache sessions.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
|
||||||
[provides]
|
[provides]
|
||||||
session-cache
|
session-cache
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Enables caching of SessionData in front of a SessionDataStore.
|
Enables caching of SessionData in front of a SessionDataStore.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
session-store
|
session-store
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Enables session persistent storage in files.
|
Enables session persistent storage in files.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
|
||||||
[provides]
|
[provides]
|
||||||
session-store
|
session-store
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
[description]
|
[description]
|
||||||
Enables JDBC peristent/distributed session storage.
|
Enables JDBC peristent/distributed session storage.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
|
||||||
[provides]
|
[provides]
|
||||||
session-store
|
session-store
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,9 @@ created or by enabling other session-cache or session-store
|
||||||
modules. Without this module enabled, the server may still
|
modules. Without this module enabled, the server may still
|
||||||
use sessions, but their management cannot be configured.
|
use sessions, but their management cannot be configured.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
session
|
||||||
|
|
||||||
[depends]
|
[depends]
|
||||||
server
|
server
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,10 @@ Enables a TLS(SSL) Connector on the server.
|
||||||
This may be used for HTTPS and/or HTTP2 by enabling
|
This may be used for HTTPS and/or HTTP2 by enabling
|
||||||
the associated support modules.
|
the associated support modules.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
ssl
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
server
|
server
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Enable detailed statistics collection for the server,
|
Enable detailed statistics collection for the server,
|
||||||
available via JMX.
|
available via JMX.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
handler
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
server
|
server
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,9 @@
|
||||||
# Applies ThreadLimiteHandler to entire server
|
# Applies ThreadLimiteHandler to entire server
|
||||||
#
|
#
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
handler
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
server
|
server
|
||||||
|
|
||||||
|
|
|
@ -243,16 +243,19 @@ public class Main
|
||||||
|
|
||||||
public void listModules(StartArgs args)
|
public void listModules(StartArgs args)
|
||||||
{
|
{
|
||||||
|
List<String> tags = args.getListModules();
|
||||||
|
|
||||||
StartLog.endStartLog();
|
StartLog.endStartLog();
|
||||||
System.out.println();
|
System.out.println();
|
||||||
System.out.println("Jetty All Available Modules:");
|
System.out.println("Available Modules:");
|
||||||
System.out.println("----------------------------");
|
System.out.println("==================");
|
||||||
args.getAllModules().dump();
|
System.out.println("tags: "+tags);
|
||||||
|
args.getAllModules().dump(tags);
|
||||||
|
|
||||||
// Dump Enabled Modules
|
// Dump Enabled Modules
|
||||||
System.out.println();
|
System.out.println();
|
||||||
System.out.println("Jetty Selected Module Ordering:");
|
System.out.println("Enabled Modules:");
|
||||||
System.out.println("-------------------------------");
|
System.out.println("================");
|
||||||
Modules modules = args.getAllModules();
|
Modules modules = args.getAllModules();
|
||||||
modules.dumpEnabled();
|
modules.dumpEnabled();
|
||||||
}
|
}
|
||||||
|
@ -381,7 +384,7 @@ public class Main
|
||||||
}
|
}
|
||||||
|
|
||||||
// Show modules
|
// Show modules
|
||||||
if (args.isListModules())
|
if (args.getListModules()!=null)
|
||||||
{
|
{
|
||||||
listModules(args);
|
listModules(args);
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,7 +55,7 @@ import java.util.stream.Collectors;
|
||||||
* A module may be enabled, either directly by name or transiently via a dependency
|
* A module may be enabled, either directly by name or transiently via a dependency
|
||||||
* from another module by name or provided capability.
|
* from another module by name or provided capability.
|
||||||
*/
|
*/
|
||||||
public class Module
|
public class Module implements Comparable<Module>
|
||||||
{
|
{
|
||||||
private static final String VERSION_UNSPECIFIED = "9.2";
|
private static final String VERSION_UNSPECIFIED = "9.2";
|
||||||
private static Pattern MOD_NAME = Pattern.compile("^(.*)\\.mod",Pattern.CASE_INSENSITIVE);
|
private static Pattern MOD_NAME = Pattern.compile("^(.*)\\.mod",Pattern.CASE_INSENSITIVE);
|
||||||
|
@ -96,6 +96,9 @@ public class Module
|
||||||
/** List of provides for this Module */
|
/** List of provides for this Module */
|
||||||
private final Set<String> _provides=new HashSet<>();
|
private final Set<String> _provides=new HashSet<>();
|
||||||
|
|
||||||
|
/** List of tags for this Module */
|
||||||
|
private final List<String> _tags=new ArrayList<>();
|
||||||
|
|
||||||
/** Boolean true if directly enabled, false if all selections are transitive */
|
/** Boolean true if directly enabled, false if all selections are transitive */
|
||||||
private boolean _notTransitive;
|
private boolean _notTransitive;
|
||||||
|
|
||||||
|
@ -328,6 +331,10 @@ public class Module
|
||||||
case "FILES":
|
case "FILES":
|
||||||
_files.add(line);
|
_files.add(line);
|
||||||
break;
|
break;
|
||||||
|
case "TAG":
|
||||||
|
case "TAGS":
|
||||||
|
_tags.add(line);
|
||||||
|
break;
|
||||||
case "DEFAULTS": // old name introduced in 9.2.x
|
case "DEFAULTS": // old name introduced in 9.2.x
|
||||||
case "INI": // new name for 9.3+
|
case "INI": // new name for 9.3+
|
||||||
_defaultConfig.add(line);
|
_defaultConfig.add(line);
|
||||||
|
@ -446,6 +453,16 @@ public class Module
|
||||||
return _description;
|
return _description;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<String> getTags()
|
||||||
|
{
|
||||||
|
return _tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPrimaryTag()
|
||||||
|
{
|
||||||
|
return _tags.isEmpty()?"*":_tags.get(0);
|
||||||
|
}
|
||||||
|
|
||||||
public boolean isEnabled()
|
public boolean isEnabled()
|
||||||
{
|
{
|
||||||
return !_enables.isEmpty();
|
return !_enables.isEmpty();
|
||||||
|
@ -504,4 +521,13 @@ public class Module
|
||||||
out.println();
|
out.println();
|
||||||
out.flush();
|
out.flush();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int compareTo(Module m)
|
||||||
|
{
|
||||||
|
int by_tag = getPrimaryTag().compareTo(m.getPrimaryTag());
|
||||||
|
if (by_tag!=0)
|
||||||
|
return by_tag;
|
||||||
|
return getName().compareTo(m.getName());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,6 +22,7 @@ import java.io.IOException;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
import java.util.Comparator;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
|
@ -30,10 +31,13 @@ import java.util.Map;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
|
import java.util.concurrent.atomic.AtomicReference;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
|
import org.hamcrest.core.StringStartsWith;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Access for all modules declared, as well as what is enabled.
|
* Access for all modules declared, as well as what is enabled.
|
||||||
*/
|
*/
|
||||||
|
@ -57,38 +61,71 @@ public class Modules implements Iterable<Module>
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void dump()
|
public void dump(List<String> tags)
|
||||||
{
|
{
|
||||||
List<String> ordered = _modules.stream().map(m->{return m.getName();}).collect(Collectors.toList());
|
Set<String> exclude = tags.stream().filter(t->t.startsWith("-")).map(t->t.substring(1)).collect(Collectors.toSet());
|
||||||
Collections.sort(ordered);
|
Set<String> include = tags.stream().filter(t->!t.startsWith("-")).collect(Collectors.toSet());
|
||||||
ordered.stream().map(n->{return get(n);}).forEach(module->
|
boolean all = include.contains("*") || include.isEmpty();
|
||||||
|
AtomicReference<String> tag = new AtomicReference<>();
|
||||||
|
|
||||||
|
_modules.stream()
|
||||||
|
.filter(m->
|
||||||
{
|
{
|
||||||
String status = "[ ]";
|
boolean included = all || m.getTags().stream().anyMatch(t->include.contains(t));
|
||||||
if (module.isTransitive())
|
boolean excluded = m.getTags().stream().anyMatch(t->exclude.contains(t));
|
||||||
|
return included && !excluded;
|
||||||
|
})
|
||||||
|
.sorted()
|
||||||
|
.forEach(module->
|
||||||
{
|
{
|
||||||
status = "[t]";
|
if (!module.getPrimaryTag().equals(tag.get()))
|
||||||
}
|
|
||||||
else if (module.isEnabled())
|
|
||||||
{
|
{
|
||||||
status = "[x]";
|
tag.set(module.getPrimaryTag());
|
||||||
|
System.out.printf("%nModules for tag '%s':%n",module.getPrimaryTag());
|
||||||
|
System.out.print("-------------------");
|
||||||
|
for (int i=module.getPrimaryTag().length();i-->0;)
|
||||||
|
System.out.print("-");
|
||||||
|
System.out.println();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
System.out.printf("%n %s Module: %s%n",status,module.getName());
|
String label;
|
||||||
if (module.getProvides().size()>1)
|
Set<String> provides = module.getProvides();
|
||||||
{
|
provides.remove(module.getName());
|
||||||
System.out.printf(" Provides: %s%n",module.getProvides());
|
System.out.printf("%n Module: %s %s%n",module.getName(),provides.size()>0?provides:"");
|
||||||
}
|
|
||||||
for (String description : module.getDescription())
|
for (String description : module.getDescription())
|
||||||
{
|
{
|
||||||
System.out.printf(" : %s%n",description);
|
System.out.printf(" : %s%n",description);
|
||||||
}
|
}
|
||||||
|
if (!module.getTags().isEmpty())
|
||||||
|
{
|
||||||
|
label=" Tags: %s";
|
||||||
|
for (String t : module.getTags())
|
||||||
|
{
|
||||||
|
System.out.printf(label,t);
|
||||||
|
label=", %s";
|
||||||
|
}
|
||||||
|
System.out.println();
|
||||||
|
}
|
||||||
|
if (!module.getDepends().isEmpty())
|
||||||
|
{
|
||||||
|
label=" Depend: %s";
|
||||||
for (String parent : module.getDepends())
|
for (String parent : module.getDepends())
|
||||||
{
|
{
|
||||||
System.out.printf(" Depend: %s%n",parent);
|
System.out.printf(label,parent);
|
||||||
|
label=", %s";
|
||||||
}
|
}
|
||||||
for (String optional : module.getOptional())
|
System.out.println();
|
||||||
|
}
|
||||||
|
if (!module.getOptional().isEmpty())
|
||||||
{
|
{
|
||||||
System.out.printf(" Optional: %s%n",optional);
|
label=" Optional: %s";
|
||||||
|
for (String parent : module.getOptional())
|
||||||
|
{
|
||||||
|
System.out.printf(label,parent);
|
||||||
|
label=", %s";
|
||||||
|
}
|
||||||
|
System.out.println();
|
||||||
}
|
}
|
||||||
for (String lib : module.getLibs())
|
for (String lib : module.getLibs())
|
||||||
{
|
{
|
||||||
|
|
|
@ -170,7 +170,7 @@ public class StartArgs
|
||||||
|
|
||||||
private boolean help = false;
|
private boolean help = false;
|
||||||
private boolean stopCommand = false;
|
private boolean stopCommand = false;
|
||||||
private boolean listModules = false;
|
private List<String> listModules = null;
|
||||||
private boolean listClasspath = false;
|
private boolean listClasspath = false;
|
||||||
private boolean listConfig = false;
|
private boolean listConfig = false;
|
||||||
private boolean version = false;
|
private boolean version = false;
|
||||||
|
@ -750,7 +750,7 @@ public class StartArgs
|
||||||
return listConfig;
|
return listConfig;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isListModules()
|
public List<String> getListModules()
|
||||||
{
|
{
|
||||||
return listModules;
|
return listModules;
|
||||||
}
|
}
|
||||||
|
@ -873,7 +873,7 @@ public class StartArgs
|
||||||
if (arg.equals("--create-files"))
|
if (arg.equals("--create-files"))
|
||||||
{
|
{
|
||||||
run = false;
|
run = false;
|
||||||
download = true;
|
download = true;boolean
|
||||||
licenseCheckRequired = true;
|
licenseCheckRequired = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -938,10 +938,25 @@ public class StartArgs
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Module Management
|
||||||
|
if ("--list-all-modules".equals(arg))
|
||||||
|
{
|
||||||
|
listModules = Collections.singletonList("*");
|
||||||
|
run = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// Module Management
|
// Module Management
|
||||||
if ("--list-modules".equals(arg))
|
if ("--list-modules".equals(arg))
|
||||||
{
|
{
|
||||||
listModules = true;
|
listModules = Collections.singletonList("-verbose");
|
||||||
|
run = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (arg.startsWith("--list-modules="))
|
||||||
|
{
|
||||||
|
listModules = Props.getValues(arg);
|
||||||
run = false;
|
run = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,7 +59,7 @@ Debug and Start Logging:
|
||||||
Module Management:
|
Module Management:
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
--list-modules List all modules defined by the system.
|
--list-modules List non verbose modules defined by the system.
|
||||||
Looking for module files in ${jetty.base}/modules/*.mod and
|
Looking for module files in ${jetty.base}/modules/*.mod and
|
||||||
then ${jetty.home}/modules/*.mod
|
then ${jetty.home}/modules/*.mod
|
||||||
Will also list enabled state based on information
|
Will also list enabled state based on information
|
||||||
|
@ -68,6 +68,13 @@ Module Management:
|
||||||
o The ${jetty.base}/start.ini
|
o The ${jetty.base}/start.ini
|
||||||
o The ${jetty.base}/start.d/*.ini files
|
o The ${jetty.base}/start.d/*.ini files
|
||||||
|
|
||||||
|
--list-modules=<tag>(,<tag>)*
|
||||||
|
List modules by tag. Use '*' for all tags. Prefix a tag
|
||||||
|
with '-' to exclude the tag.
|
||||||
|
|
||||||
|
--list-all-modules
|
||||||
|
List all modules.
|
||||||
|
|
||||||
--module=<modulename>(,<modulename>)*
|
--module=<modulename>(,<modulename>)*
|
||||||
Temporarily enable a module from the command line.
|
Temporarily enable a module from the command line.
|
||||||
Note: this can also be used in the ${jetty.base}/start.ini
|
Note: this can also be used in the ${jetty.base}/start.ini
|
||||||
|
|
|
@ -4,6 +4,9 @@ by the Unix Domain Socket connector, for use when behind a proxy operating
|
||||||
in HTTP mode that adds forwarded-for style HTTP headers. Typically this
|
in HTTP mode that adds forwarded-for style HTTP headers. Typically this
|
||||||
is an alternate to the Proxy Protocol used mostly for TCP mode.
|
is an alternate to the Proxy Protocol used mostly for TCP mode.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
unixsocket-http
|
unixsocket-http
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,10 @@ It should be used when a proxy is forwarding either HTTP or decrypted
|
||||||
HTTPS traffic to the connector and may be used with the
|
HTTPS traffic to the connector and may be used with the
|
||||||
unix-socket-http2c modules to upgrade to HTTP/2.
|
unix-socket-http2c modules to upgrade to HTTP/2.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
http
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
unixsocket
|
unixsocket
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,10 @@ Adds a HTTP2C connetion factory to the Unix Domain Socket Connector
|
||||||
It can be used when either the proxy forwards direct
|
It can be used when either the proxy forwards direct
|
||||||
HTTP/2C (unecrypted) or decrypted HTTP/2 traffic.
|
HTTP/2C (unecrypted) or decrypted HTTP/2 traffic.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
http2
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
unixsocket-http
|
unixsocket-http
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,9 @@ SSL properties may be interpreted by the unixsocket-secure
|
||||||
module to indicate secure HTTPS traffic. Typically this
|
module to indicate secure HTTPS traffic. Typically this
|
||||||
is an alternate to the forwarded module.
|
is an alternate to the forwarded module.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
unixsocket
|
unixsocket
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,9 @@ This looks for a secure scheme transported either by the
|
||||||
unixsocket-forwarded, unixsocket-proxy-protocol or in a
|
unixsocket-forwarded, unixsocket-proxy-protocol or in a
|
||||||
HTTP2 request.
|
HTTP2 request.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
unixsocket-http
|
unixsocket-http
|
||||||
|
|
||||||
|
|
|
@ -7,6 +7,9 @@ needless fragmentation and have better dispatch behaviours.
|
||||||
When enabled with corresponding support modules, the connector can
|
When enabled with corresponding support modules, the connector can
|
||||||
accept HTTP, HTTPS or HTTP2C traffic.
|
accept HTTP, HTTPS or HTTP2C traffic.
|
||||||
|
|
||||||
|
[Tags]
|
||||||
|
connector
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
server
|
server
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,11 @@
|
||||||
Provides a Java Commons Logging implementation that logs to the SLF4J API.
|
Provides a Java Commons Logging implementation that logs to the SLF4J API.
|
||||||
Requires another module that provides and SLF4J implementation.
|
Requires another module that provides and SLF4J implementation.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
jcl
|
||||||
|
slf4j
|
||||||
|
|
||||||
[depends]
|
[depends]
|
||||||
slf4j-api
|
slf4j-api
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
Provides a Java Commons Logging implementation.
|
Provides a Java Commons Logging implementation.
|
||||||
To receive jetty logs the jetty-slf4j and slf4j-jcl must also be enabled.
|
To receive jetty logs the jetty-slf4j and slf4j-jcl must also be enabled.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
jcl
|
||||||
|
|
||||||
[depends]
|
[depends]
|
||||||
|
|
||||||
[provides]
|
[provides]
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Provides a Jetty Logging implementation that logs to the Java Util Logging API.
|
Provides a Jetty Logging implementation that logs to the Java Util Logging API.
|
||||||
Requires another module that provides a Java Util Logging implementation.
|
Requires another module that provides a Java Util Logging implementation.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
|
||||||
[provide]
|
[provide]
|
||||||
logging
|
logging
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,10 @@ Provides a Jetty Logging implementation that logs to the log4j API.
|
||||||
Uses the slf4j mechanism as an intermediary
|
Uses the slf4j mechanism as an intermediary
|
||||||
Requires another module that provides an log4j implementation.
|
Requires another module that provides an log4j implementation.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
log4j
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
jetty-slf4j
|
jetty-slf4j
|
||||||
slf4j-log4j
|
slf4j-log4j
|
||||||
|
|
|
@ -3,6 +3,11 @@ Provides a Jetty Logging implementation that logs to the log4j API.
|
||||||
Uses the slf4j and log4j v1.2 mechanisms as intermediaries.
|
Uses the slf4j and log4j v1.2 mechanisms as intermediaries.
|
||||||
Requires another module that provides an log4j2 implementation.
|
Requires another module that provides an log4j2 implementation.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
log4j2
|
||||||
|
log4j
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
jetty-slf4j
|
jetty-slf4j
|
||||||
slf4j-log4j2
|
slf4j-log4j2
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Provides a Jetty Logging implementation that logs to logback.
|
Provides a Jetty Logging implementation that logs to logback.
|
||||||
Uses the slf4j API as an intermediary
|
Uses the slf4j API as an intermediary
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
jetty-slf4j
|
jetty-slf4j
|
||||||
slf4j-logback
|
slf4j-logback
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Enables the Jetty Logging implementation and installs a template
|
Enables the Jetty Logging implementation and installs a template
|
||||||
configuration in ${jetty.base} resources/jetty-logging.properties.
|
configuration in ${jetty.base} resources/jetty-logging.properties.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
|
||||||
[depends]
|
[depends]
|
||||||
resources
|
resources
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
Provides a Jetty Logging implementation that logs to the SLF4J API.
|
Provides a Jetty Logging implementation that logs to the SLF4J API.
|
||||||
Requires another module that provides and SLF4J implementation.
|
Requires another module that provides and SLF4J implementation.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
slf4j
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
slf4j-api
|
slf4j-api
|
||||||
slf4j-impl
|
slf4j-impl
|
||||||
|
|
|
@ -3,6 +3,11 @@ Provides a Log4j v1.2 implementation that logs to the Log4j v2 API.
|
||||||
Requires another module that provides and Log4j v2 implementation.
|
Requires another module that provides and Log4j v2 implementation.
|
||||||
To receive jetty logs the jetty-slf4j and slf4j-log4j must also be enabled.
|
To receive jetty logs the jetty-slf4j and slf4j-log4j must also be enabled.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
log4j2
|
||||||
|
log4j
|
||||||
|
|
||||||
[depends]
|
[depends]
|
||||||
log4j2-api
|
log4j2-api
|
||||||
log4j2-impl
|
log4j2-impl
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
Provides a Log4j v1.2 API and implementation.
|
Provides a Log4j v1.2 API and implementation.
|
||||||
To receive jetty logs enable the jetty-slf4j and slf4j-log4j modules.
|
To receive jetty logs enable the jetty-slf4j and slf4j-log4j modules.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
log4j
|
||||||
|
|
||||||
[depends]
|
[depends]
|
||||||
resources
|
resources
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,12 @@ Provides the Log4j v2 API
|
||||||
Requires another module that provides an Log4j v2 implementation.
|
Requires another module that provides an Log4j v2 implementation.
|
||||||
To receive jetty logs enable the jetty-slf4j, slf4j-log4j and log4j-log4j2 modules.
|
To receive jetty logs enable the jetty-slf4j, slf4j-log4j and log4j-log4j2 modules.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
log4j2
|
||||||
|
log4j
|
||||||
|
verbose
|
||||||
|
|
||||||
[files]
|
[files]
|
||||||
maven://org.apache.logging.log4j/log4j-api/${log4j2.version}|lib/log4j/log4j-api-${log4j2.version}.jar
|
maven://org.apache.logging.log4j/log4j-api/${log4j2.version}|lib/log4j/log4j-api-${log4j2.version}.jar
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,11 @@
|
||||||
Provides a Log4j v2 implementation.
|
Provides a Log4j v2 implementation.
|
||||||
To receive jetty logs enable the jetty-slf4j, slf4j-log4j and log4j-log4j2 modules.
|
To receive jetty logs enable the jetty-slf4j, slf4j-log4j and log4j-log4j2 modules.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
log4j2
|
||||||
|
log4j
|
||||||
|
|
||||||
[depends]
|
[depends]
|
||||||
log4j2-api
|
log4j2-api
|
||||||
resources
|
resources
|
||||||
|
|
|
@ -3,6 +3,12 @@ Provides a Log4j v2 implementation that logs to the SLF4J API.
|
||||||
Requires another module that provides and SLF4J implementation.
|
Requires another module that provides and SLF4J implementation.
|
||||||
To receive jetty logs enable the jetty-slf4j module.
|
To receive jetty logs enable the jetty-slf4j module.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
log4j2
|
||||||
|
log4j
|
||||||
|
slf4j
|
||||||
|
|
||||||
[depends]
|
[depends]
|
||||||
log4j2-api
|
log4j2-api
|
||||||
slf4j-api
|
slf4j-api
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Provides the logback core implementation, used by slf4j-logback
|
Provides the logback core implementation, used by slf4j-logback
|
||||||
and logback-access
|
and logback-access
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
|
||||||
[files]
|
[files]
|
||||||
maven://ch.qos.logback/logback-core/${logback.version}|lib/logback/logback-core-${logback.version}.jar
|
maven://ch.qos.logback/logback-core/${logback.version}|lib/logback/logback-core-${logback.version}.jar
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,11 @@
|
||||||
Provides SLF4J API. Requires a slf4j implementation (eg slf4j-simple)
|
Provides SLF4J API. Requires a slf4j implementation (eg slf4j-simple)
|
||||||
otherwise a noop implementation is used.
|
otherwise a noop implementation is used.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
slf4j
|
||||||
|
verbose
|
||||||
|
|
||||||
[files]
|
[files]
|
||||||
maven://org.slf4j/slf4j-api/${slf4j.version}|lib/slf4j/slf4j-api-${slf4j.version}.jar
|
maven://org.slf4j/slf4j-api/${slf4j.version}|lib/slf4j/slf4j-api-${slf4j.version}.jar
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,11 @@ Provides a SLF4J implementation that logs to the Java Commons Logging API.
|
||||||
Requires another module that provides an JCL implementation.
|
Requires another module that provides an JCL implementation.
|
||||||
To receive jetty logs enable the jetty-slf4j module.
|
To receive jetty logs enable the jetty-slf4j module.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
jcl
|
||||||
|
slf4j
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
slf4j-api
|
slf4j-api
|
||||||
jcl-api
|
jcl-api
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
Provides a SLF4J implementation that logs to the Java Util Logging API.
|
Provides a SLF4J implementation that logs to the Java Util Logging API.
|
||||||
To receive jetty logs enable the jetty-slf4j module.
|
To receive jetty logs enable the jetty-slf4j module.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
slf4j
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
slf4j-api
|
slf4j-api
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,11 @@ Provides a SLF4J implementation that logs to the Log4j v1.2 API.
|
||||||
Requires another module that provides a Log4j implementation.
|
Requires another module that provides a Log4j implementation.
|
||||||
To receive jetty logs enable the jetty-slf4j module.
|
To receive jetty logs enable the jetty-slf4j module.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
log4j
|
||||||
|
slf4j
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
slf4j-api
|
slf4j-api
|
||||||
log4j-api
|
log4j-api
|
||||||
|
|
|
@ -3,6 +3,12 @@ Provides a SLF4J implementation that logs to the Log4j v2 API.
|
||||||
Requires another module that provides a Log4j2 implementation.
|
Requires another module that provides a Log4j2 implementation.
|
||||||
To receive jetty logs enable the jetty-slf4j2 module.
|
To receive jetty logs enable the jetty-slf4j2 module.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
log4j2
|
||||||
|
log4j
|
||||||
|
slf4j
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
slf4j-api
|
slf4j-api
|
||||||
log4j2-api
|
log4j2-api
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
Provides a SLF4J implementation that logs to Logback classic
|
Provides a SLF4J implementation that logs to Logback classic
|
||||||
To receive jetty logs enable the jetty-slf4j module.
|
To receive jetty logs enable the jetty-slf4j module.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
slf4j
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
slf4j-api
|
slf4j-api
|
||||||
logback-core
|
logback-core
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
Provides SLF4J simple logging implementation.
|
Provides SLF4J simple logging implementation.
|
||||||
To receive jetty logs enable the jetty-slf4j module.
|
To receive jetty logs enable the jetty-slf4j module.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
slf4j
|
||||||
|
|
||||||
[depend]
|
[depend]
|
||||||
slf4j-api
|
slf4j-api
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
Redirects JVMs stderr and stdout to a log file,
|
Redirects JVMs stderr and stdout to a log file,
|
||||||
including output from Jetty's default StdErrLog logging.
|
including output from Jetty's default StdErrLog logging.
|
||||||
|
|
||||||
|
[tags]
|
||||||
|
logging
|
||||||
|
|
||||||
[xml]
|
[xml]
|
||||||
etc/stderrout-logging.xml
|
etc/stderrout-logging.xml
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue