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 83dda18 Context API refactoring.
83dda18 is described below
commit 83dda186d25035565613a9748040863cae935ade
Author: JamesBognar <[email protected]>
AuthorDate: Sun Aug 29 18:35:07 2021 -0400
Context API refactoring.
---
.../java/org/apache/juneau/rest/RestContext.java | 37 +---------------------
.../org/apache/juneau/rest/RestContextBuilder.java | 9 ++++--
.../org/apache/juneau/rest/annotation/Rest.java | 2 +-
.../juneau/rest/annotation/RestAnnotation.java | 2 +-
.../juneau/rest/logging/BasicRestLogger.java | 4 +--
.../org/apache/juneau/rest/logging/RestLogger.java | 2 +-
6 files changed, 12 insertions(+), 44 deletions(-)
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 cf37bb5..6d4b785 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
@@ -149,40 +149,6 @@ public class RestContext extends BeanContext {
public static final String REST_beanStore = PREFIX + ".beanStore.o";
/**
- * Configuration property: Debug mode on specified classes/methods.
- *
- * <h5 class='section'>Property:</h5>
- * <ul class='spaced-list'>
- * <li><b>ID:</b> {@link
org.apache.juneau.rest.RestContext#REST_debugOn REST_debugOn}
- * <li><b>Name:</b> <js>"RestContext.debugOn.s"</js>
- * <li><b>Data type:</b> <c>String</c> (comma-delimited)
- * <li><b>System property:</b> <c>RestContext.debugOn</c>
- * <li><b>Environment variable:</b> <c>RESTCONTEXT_DEBUGON</c>
- * <li><b>Default:</b> Empty string
- * <li><b>Session property:</b> <jk>false</jk>
- * <li><b>Annotations:</b>
- * <ul>
- * <li class='ja'>{@link
org.apache.juneau.rest.annotation.Rest#debugOn()}
- * </ul>
- * <li><b>Methods:</b>
- * <ul>
- * <li class='jm'>{@link
org.apache.juneau.rest.RestContextBuilder#debugOn(String)}
- * </ul>
- * </ul>
- *
- * <h5 class='section'>Description:</h5>
- * <p>
- * Enables the following:
- * <ul class='spaced-list'>
- * <li>
- * HTTP request/response bodies are cached in memory for
logging purposes.
- * <li>
- * Request/response messages are automatically logged
always or per request.
- * </ul>
- */
- public static final String REST_debugOn = PREFIX + ".debugOn.s";
-
- /**
* Configuration property: Default request attributes.
*
* <h5 class='section'>Property:</h5>
@@ -3111,7 +3077,6 @@ public class RestContext extends BeanContext {
*/
protected DebugEnablementBuilder createDebugEnablementBuilder(Object
resource, RestContextBuilder builder, BeanStore beanStore) throws Exception {
- ContextProperties properties = builder.getContextProperties();
Class<? extends DebugEnablement> c =
builder.debugEnablementClass;
DebugEnablementBuilder x = DebugEnablement
@@ -3137,7 +3102,7 @@ public class RestContext extends BeanContext {
x.defaultEnable(defaultDebug);
- for (Map.Entry<String,String> e :
splitMap(properties.getString(REST_debugOn).orElse(""), true).entrySet()) {
+ for (Map.Entry<String,String> e :
splitMap(ofNullable(builder.debugOn).orElse(""), true).entrySet()) {
String k = e.getKey(), v = e.getValue();
if (v.isEmpty())
v = "ALWAYS";
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
index 58cb09f..570f35e 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
@@ -143,6 +143,8 @@ public class RestContextBuilder extends BeanContextBuilder
implements ServletCon
DebugEnablement debugEnablement;
Class<? extends DebugEnablement> debugEnablementClass;
+ String debugOn = env("RestContext.debugOn", null);
+
@SuppressWarnings("unchecked")
ResponseProcessorList.Builder responseProcessors =
ResponseProcessorList.create().append(
ReaderProcessor.class,
@@ -1111,7 +1113,7 @@ public class RestContextBuilder extends
BeanContextBuilder implements ServletCon
}
/**
- * <i><l>RestContext</l> configuration property: </i> Debug mode
on specified classes/methods.
+ * Debug mode on specified classes/methods.
*
* Enables the following:
* <ul class='spaced-list'>
@@ -1122,7 +1124,7 @@ public class RestContextBuilder extends
BeanContextBuilder implements ServletCon
* </ul>
*
* <ul class='seealso'>
- * <li class='jf'>{@link RestContext#REST_debugOn}
+ * <li class='ja'>{@link Rest#debugOn}
* </ul>
*
* @param value The new value for this setting.
@@ -1130,7 +1132,8 @@ public class RestContextBuilder extends
BeanContextBuilder implements ServletCon
*/
@FluentSetter
public RestContextBuilder debugOn(String value) {
- return set(REST_debugOn, value);
+ debugOn = value;
+ return this;
}
/**
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/Rest.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/Rest.java
index 3fce6a7..ccb508c 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/Rest.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/Rest.java
@@ -455,7 +455,7 @@ public @interface Rest {
* </ul>
*
* <ul class='seealso'>
- * <li class='jf'>{@link RestContext#REST_debugOn}
+ * <li class='jm'>{@link RestContextBuilder#debugOn(String)}
* </ul>
*/
String debugOn() default "";
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestAnnotation.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestAnnotation.java
index a8f3574..3e230a4 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestAnnotation.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestAnnotation.java
@@ -1076,7 +1076,7 @@ public class RestAnnotation {
value(a.allowedMethodParams()).ifPresent(x ->
b.allowedMethodParams(x));
b.setIfNotEmpty(REST_renderResponseStackTraces,
bool(a.renderResponseStackTraces()));
value(a.debug()).map(Enablement::fromString).ifPresent(x -> b.debug(x));
- b.setIfNotEmpty(REST_debugOn, string(a.debugOn()));
+ value(a.debugOn()).ifPresent(x -> b.debugOn(x));
}
}
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logging/BasicRestLogger.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logging/BasicRestLogger.java
index 997b73d..d601e53 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logging/BasicRestLogger.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logging/BasicRestLogger.java
@@ -87,7 +87,7 @@ import org.apache.juneau.rest.util.*;
* <li class='jm'>{@link RestContextBuilder#callLoggerDefault(Class)}
* <li class='jm'>{@link RestContextBuilder#callLoggerDefault(RestLogger)}
* <li class='jm'>{@link RestContextBuilder#debug(Enablement)}
- * <li class='jf'>{@link RestContext#REST_debugOn}
+ * <li class='jm'>{@link RestContextBuilder#debugOn(String)}
* <li class='ja'>{@link Rest#debug}
* <li class='ja'>{@link RestOp#debug}
* <li class='link'>{@doc RestLoggingAndDebugging}
@@ -274,7 +274,7 @@ public class BasicRestLogger implements RestLogger {
* @param req The HTTP request being logged.
* @return <jk>true</jk> if debug is enabled on this request.
* @see RestContextBuilder#debug(Enablement)
- * @see RestContext#REST_debugOn
+ * @see RestContextBuilder#debugOn(String)
* @see Rest#debug()
* @see RestOp#debug()
*/
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logging/RestLogger.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logging/RestLogger.java
index b280fcd..ac376e4 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logging/RestLogger.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/logging/RestLogger.java
@@ -42,7 +42,7 @@ import org.apache.juneau.rest.annotation.*;
* <li class='jm'>{@link RestContextBuilder#callLoggerDefault(Class)}
* <li class='jm'>{@link RestContextBuilder#callLoggerDefault(RestLogger)}
* <li class='jm'>{@link RestContextBuilder#debug(Enablement)}
- * <li class='jf'>{@link RestContext#REST_debugOn}
+ * <li class='jm'>{@link RestContextBuilder#debugOn(String)}
* <li class='ja'>{@link Rest#debug}
* <li class='ja'>{@link RestOp#debug}
* <li class='link'>{@doc RestLoggingAndDebugging}