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 87d018d PropertyStore refactoring.
87d018d is described below
commit 87d018d89944bf6a576e5275b6cb5b8bc370dd87
Author: JamesBognar <[email protected]>
AuthorDate: Sun Feb 7 17:13:26 2021 -0500
PropertyStore refactoring.
---
.../src/main/java/org/apache/juneau/PropertyStore.java | 16 ++--------------
.../src/main/java/org/apache/juneau/parser/Parser.java | 2 +-
.../java/org/apache/juneau/serializer/Serializer.java | 2 +-
.../main/java/org/apache/juneau/rest/RestContext.java | 6 +++---
.../java/org/apache/juneau/rest/RestContextBuilder.java | 2 +-
.../apache/juneau/rest/RestOperationContextBuilder.java | 2 +-
6 files changed, 9 insertions(+), 21 deletions(-)
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/PropertyStore.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/PropertyStore.java
index d0e78fa..ccc4333 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/PropertyStore.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/PropertyStore.java
@@ -405,23 +405,11 @@ public final class PropertyStore {
*
* @param key The property name.
* @param type The class type of the property.
- * @param def The default value.
* @return The property value, or the default value if it doesn't exist.
*/
- public <T> Class<? extends T> getClass(String key, Class<T> type,
Class<? extends T> def) {
+ public <T> Optional<Class<? extends T>> getClass(String key, Class<T>
type) {
Property p = findProperty(key);
- return p == null ? def : (Class<T>)p.as(Class.class);
- }
-
- /**
- * Returns the class property with the specified name.
- *
- * @param key The property name.
- * @param type The class type of the property.
- * @return The property value, or <jk>null</jk> if it doesn't exist.
- */
- public final <T> Class<? extends T> getClass(String key, Class<T> type)
{
- return getClass(key, type, null);
+ return Optional.ofNullable(p == null ? null :
(Class<T>)p.as(Class.class));
}
/**
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/Parser.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/Parser.java
index 06addec..76d82ba 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/Parser.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/Parser.java
@@ -544,7 +544,7 @@ public abstract class Parser extends BeanContext {
autoCloseStreams =
ps.getBoolean(PARSER_autoCloseStreams).orElse(false);
debugOutputLines =
ps.getInteger(PARSER_debugOutputLines).orElse(5);
unbuffered = ps.getBoolean(PARSER_unbuffered).orElse(false);
- listener = ps.getClass(PARSER_listener, ParserListener.class);
+ listener = ps.getClass(PARSER_listener,
ParserListener.class).orElse(null);
this.consumes = new MediaType[consumes.length];
for (int i = 0; i < consumes.length; i++) {
this.consumes[i] = MediaType.of(consumes[i]);
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/Serializer.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/Serializer.java
index 4d2fbdd..1d77766 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/Serializer.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/Serializer.java
@@ -837,7 +837,7 @@ public abstract class Serializer extends
BeanTraverseContext {
uriContext = ps.get(SERIALIZER_uriContext,
UriContext.class).orElse(UriContext.DEFAULT);
uriResolution = ps.get(SERIALIZER_uriResolution,
UriResolution.class).orElse(UriResolution.NONE);
uriRelativity = ps.get(SERIALIZER_uriRelativity,
UriRelativity.class).orElse(UriRelativity.RESOURCE);
- listener = ps.getClass(SERIALIZER_listener,
SerializerListener.class);
+ listener = ps.getClass(SERIALIZER_listener,
SerializerListener.class).orElse(null);
this.produces = MediaType.of(produces);
this.accept = accept == null ? MediaRanges.of(produces) :
MediaRanges.of(accept);
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 90d8d62..be96e8c 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
@@ -5454,7 +5454,7 @@ public class RestContext extends BeanContext {
RestOperationsBuilder x = RestOperations
.create()
.beanFactory(beanFactory)
-
.implClass(properties.getClass(REST_restOperationsClass, null));
+
.implClass(properties.getClass(REST_restOperationsClass,
RestOperations.class).orElse(null));
ClassInfo rci = ClassInfo.of(resource);
@@ -5478,7 +5478,7 @@ public class RestContext extends BeanContext {
RestOperationContext roc =
RestOperationContext
.create(mi.inner(), this)
.beanFactory(beanFactory)
-
.implClass(properties.getClass(REST_restOperationContextClass,
RestOperationContext.class))
+
.implClass(properties.getClass(REST_restOperationContextClass,
RestOperationContext.class).orElse(null))
.build();
String httpMethod = roc.getHttpMethod();
@@ -5573,7 +5573,7 @@ public class RestContext extends BeanContext {
RestChildrenBuilder x = RestChildren
.create()
.beanFactory(beanFactory)
- .implClass(properties.getClass(REST_restChildrenClass,
RestChildren.class));
+ .implClass(properties.getClass(REST_restChildrenClass,
RestChildren.class).orElse(null));
// Initialize our child resources.
for (Object o : properties.getArray(REST_children,
Object.class)) {
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 8a2f061..29bf666 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
@@ -184,7 +184,7 @@ public class RestContextBuilder extends BeanContextBuilder
implements ServletCon
@Override /* BeanContextBuilder */
public RestContext build() {
try {
- Class<? extends RestContext> c =
getPropertyStore().getClass(REST_contextClass, RestContext.class,
getDefaultImplClass());
+ Class<? extends RestContext> c =
getPropertyStore().getClass(REST_contextClass,
RestContext.class).orElse(getDefaultImplClass());
return BeanFactory.of(beanFactory,
resource.get()).addBeans(RestContextBuilder.class, this).createBean(c);
} catch (Exception e) {
throw toHttpException(e, InternalServerError.class);
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOperationContextBuilder.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOperationContextBuilder.java
index 3515511..c368aa2 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOperationContextBuilder.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestOperationContextBuilder.java
@@ -49,7 +49,7 @@ public class RestOperationContextBuilder extends
BeanContextBuilder {
Class<? extends RestOperationContext> ic = implClass;
if (ic == null)
- ic = ps.getClass(RESTOP_contextClass,
RestOperationContext.class, getDefaultImplClass());
+ ic = ps.getClass(RESTOP_contextClass,
RestOperationContext.class).orElse(getDefaultImplClass());
return
BeanFactory.of(beanFactory).addBean(RestOperationContextBuilder.class,
this).createBean(ic);
} catch (Exception e) {