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 2021/01/16 00:24:42 UTC
[juneau] branch master updated: Code cleanup.
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 92d656d Code cleanup.
92d656d is described below
commit 92d656d07929585f5b6a75dee2d81e6452af50d4
Author: JamesBognar <ja...@salesforce.com>
AuthorDate: Fri Jan 15 19:24:17 2021 -0500
Code cleanup.
---
.../jena/annotation/RdfConfigAnnotation.java | 104 ++++++-----------
.../main/java/org/apache/juneau/ConfigApply.java | 17 +--
.../juneau/annotation/BeanConfigAnnotation.java | 127 ++++++++-------------
.../html/annotation/HtmlConfigAnnotation.java | 19 ++-
.../html/annotation/HtmlDocConfigAnnotation.java | 49 +++-----
.../json/annotation/JsonConfigAnnotation.java | 12 +-
.../annotation/JsonSchemaConfigAnnotation.java | 22 ++--
.../annotation/MsgPackConfigAnnotation.java | 3 +-
.../oapi/annotation/OpenApiConfigAnnotation.java | 6 +-
.../parser/annotation/ParserConfigAnnotation.java | 28 ++---
.../annotation/SerializerConfigAnnotation.java | 59 ++++------
.../soap/annotation/SoapXmlConfigAnnotation.java | 3 +-
.../juneau/uon/annotation/UonConfigAnnotation.java | 15 +--
.../juneau/xml/annotation/XmlConfigAnnotation.java | 33 ++----
.../juneau/rest/annotation/RestAnnotation.java | 46 +-------
.../rest/annotation/RestMethodAnnotation.java | 40 ++-----
16 files changed, 183 insertions(+), 400 deletions(-)
diff --git a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/annotation/RdfConfigAnnotation.java b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/annotation/RdfConfigAnnotation.java
index 8b3e888..ecd802a 100644
--- a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/annotation/RdfConfigAnnotation.java
+++ b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/annotation/RdfConfigAnnotation.java
@@ -43,76 +43,40 @@ public class RdfConfigAnnotation {
@Override
public void apply(AnnotationInfo<RdfConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
RdfConfig a = ai.getAnnotation();
- if (! a.language().isEmpty())
- psb.set(RDF_language, string(a.language()));
- if (! a.juneauNs().isEmpty())
- psb.set(RDF_juneauNs, string(a.juneauNs()));
- if (! a.juneauBpNs().isEmpty())
- psb.set(RDF_juneauBpNs, string(a.juneauBpNs()));
- if (! a.disableUseXmlNamespaces().isEmpty())
- psb.set(RDF_disableUseXmlNamespaces, bool(a.disableUseXmlNamespaces()));
- if (! a.arp_iriRules().isEmpty())
- psb.set(RDF_arp_iriRules, string(a.arp_iriRules()));
- if (! a.arp_errorMode().isEmpty())
- psb.set(RDF_arp_errorMode, string(a.arp_errorMode()));
- if (! a.arp_embedding().isEmpty())
- psb.set(RDF_arp_embedding, bool(a.arp_embedding()));
- if (! a.rdfxml_xmlBase().isEmpty())
- psb.set(RDF_rdfxml_xmlBase, string(a.rdfxml_xmlBase()));
- if (! a.rdfxml_longId().isEmpty())
- psb.set(RDF_rdfxml_longId, bool(a.rdfxml_longId()));
- if (! a.rdfxml_allowBadUris().isEmpty())
- psb.set(RDF_rdfxml_allowBadUris, bool(a.rdfxml_allowBadUris()));
- if (! a.rdfxml_relativeUris().isEmpty())
- psb.set(RDF_rdfxml_relativeUris, string(a.rdfxml_relativeUris()));
- if (! a.rdfxml_showXmlDeclaration().isEmpty())
- psb.set(RDF_rdfxml_showXmlDeclaration, string(a.rdfxml_showXmlDeclaration()));
- if (! a.rdfxml_disableShowDoctypeDeclaration().isEmpty())
- psb.set(RDF_rdfxml_disableShowDoctypeDeclaration, bool(a.rdfxml_disableShowDoctypeDeclaration()));
- if (! a.rdfxml_tab().isEmpty())
- psb.set(RDF_rdfxml_tab, integer(a.rdfxml_tab(), "rdfxml_tab"));
- if (! a.rdfxml_attributeQuoteChar().isEmpty())
- psb.set(RDF_rdfxml_attributeQuoteChar, string(a.rdfxml_attributeQuoteChar()));
- if (! a.rdfxml_blockRules().isEmpty())
- psb.set(RDF_rdfxml_blockRules, string(a.rdfxml_blockRules()));
- if (! a.n3_minGap().isEmpty())
- psb.set(RDF_n3_minGap, integer(a.n3_minGap(), "n3_minGap"));
- if (! a.n3_disableObjectLists().isEmpty())
- psb.set(RDF_n3_disableObjectLists, bool(a.n3_disableObjectLists()));
- if (! a.n3_subjectColumn().isEmpty())
- psb.set(RDF_n3_subjectColumn, integer(a.n3_subjectColumn(), "n3_subjectColumn"));
- if (! a.n3_propertyColumn().isEmpty())
- psb.set(RDF_n3_propertyColumn, integer(a.n3_propertyColumn(), "n3_propertyColumn"));
- if (! a.n3_indentProperty().isEmpty())
- psb.set(RDF_n3_indentProperty, integer(a.n3_indentProperty(), "n3_indentProperty"));
- if (! a.n3_widePropertyLen().isEmpty())
- psb.set(RDF_n3_widePropertyLen, integer(a.n3_widePropertyLen(), "n3_widePropertyLen"));
- if (! a.n3_disableAbbrevBaseUri().isEmpty())
- psb.set(RDF_n3_disableAbbrevBaseUri, bool(a.n3_disableAbbrevBaseUri()));
- if (! a.n3_disableUsePropertySymbols().isEmpty())
- psb.set(RDF_n3_disableUsePropertySymbols, bool(a.n3_disableUsePropertySymbols()));
- if (! a.n3_disableUseTripleQuotedStrings().isEmpty())
- psb.set(RDF_n3_disableUseTripleQuotedStrings, bool(a.n3_disableUseTripleQuotedStrings()));
- if (! a.n3_disableUseDoubles().isEmpty())
- psb.set(RDF_n3_disableUseDoubles, bool(a.n3_disableUseDoubles()));
- if (! a.collectionFormat().isEmpty())
- psb.set(RDF_collectionFormat, string(a.collectionFormat()));
- if (! a.looseCollections().isEmpty())
- psb.set(RDF_looseCollections, bool(a.looseCollections()));
-
- if (! a.addBeanTypes().isEmpty())
- psb.set(RDF_addBeanTypes, bool(a.addBeanTypes()));
- if (! a.addLiteralTypes().isEmpty())
- psb.set(RDF_addLiteralTypes, bool(a.addLiteralTypes()));
- if (! a.addRootProperty().isEmpty())
- psb.set(RDF_addRootProperty, bool(a.addRootProperty()));
- if (! a.disableAutoDetectNamespaces().isEmpty())
- psb.set(RDF_disableAutoDetectNamespaces, bool(a.disableAutoDetectNamespaces()));
- if (a.namespaces().length > 0)
- psb.set(RDF_namespaces, stringList(a.namespaces()));
-
- if (! a.trimWhitespace().isEmpty())
- psb.set(RDF_trimWhitespace, bool(a.trimWhitespace()));
+ psb.setIfNotEmpty(RDF_language, string(a.language()));
+ psb.setIfNotEmpty(RDF_juneauNs, string(a.juneauNs()));
+ psb.setIfNotEmpty(RDF_juneauBpNs, string(a.juneauBpNs()));
+ psb.setIfNotEmpty(RDF_disableUseXmlNamespaces, bool(a.disableUseXmlNamespaces()));
+ psb.setIfNotEmpty(RDF_arp_iriRules, string(a.arp_iriRules()));
+ psb.setIfNotEmpty(RDF_arp_errorMode, string(a.arp_errorMode()));
+ psb.setIfNotEmpty(RDF_arp_embedding, bool(a.arp_embedding()));
+ psb.setIfNotEmpty(RDF_rdfxml_xmlBase, string(a.rdfxml_xmlBase()));
+ psb.setIfNotEmpty(RDF_rdfxml_longId, bool(a.rdfxml_longId()));
+ psb.setIfNotEmpty(RDF_rdfxml_allowBadUris, bool(a.rdfxml_allowBadUris()));
+ psb.setIfNotEmpty(RDF_rdfxml_relativeUris, string(a.rdfxml_relativeUris()));
+ psb.setIfNotEmpty(RDF_rdfxml_showXmlDeclaration, string(a.rdfxml_showXmlDeclaration()));
+ psb.setIfNotEmpty(RDF_rdfxml_disableShowDoctypeDeclaration, bool(a.rdfxml_disableShowDoctypeDeclaration()));
+ psb.setIfNotEmpty(RDF_rdfxml_tab, integer(a.rdfxml_tab(), "rdfxml_tab"));
+ psb.setIfNotEmpty(RDF_rdfxml_attributeQuoteChar, string(a.rdfxml_attributeQuoteChar()));
+ psb.setIfNotEmpty(RDF_rdfxml_blockRules, string(a.rdfxml_blockRules()));
+ psb.setIfNotEmpty(RDF_n3_minGap, integer(a.n3_minGap(), "n3_minGap"));
+ psb.setIfNotEmpty(RDF_n3_disableObjectLists, bool(a.n3_disableObjectLists()));
+ psb.setIfNotEmpty(RDF_n3_subjectColumn, integer(a.n3_subjectColumn(), "n3_subjectColumn"));
+ psb.setIfNotEmpty(RDF_n3_propertyColumn, integer(a.n3_propertyColumn(), "n3_propertyColumn"));
+ psb.setIfNotEmpty(RDF_n3_indentProperty, integer(a.n3_indentProperty(), "n3_indentProperty"));
+ psb.setIfNotEmpty(RDF_n3_widePropertyLen, integer(a.n3_widePropertyLen(), "n3_widePropertyLen"));
+ psb.setIfNotEmpty(RDF_n3_disableAbbrevBaseUri, bool(a.n3_disableAbbrevBaseUri()));
+ psb.setIfNotEmpty(RDF_n3_disableUsePropertySymbols, bool(a.n3_disableUsePropertySymbols()));
+ psb.setIfNotEmpty(RDF_n3_disableUseTripleQuotedStrings, bool(a.n3_disableUseTripleQuotedStrings()));
+ psb.setIfNotEmpty(RDF_n3_disableUseDoubles, bool(a.n3_disableUseDoubles()));
+ psb.setIfNotEmpty(RDF_collectionFormat, string(a.collectionFormat()));
+ psb.setIfNotEmpty(RDF_looseCollections, bool(a.looseCollections()));
+ psb.setIfNotEmpty(RDF_addBeanTypes, bool(a.addBeanTypes()));
+ psb.setIfNotEmpty(RDF_addLiteralTypes, bool(a.addLiteralTypes()));
+ psb.setIfNotEmpty(RDF_addRootProperty, bool(a.addRootProperty()));
+ psb.setIfNotEmpty(RDF_disableAutoDetectNamespaces, bool(a.disableAutoDetectNamespaces()));
+ psb.setIfNotEmpty(RDF_namespaces, stringList(a.namespaces()));
+ psb.setIfNotEmpty(RDF_trimWhitespace, bool(a.trimWhitespace()));
}
}
}
\ No newline at end of file
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ConfigApply.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ConfigApply.java
index 4badf6c..ea395e9 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ConfigApply.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ConfigApply.java
@@ -62,7 +62,8 @@ public abstract class ConfigApply<T extends Annotation> {
* @return The resolved string.
*/
protected String string(String in) {
- return vr.resolve(in);
+ in = vr.resolve(in);
+ return isEmpty(in) ? null : in;
}
/**
@@ -132,10 +133,8 @@ public abstract class ConfigApply<T extends Annotation> {
* @return The resolved boolean.
*/
public Boolean bool(String in) {
- in = vr.resolve(in);
- if (isEmpty(in))
- return null;
- return Boolean.parseBoolean(in);
+ in = string(in);
+ return in == null ? null : Boolean.parseBoolean(in);
}
/**
@@ -145,9 +144,10 @@ public abstract class ConfigApply<T extends Annotation> {
* @param loc The annotation field name.
* @return The resolved int.
*/
- protected int integer(String in, String loc) {
+ protected Integer integer(String in, String loc) {
try {
- return Integer.parseInt(vr.resolve(in));
+ in = string(in);
+ return in == null ? null : Integer.parseInt(in);
} catch (NumberFormatException e) {
throw new ConfigException("Invalid syntax for integer on annotation @{0}({1}): {2}", c.getSimpleName(), loc, in);
}
@@ -162,7 +162,8 @@ public abstract class ConfigApply<T extends Annotation> {
*/
protected Visibility visibility(String in, String loc) {
try {
- return Visibility.valueOf(vr.resolve(in));
+ in = string(in);
+ return in == null ? null : Visibility.valueOf(in);
} catch (IllegalArgumentException e) {
throw new ConfigException("Invalid syntax for visibility on annotation @{0}({1}): {2}", c.getSimpleName(), loc, in);
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfigAnnotation.java
index 01b9a63..cdb2d27 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfigAnnotation.java
@@ -14,6 +14,7 @@ package org.apache.juneau.annotation;
import static org.apache.juneau.BeanContext.*;
import static org.apache.juneau.BeanTraverseContext.*;
+import static java.util.Arrays.*;
import java.util.*;
@@ -46,96 +47,60 @@ public class BeanConfigAnnotation {
public void apply(AnnotationInfo<BeanConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
BeanConfig a = ai.getAnnotation();
- if (! a.beanClassVisibility().isEmpty())
- psb.set(BEAN_beanClassVisibility, visibility(a.beanClassVisibility(), "beanClassVisibility"));
- if (! a.beanConstructorVisibility().isEmpty())
- psb.set(BEAN_beanConstructorVisibility, visibility(a.beanConstructorVisibility(), "beanConstructorVisibility"));
- if (a.dictionary().length != 0)
- psb.prependTo(BEAN_beanDictionary, a.dictionary());
- if (a.dictionary_replace().length != 0)
- psb.set(BEAN_beanDictionary, a.dictionary_replace());
- if (! a.beanFieldVisibility().isEmpty())
- psb.set(BEAN_beanFieldVisibility, visibility(a.beanFieldVisibility(), "beanFieldVisibility"));
- if (! a.beanMapPutReturnsOldValue().isEmpty())
- psb.set(BEAN_beanMapPutReturnsOldValue, bool(a.beanMapPutReturnsOldValue()));
- if (! a.beanMethodVisibility().isEmpty())
- psb.set(BEAN_beanMethodVisibility, visibility(a.beanMethodVisibility(), "beanMethodVisibility"));
- if (! a.beansRequireDefaultConstructor().isEmpty())
- psb.set(BEAN_beansRequireDefaultConstructor, bool(a.beansRequireDefaultConstructor()));
- if (! a.beansRequireSerializable().isEmpty())
- psb.set(BEAN_beansRequireSerializable, bool(a.beansRequireSerializable()));
- if (! a.beansRequireSettersForGetters().isEmpty())
- psb.set(BEAN_beansRequireSettersForGetters, bool(a.beansRequireSettersForGetters()));
- if (! a.disableBeansRequireSomeProperties().isEmpty())
- psb.set(BEAN_disableBeansRequireSomeProperties, bool(a.disableBeansRequireSomeProperties()));
- if (! a.typePropertyName().isEmpty())
- psb.set(BEAN_typePropertyName, string(a.typePropertyName()));
- if (! a.debug().isEmpty())
- psb.set(CONTEXT_debug, bool(a.debug()));
- if (! a.findFluentSetters().isEmpty())
- psb.set(BEAN_findFluentSetters, bool(a.findFluentSetters()));
- if (! a.ignoreInvocationExceptionsOnGetters().isEmpty())
- psb.set(BEAN_ignoreInvocationExceptionsOnGetters, bool(a.ignoreInvocationExceptionsOnGetters()));
- if (! a.ignoreInvocationExceptionsOnSetters().isEmpty())
- psb.set(BEAN_ignoreInvocationExceptionsOnSetters, bool(a.ignoreInvocationExceptionsOnSetters()));
- if (! a.disableIgnoreMissingSetters().isEmpty())
- psb.set(BEAN_disableIgnoreMissingSetters, bool(a.disableIgnoreMissingSetters()));
- if (! a.disableIgnoreTransientFields().isEmpty())
- psb.set(BEAN_disableIgnoreTransientFields, bool(a.disableIgnoreTransientFields()));
- if (! a.ignoreUnknownBeanProperties().isEmpty())
- psb.set(BEAN_ignoreUnknownBeanProperties, bool(a.ignoreUnknownBeanProperties()));
- if (! a.disableIgnoreUnknownNullBeanProperties().isEmpty())
- psb.set(BEAN_disableIgnoreUnknownNullBeanProperties, bool(a.disableIgnoreUnknownNullBeanProperties()));
- for (Class<?> c : a.interfaces())
- psb.prependTo(BEAN_annotations, BeanAnnotation.create(c).interfaceClass(c).build());
- if (! a.locale().isEmpty())
- psb.set(CONTEXT_locale, locale(a.locale()));
- if (! a.mediaType().isEmpty())
- psb.set(CONTEXT_mediaType, mediaType(a.mediaType()));
- if (a.notBeanClasses().length != 0)
- psb.addTo(BEAN_notBeanClasses, a.notBeanClasses());
- if (a.notBeanClasses_replace().length != 0)
- psb.set(BEAN_notBeanClasses, a.notBeanClasses_replace());
- if (a.notBeanPackages().length != 0)
- psb.addTo(BEAN_notBeanPackages, stringList(a.notBeanPackages()));
- if (a.notBeanPackages_replace().length != 0)
- psb.set(BEAN_notBeanPackages, stringList(a.notBeanPackages_replace()));
- if (a.propertyNamer() != PropertyNamer.Null.class)
- psb.set(BEAN_propertyNamer, a.propertyNamer());
- if (! a.sortProperties().isEmpty())
- psb.set(BEAN_sortProperties, bool(a.sortProperties()));
- if (a.swaps().length != 0)
- psb.prependTo(BEAN_swaps, a.swaps());
- if (a.swaps_replace().length != 0)
- psb.set(BEAN_swaps, a.swaps_replace());
- if (! a.timeZone().isEmpty())
- psb.set(CONTEXT_timeZone, timeZone(a.timeZone()));
- if (! a.useEnumNames().isEmpty())
- psb.set(BEAN_useEnumNames, bool(a.useEnumNames()));
- if (! a.disableInterfaceProxies().isEmpty())
- psb.set(BEAN_disableInterfaceProxies, bool(a.disableInterfaceProxies()));
- if (! a.useJavaBeanIntrospector().isEmpty())
- psb.set(BEAN_useJavaBeanIntrospector, bool(a.useJavaBeanIntrospector()));
- if (! a.detectRecursions().isEmpty())
- psb.set(BEANTRAVERSE_detectRecursions, bool(a.detectRecursions()));
- if (! a.ignoreRecursions().isEmpty())
- psb.set(BEANTRAVERSE_ignoreRecursions, bool(a.ignoreRecursions()));
- if (! a.initialDepth().isEmpty())
- psb.set(BEANTRAVERSE_initialDepth, integer(a.initialDepth(), "initialDepth"));
- if (! a.maxDepth().isEmpty())
- psb.set(BEANTRAVERSE_maxDepth, integer(a.maxDepth(), "maxDepth"));
+ psb.setIfNotEmpty(BEAN_beanClassVisibility, visibility(a.beanClassVisibility(), "beanClassVisibility"));
+ psb.setIfNotEmpty(BEAN_beanConstructorVisibility, visibility(a.beanConstructorVisibility(), "beanConstructorVisibility"));
+ psb.prependTo(BEAN_beanDictionary, a.dictionary());
+ psb.setIfNotEmpty(BEAN_beanDictionary, a.dictionary_replace());
+ psb.setIfNotEmpty(BEAN_beanFieldVisibility, visibility(a.beanFieldVisibility(), "beanFieldVisibility"));
+ psb.setIfNotEmpty(BEAN_beanMapPutReturnsOldValue, bool(a.beanMapPutReturnsOldValue()));
+ psb.setIfNotEmpty(BEAN_beanMethodVisibility, visibility(a.beanMethodVisibility(), "beanMethodVisibility"));
+ psb.setIfNotEmpty(BEAN_beansRequireDefaultConstructor, bool(a.beansRequireDefaultConstructor()));
+ psb.setIfNotEmpty(BEAN_beansRequireSerializable, bool(a.beansRequireSerializable()));
+ psb.setIfNotEmpty(BEAN_beansRequireSettersForGetters, bool(a.beansRequireSettersForGetters()));
+ psb.setIfNotEmpty(BEAN_disableBeansRequireSomeProperties, bool(a.disableBeansRequireSomeProperties()));
+ psb.setIfNotEmpty(BEAN_typePropertyName, string(a.typePropertyName()));
+ psb.setIfNotEmpty(CONTEXT_debug, bool(a.debug()));
+ psb.setIfNotEmpty(BEAN_findFluentSetters, bool(a.findFluentSetters()));
+ psb.setIfNotEmpty(BEAN_ignoreInvocationExceptionsOnGetters, bool(a.ignoreInvocationExceptionsOnGetters()));
+ psb.setIfNotEmpty(BEAN_ignoreInvocationExceptionsOnSetters, bool(a.ignoreInvocationExceptionsOnSetters()));
+ psb.setIfNotEmpty(BEAN_disableIgnoreMissingSetters, bool(a.disableIgnoreMissingSetters()));
+ psb.setIfNotEmpty(BEAN_disableIgnoreTransientFields, bool(a.disableIgnoreTransientFields()));
+ psb.setIfNotEmpty(BEAN_ignoreUnknownBeanProperties, bool(a.ignoreUnknownBeanProperties()));
+ psb.setIfNotEmpty(BEAN_disableIgnoreUnknownNullBeanProperties, bool(a.disableIgnoreUnknownNullBeanProperties()));
+ asList(a.interfaces()).stream().map(x -> BeanAnnotation.create(x).interfaceClass(x).build()).forEach(x -> psb.prependTo(BEAN_annotations, x));
+ psb.setIfNotEmpty(CONTEXT_locale, locale(a.locale()));
+ psb.setIfNotEmpty(CONTEXT_mediaType, mediaType(a.mediaType()));
+ psb.setIfNotEmpty(BEAN_notBeanClasses, a.notBeanClasses());
+ psb.setIfNotEmpty(BEAN_notBeanClasses, a.notBeanClasses_replace());
+ psb.addTo(BEAN_notBeanPackages, stringList(a.notBeanPackages()));
+ psb.setIfNotEmpty(BEAN_notBeanPackages, stringList(a.notBeanPackages_replace()));
+ psb.setIf(a.propertyNamer() != PropertyNamer.Null.class, BEAN_propertyNamer, a.propertyNamer());
+ psb.setIfNotEmpty(BEAN_sortProperties, bool(a.sortProperties()));
+ psb.prependTo(BEAN_swaps, a.swaps());
+ psb.setIfNotEmpty(BEAN_swaps, a.swaps_replace());
+ psb.setIfNotEmpty(CONTEXT_timeZone, timeZone(a.timeZone()));
+ psb.setIfNotEmpty(BEAN_useEnumNames, bool(a.useEnumNames()));
+ psb.setIfNotEmpty(BEAN_disableInterfaceProxies, bool(a.disableInterfaceProxies()));
+ psb.setIfNotEmpty(BEAN_useJavaBeanIntrospector, bool(a.useJavaBeanIntrospector()));
+ psb.setIfNotEmpty(BEANTRAVERSE_detectRecursions, bool(a.detectRecursions()));
+ psb.setIfNotEmpty(BEANTRAVERSE_ignoreRecursions, bool(a.ignoreRecursions()));
+ psb.setIfNotEmpty(BEANTRAVERSE_initialDepth, integer(a.initialDepth(), "initialDepth"));
+ psb.setIfNotEmpty(BEANTRAVERSE_maxDepth, integer(a.maxDepth(), "maxDepth"));
}
private Locale locale(String in) {
- return Locale.forLanguageTag(string(in));
+ in = string(in);
+ return in == null ? null : Locale.forLanguageTag(in);
}
private MediaType mediaType(String in) {
- return MediaType.of(string(in));
+ in = string(in);
+ return in == null ? null : MediaType.of(in);
}
private TimeZone timeZone(String in) {
- return TimeZone.getTimeZone(string(in));
+ in = string(in);
+ return in == null ? null : TimeZone.getTimeZone(in);
}
}
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/annotation/HtmlConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/annotation/HtmlConfigAnnotation.java
index 0e22bd1..ed7f0f8 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/annotation/HtmlConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/annotation/HtmlConfigAnnotation.java
@@ -41,18 +41,13 @@ public class HtmlConfigAnnotation {
@Override
public void apply(AnnotationInfo<HtmlConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
HtmlConfig a = ai.getAnnotation();
- if (! a.addBeanTypes().isEmpty())
- psb.set(HTML_addBeanTypes, bool(a.addBeanTypes()));
- if (! a.addKeyValueTableHeaders().isEmpty())
- psb.set(HTML_addKeyValueTableHeaders, bool(a.addKeyValueTableHeaders()));
- if (! a.disableDetectLabelParameters().isEmpty())
- psb.set(HTML_disableDetectLabelParameters, bool(a.disableDetectLabelParameters()));
- if (! a.disableDetectLinksInStrings().isEmpty())
- psb.set(HTML_disableDetectLinksInStrings, bool(a.disableDetectLinksInStrings()));
- if (! a.labelParameter().isEmpty())
- psb.set(HTML_labelParameter, string(a.labelParameter()));
- if (! a.uriAnchorText().isEmpty())
- psb.set(HTML_uriAnchorText, string(a.uriAnchorText()));
+
+ psb.setIfNotEmpty(HTML_addBeanTypes, bool(a.addBeanTypes()));
+ psb.setIfNotEmpty(HTML_addKeyValueTableHeaders, bool(a.addKeyValueTableHeaders()));
+ psb.setIfNotEmpty(HTML_disableDetectLabelParameters, bool(a.disableDetectLabelParameters()));
+ psb.setIfNotEmpty(HTML_disableDetectLinksInStrings, bool(a.disableDetectLinksInStrings()));
+ psb.setIfNotEmpty(HTML_labelParameter, string(a.labelParameter()));
+ psb.setIfNotEmpty(HTML_uriAnchorText, string(a.uriAnchorText()));
}
}
}
\ No newline at end of file
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/annotation/HtmlDocConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/annotation/HtmlDocConfigAnnotation.java
index 5e09173..fabf0a4 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/annotation/HtmlDocConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/annotation/HtmlDocConfigAnnotation.java
@@ -14,6 +14,7 @@ package org.apache.juneau.html.annotation;
import static org.apache.juneau.html.HtmlDocSerializer.*;
import static org.apache.juneau.internal.StringUtils.*;
+import static java.util.Arrays.*;
import java.util.regex.*;
@@ -46,39 +47,21 @@ public class HtmlDocConfigAnnotation {
@Override
public void apply(AnnotationInfo<HtmlDocConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
HtmlDocConfig a = ai.getAnnotation();
- if (a.aside().length > 0)
- psb.set(HTMLDOC_aside, resolveList(a.aside(), psb.peek(String[].class, HTMLDOC_aside)));
- if (! "DEFAULT".equalsIgnoreCase(a.asideFloat()))
- psb.set(HTMLDOC_asideFloat, a.asideFloat().toUpperCase());
- if (a.footer().length > 0)
- psb.set(HTMLDOC_footer, resolveList(a.footer(), psb.peek(String[].class, HTMLDOC_footer)));
- if (a.head().length > 0)
- psb.set(HTMLDOC_head, resolveList(a.head(), psb.peek(String[].class, HTMLDOC_head)));
- if (a.header().length > 0)
- psb.set(HTMLDOC_header, resolveList(a.header(), psb.peek(String[].class, HTMLDOC_header)));
- if (a.nav().length > 0)
- psb.set(HTMLDOC_nav, resolveList(a.nav(), psb.peek(String[].class, HTMLDOC_nav)));
- if (a.navlinks().length > 0)
- psb.set(HTMLDOC_navlinks, resolveLinks(a.navlinks(), psb.peek(String[].class, HTMLDOC_navlinks)));
- if (! a.noResultsMessage().isEmpty())
- psb.set(HTMLDOC_noResultsMessage, string(a.noResultsMessage()));
- if (! a.nowrap().isEmpty())
- psb.set(HTMLDOC_nowrap, bool(a.nowrap()));
- if (a.script().length > 0)
- psb.set(HTMLDOC_script, resolveList(a.script(), psb.peek(String[].class, HTMLDOC_script)));
- if (a.style().length > 0)
- psb.set(HTMLDOC_style, resolveList(a.style(), psb.peek(String[].class, HTMLDOC_style)));
- if (a.stylesheet().length > 0)
- psb.set(HTMLDOC_stylesheet, resolveList(a.stylesheet(), psb.peek(String[].class, HTMLDOC_stylesheet)));
- if (a.template() != HtmlDocTemplate.Null.class)
- psb.set(HTMLDOC_template, a.template());
- for (Class<? extends HtmlWidget> w : a.widgets()) {
- try {
- psb.prependTo(HTMLDOC_widgets, w.newInstance());
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
+
+ psb.setIf(a.aside().length > 0, HTMLDOC_aside, resolveList(a.aside(), psb.peek(String[].class, HTMLDOC_aside)));
+ psb.setIf(! "DEFAULT".equalsIgnoreCase(a.asideFloat()), HTMLDOC_asideFloat, a.asideFloat().toUpperCase());
+ psb.setIf(a.footer().length > 0, HTMLDOC_footer, resolveList(a.footer(), psb.peek(String[].class, HTMLDOC_footer)));
+ psb.setIf(a.head().length > 0, HTMLDOC_head, resolveList(a.head(), psb.peek(String[].class, HTMLDOC_head)));
+ psb.setIf(a.header().length > 0, HTMLDOC_header, resolveList(a.header(), psb.peek(String[].class, HTMLDOC_header)));
+ psb.setIf(a.nav().length > 0, HTMLDOC_nav, resolveList(a.nav(), psb.peek(String[].class, HTMLDOC_nav)));
+ psb.setIf(a.navlinks().length > 0, HTMLDOC_navlinks, resolveLinks(a.navlinks(), psb.peek(String[].class, HTMLDOC_navlinks)));
+ psb.setIfNotEmpty(HTMLDOC_noResultsMessage, string(a.noResultsMessage()));
+ psb.setIfNotEmpty(HTMLDOC_nowrap, bool(a.nowrap()));
+ psb.setIf(a.script().length > 0, HTMLDOC_script, resolveList(a.script(), psb.peek(String[].class, HTMLDOC_script)));
+ psb.setIf(a.style().length > 0, HTMLDOC_style, resolveList(a.style(), psb.peek(String[].class, HTMLDOC_style)));
+ psb.setIf(a.stylesheet().length > 0, HTMLDOC_stylesheet, resolveList(a.stylesheet(), psb.peek(String[].class, HTMLDOC_stylesheet)));
+ psb.setIf(a.template() != HtmlDocTemplate.Null.class, HTMLDOC_template, a.template());
+ asList(a.widgets()).stream().forEach(x -> psb.prependTo(HTMLDOC_widgets, x));
}
private static final Pattern INDEXED_LINK_PATTERN = Pattern.compile("(?s)(\\S*)\\[(\\d+)\\]\\:(.*)");
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/annotation/JsonConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/annotation/JsonConfigAnnotation.java
index 11aa5d7..2823ab2 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/annotation/JsonConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/annotation/JsonConfigAnnotation.java
@@ -42,15 +42,11 @@ public class JsonConfigAnnotation {
@Override
public void apply(AnnotationInfo<JsonConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
JsonConfig a = ai.getAnnotation();
- if (! a.addBeanTypes().isEmpty())
- psb.set(JSON_addBeanTypes, bool(a.addBeanTypes()));
- if (! a.escapeSolidus().isEmpty())
- psb.set(JSON_escapeSolidus, bool(a.escapeSolidus()));
- if (! a.simpleMode().isEmpty())
- psb.set(JSON_simpleMode, bool(a.simpleMode()));
- if (! a.validateEnd().isEmpty())
- psb.set(JSON_validateEnd, bool(a.validateEnd()));
+ psb.setIfNotEmpty(JSON_addBeanTypes, bool(a.addBeanTypes()));
+ psb.setIfNotEmpty(JSON_escapeSolidus, bool(a.escapeSolidus()));
+ psb.setIfNotEmpty(JSON_simpleMode, bool(a.simpleMode()));
+ psb.setIfNotEmpty(JSON_validateEnd, bool(a.validateEnd()));
}
}
}
\ No newline at end of file
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/annotation/JsonSchemaConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/annotation/JsonSchemaConfigAnnotation.java
index bfc51e6..ba88948 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/annotation/JsonSchemaConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/annotation/JsonSchemaConfigAnnotation.java
@@ -42,20 +42,14 @@ public class JsonSchemaConfigAnnotation {
@Override
public void apply(AnnotationInfo<JsonSchemaConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
JsonSchemaConfig a = ai.getAnnotation();
- if (! a.addDescriptionsTo().isEmpty())
- psb.set(JSONSCHEMA_addDescriptionsTo, string(a.addDescriptionsTo()));
- if (! a.addExamplesTo().isEmpty())
- psb.set(JSONSCHEMA_addExamplesTo, string(a.addExamplesTo()));
- if (! a.allowNestedDescriptions().isEmpty())
- psb.set(JSONSCHEMA_allowNestedDescriptions, bool(a.allowNestedDescriptions()));
- if (! a.allowNestedExamples().isEmpty())
- psb.set(JSONSCHEMA_allowNestedExamples, bool(a.allowNestedExamples()));
- if (a.beanDefMapper() != BeanDefMapper.Null.class)
- psb.set(JSONSCHEMA_beanDefMapper, a.beanDefMapper());
- if (! a.ignoreTypes().isEmpty())
- psb.set(JSONSCHEMA_ignoreTypes, string(a.ignoreTypes()));
- if (! a.useBeanDefs().isEmpty())
- psb.set(JSONSCHEMA_useBeanDefs, bool(a.useBeanDefs()));
+
+ psb.setIfNotEmpty(JSONSCHEMA_addDescriptionsTo, string(a.addDescriptionsTo()));
+ psb.setIfNotEmpty(JSONSCHEMA_addExamplesTo, string(a.addExamplesTo()));
+ psb.setIfNotEmpty(JSONSCHEMA_allowNestedDescriptions, bool(a.allowNestedDescriptions()));
+ psb.setIfNotEmpty(JSONSCHEMA_allowNestedExamples, bool(a.allowNestedExamples()));
+ psb.setIf(a.beanDefMapper() != BeanDefMapper.Null.class, JSONSCHEMA_beanDefMapper, a.beanDefMapper());
+ psb.setIfNotEmpty(JSONSCHEMA_ignoreTypes, string(a.ignoreTypes()));
+ psb.setIfNotEmpty(JSONSCHEMA_useBeanDefs, bool(a.useBeanDefs()));
}
}
}
\ No newline at end of file
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/annotation/MsgPackConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/annotation/MsgPackConfigAnnotation.java
index bc54d3c..fb6e9aa 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/annotation/MsgPackConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/annotation/MsgPackConfigAnnotation.java
@@ -42,8 +42,7 @@ public class MsgPackConfigAnnotation {
public void apply(AnnotationInfo<MsgPackConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
MsgPackConfig a = ai.getAnnotation();
- if (! a.addBeanTypes().isEmpty())
- psb.set(MSGPACK_addBeanTypes, bool(a.addBeanTypes()));
+ psb.setIfNotEmpty(MSGPACK_addBeanTypes, bool(a.addBeanTypes()));
}
}
}
\ No newline at end of file
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/annotation/OpenApiConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/annotation/OpenApiConfigAnnotation.java
index bf51a95..c39b5bf 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/annotation/OpenApiConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/annotation/OpenApiConfigAnnotation.java
@@ -42,10 +42,8 @@ public class OpenApiConfigAnnotation {
public void apply(AnnotationInfo<OpenApiConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
OpenApiConfig a = ai.getAnnotation();
- if (! a.format().isEmpty())
- psb.set(OAPI_format, string(a.format()));
- if (! a.collectionFormat().isEmpty())
- psb.set(OAPI_collectionFormat, string(a.collectionFormat()));
+ psb.setIfNotEmpty(OAPI_format, string(a.format()));
+ psb.setIfNotEmpty(OAPI_collectionFormat, string(a.collectionFormat()));
}
}
}
\ No newline at end of file
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/annotation/ParserConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/annotation/ParserConfigAnnotation.java
index b538ac8..0718413 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/annotation/ParserConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/annotation/ParserConfigAnnotation.java
@@ -45,26 +45,16 @@ public class ParserConfigAnnotation {
@Override
public void apply(AnnotationInfo<ParserConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
ParserConfig a = ai.getAnnotation();
- if (! a.autoCloseStreams().isEmpty())
- psb.set(PARSER_autoCloseStreams, bool(a.autoCloseStreams()));
- if (! a.debugOutputLines().isEmpty())
- psb.set(PARSER_debugOutputLines, integer(a.debugOutputLines(), "debugOutputLines"));
- if (a.listener() != ParserListener.Null.class)
- psb.set(PARSER_listener, a.listener());
- if (! a.strict().isEmpty())
- psb.set(PARSER_strict, bool(a.strict()));
- if (! a.trimStrings().isEmpty())
- psb.set(PARSER_trimStrings, bool(a.trimStrings()));
- if (! a.unbuffered().isEmpty())
- psb.set(PARSER_unbuffered, bool(a.unbuffered()));
- if (! a.binaryFormat().isEmpty())
- psb.set(ISPARSER_binaryFormat, string(a.binaryFormat()));
-
- if (! a.fileCharset().isEmpty())
- psb.set(RPARSER_fileCharset, charset(a.fileCharset()));
- if (! a.streamCharset().isEmpty())
- psb.set(RPARSER_streamCharset, charset(a.streamCharset()));
+ psb.setIfNotEmpty(PARSER_autoCloseStreams, bool(a.autoCloseStreams()));
+ psb.setIfNotEmpty(PARSER_debugOutputLines, integer(a.debugOutputLines(), "debugOutputLines"));
+ psb.setIf(a.listener() != ParserListener.Null.class, PARSER_listener, a.listener());
+ psb.setIfNotEmpty(PARSER_strict, bool(a.strict()));
+ psb.setIfNotEmpty(PARSER_trimStrings, bool(a.trimStrings()));
+ psb.setIfNotEmpty(PARSER_unbuffered, bool(a.unbuffered()));
+ psb.setIfNotEmpty(ISPARSER_binaryFormat, string(a.binaryFormat()));
+ psb.setIfNotEmpty(RPARSER_fileCharset, charset(a.fileCharset()));
+ psb.setIfNotEmpty(RPARSER_streamCharset, charset(a.streamCharset()));
}
private Object charset(String in) {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/annotation/SerializerConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/annotation/SerializerConfigAnnotation.java
index e07961b..b4f2e23 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/annotation/SerializerConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/annotation/SerializerConfigAnnotation.java
@@ -45,44 +45,25 @@ public class SerializerConfigAnnotation {
@Override
public void apply(AnnotationInfo<SerializerConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
SerializerConfig a = ai.getAnnotation();
- if (! a.addBeanTypes().isEmpty())
- psb.set(SERIALIZER_addBeanTypes, bool(a.addBeanTypes()));
- if (! a.addRootType().isEmpty())
- psb.set(SERIALIZER_addRootType, bool(a.addRootType()));
- if (! a.keepNullProperties().isEmpty())
- psb.set(SERIALIZER_keepNullProperties, bool(a.keepNullProperties()));
- if (a.listener() != SerializerListener.Null.class)
- psb.set(SERIALIZER_listener, a.listener());
- if (! a.sortCollections().isEmpty())
- psb.set(SERIALIZER_sortCollections, bool(a.sortCollections()));
- if (! a.sortMaps().isEmpty())
- psb.set(SERIALIZER_sortMaps, bool(a.sortMaps()));
- if (! a.trimEmptyCollections().isEmpty())
- psb.set(SERIALIZER_trimEmptyCollections, bool(a.trimEmptyCollections()));
- if (! a.trimEmptyMaps().isEmpty())
- psb.set(SERIALIZER_trimEmptyMaps, bool(a.trimEmptyMaps()));
- if (! a.trimStrings().isEmpty())
- psb.set(SERIALIZER_trimStrings, bool(a.trimStrings()));
- if (! a.uriContext().isEmpty())
- psb.set(SERIALIZER_uriContext, string(a.uriContext()));
- if (! a.uriRelativity().isEmpty())
- psb.set(SERIALIZER_uriRelativity, string(a.uriRelativity()));
- if (! a.uriResolution().isEmpty())
- psb.set(SERIALIZER_uriResolution, string(a.uriResolution()));
- if (! a.binaryFormat().isEmpty())
- psb.set(OSSERIALIZER_binaryFormat, string(a.binaryFormat()));
-
- if (! a.fileCharset().isEmpty())
- psb.set(WSERIALIZER_fileCharset, charset(a.fileCharset()));
- if (! a.maxIndent().isEmpty())
- psb.set(WSERIALIZER_maxIndent, integer(a.maxIndent(), "maxIndent"));
- if (! a.quoteChar().isEmpty())
- psb.set(WSERIALIZER_quoteChar, character(a.quoteChar(), "quoteChar"));
- if (! a.streamCharset().isEmpty())
- psb.set(WSERIALIZER_streamCharset, charset(a.streamCharset()));
- if (! a.useWhitespace().isEmpty())
- psb.set(WSERIALIZER_useWhitespace, bool(a.useWhitespace()));
+ psb.setIfNotEmpty(SERIALIZER_addBeanTypes, bool(a.addBeanTypes()));
+ psb.setIfNotEmpty(SERIALIZER_addRootType, bool(a.addRootType()));
+ psb.setIfNotEmpty(SERIALIZER_keepNullProperties, bool(a.keepNullProperties()));
+ psb.setIf(a.listener() != SerializerListener.Null.class, SERIALIZER_listener, a.listener());
+ psb.setIfNotEmpty(SERIALIZER_sortCollections, bool(a.sortCollections()));
+ psb.setIfNotEmpty(SERIALIZER_sortMaps, bool(a.sortMaps()));
+ psb.setIfNotEmpty(SERIALIZER_trimEmptyCollections, bool(a.trimEmptyCollections()));
+ psb.setIfNotEmpty(SERIALIZER_trimEmptyMaps, bool(a.trimEmptyMaps()));
+ psb.setIfNotEmpty(SERIALIZER_trimStrings, bool(a.trimStrings()));
+ psb.setIfNotEmpty(SERIALIZER_uriContext, string(a.uriContext()));
+ psb.setIfNotEmpty(SERIALIZER_uriRelativity, string(a.uriRelativity()));
+ psb.setIfNotEmpty(SERIALIZER_uriResolution, string(a.uriResolution()));
+ psb.setIfNotEmpty(OSSERIALIZER_binaryFormat, string(a.binaryFormat()));
+ psb.setIfNotEmpty(WSERIALIZER_fileCharset, charset(a.fileCharset()));
+ psb.setIfNotEmpty(WSERIALIZER_maxIndent, integer(a.maxIndent(), "maxIndent"));
+ psb.setIfNotEmpty(WSERIALIZER_quoteChar, character(a.quoteChar(), "quoteChar"));
+ psb.setIfNotEmpty(WSERIALIZER_streamCharset, charset(a.streamCharset()));
+ psb.setIfNotEmpty(WSERIALIZER_useWhitespace, bool(a.useWhitespace()));
}
private Object charset(String in) {
@@ -92,8 +73,10 @@ public class SerializerConfigAnnotation {
return s;
}
- private char character(String in, String loc) {
+ private Character character(String in, String loc) {
String s = string(in);
+ if (s == null)
+ return null;
if (s.length() != 1)
throw new ConfigException("Invalid syntax for character on annotation @{0}({1}): {2}", "SerializerConfig", loc, in);
return s.charAt(0);
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/annotation/SoapXmlConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/annotation/SoapXmlConfigAnnotation.java
index d440cec..90473f1 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/annotation/SoapXmlConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/annotation/SoapXmlConfigAnnotation.java
@@ -42,8 +42,7 @@ public class SoapXmlConfigAnnotation {
public void apply(AnnotationInfo<SoapXmlConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
SoapXmlConfig a = ai.getAnnotation();
- if (! a.soapAction().isEmpty())
- psb.set(SOAPXML_SOAPAction, string(a.soapAction()));
+ psb.setIfNotEmpty(SOAPXML_SOAPAction, string(a.soapAction()));
}
}
}
\ No newline at end of file
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/annotation/UonConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/annotation/UonConfigAnnotation.java
index 2aaa7d1..f0c0c10 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/annotation/UonConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/annotation/UonConfigAnnotation.java
@@ -42,17 +42,12 @@ public class UonConfigAnnotation {
@Override
public void apply(AnnotationInfo<UonConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
UonConfig a = ai.getAnnotation();
- if (! a.addBeanTypes().isEmpty())
- psb.set(UON_addBeanTypes, bool(a.addBeanTypes()));
- if (! a.encoding().isEmpty())
- psb.set(UON_encoding, bool(a.encoding()));
- if (! a.paramFormat().isEmpty())
- psb.set(UON_paramFormat, string(a.paramFormat()));
- if (! a.decoding().isEmpty())
- psb.set(UON_decoding, bool(a.decoding()));
- if (! a.validateEnd().isEmpty())
- psb.set(UON_validateEnd, bool(a.validateEnd()));
+ psb.setIfNotEmpty(UON_addBeanTypes, bool(a.addBeanTypes()));
+ psb.setIfNotEmpty(UON_encoding, bool(a.encoding()));
+ psb.setIfNotEmpty(UON_paramFormat, string(a.paramFormat()));
+ psb.setIfNotEmpty(UON_decoding, bool(a.decoding()));
+ psb.setIfNotEmpty(UON_validateEnd, bool(a.validateEnd()));
}
}
}
\ No newline at end of file
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/annotation/XmlConfigAnnotation.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/annotation/XmlConfigAnnotation.java
index 3509d25..e194459 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/annotation/XmlConfigAnnotation.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/annotation/XmlConfigAnnotation.java
@@ -43,29 +43,18 @@ public class XmlConfigAnnotation {
@Override
public void apply(AnnotationInfo<XmlConfig> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
XmlConfig a = ai.getAnnotation();
- if (! a.addBeanTypes().isEmpty())
- psb.set(XML_addBeanTypes, bool(a.addBeanTypes()));
- if (! a.addNamespaceUrisToRoot().isEmpty())
- psb.set(XML_addNamespaceUrisToRoot, bool(a.addNamespaceUrisToRoot()));
- if (! a.disableAutoDetectNamespaces().isEmpty())
- psb.set(XML_disableAutoDetectNamespaces, bool(a.disableAutoDetectNamespaces()));
- if (! a.defaultNamespace().isEmpty())
- psb.set(XML_defaultNamespace, string(a.defaultNamespace()));
- if (! a.enableNamespaces().isEmpty())
- psb.set(XML_enableNamespaces, bool(a.enableNamespaces()));
- if (a.namespaces().length > 0)
- psb.set(XML_namespaces, Namespace.createArray(stringList(a.namespaces())));
- if (a.eventAllocator() != XmlEventAllocator.Null.class)
- psb.set(XML_eventAllocator, a.eventAllocator());
- if (! a.preserveRootElement().isEmpty())
- psb.set(XML_preserveRootElement, bool(a.preserveRootElement()));
- if (a.reporter() != XmlReporter.Null.class)
- psb.set(XML_reporter, a.reporter());
- if (a.resolver() != XmlResolver.Null.class)
- psb.set(XML_resolver, a.resolver());
- if (! a.validating().isEmpty())
- psb.set(XML_validating, bool(a.validating()));
+ psb.setIfNotEmpty(XML_addBeanTypes, bool(a.addBeanTypes()));
+ psb.setIfNotEmpty(XML_addNamespaceUrisToRoot, bool(a.addNamespaceUrisToRoot()));
+ psb.setIfNotEmpty(XML_disableAutoDetectNamespaces, bool(a.disableAutoDetectNamespaces()));
+ psb.setIfNotEmpty(XML_defaultNamespace, string(a.defaultNamespace()));
+ psb.setIfNotEmpty(XML_enableNamespaces, bool(a.enableNamespaces()));
+ psb.setIf(a.namespaces().length > 0, XML_namespaces, Namespace.createArray(stringList(a.namespaces())));
+ psb.setIf(a.eventAllocator() != XmlEventAllocator.Null.class, XML_eventAllocator, a.eventAllocator());
+ psb.setIfNotEmpty(XML_preserveRootElement, bool(a.preserveRootElement()));
+ psb.setIf(a.reporter() != XmlReporter.Null.class, XML_reporter, a.reporter());
+ psb.setIf(a.resolver() != XmlResolver.Null.class, XML_resolver, a.resolver());
+ psb.setIfNotEmpty(XML_validating, bool(a.validating()));
}
}
}
\ No newline at end of file
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 e12383c..7a1a8d0 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
@@ -968,88 +968,46 @@ public class RestAnnotation {
Rest a = ai.getAnnotation();
ClassInfo c = ai.getClassOn();
- if (a.serializers().length > 0)
- psb.set(REST_serializers, merge(ConverterUtils.toType(psb.peek(REST_serializers), Object[].class), a.serializers()));
-
- if (a.parsers().length > 0)
- psb.set(REST_parsers, merge(ConverterUtils.toType(psb.peek(REST_parsers), Object[].class), a.parsers()));
-
+ psb.set(REST_serializers, merge(ConverterUtils.toType(psb.peek(REST_serializers), Object[].class), a.serializers()));
+ psb.set(REST_parsers, merge(ConverterUtils.toType(psb.peek(REST_parsers), Object[].class), a.parsers()));
psb.setIf(a.partSerializer() != HttpPartSerializer.Null.class, REST_partSerializer, a.partSerializer());
-
psb.setIf(a.partParser() != HttpPartParser.Null.class, REST_partParser, a.partParser());
-
psb.prependTo(REST_encoders, a.encoders());
-
psb.setIfNotEmpty(REST_produces, stringList(a.produces()));
-
psb.setIfNotEmpty(REST_consumes, stringList(a.consumes()));
-
stringStream(a.defaultRequestAttributes()).map(x -> BasicNamedAttribute.ofPair(x)).forEach(x -> psb.appendTo(REST_defaultRequestAttributes, x));
-
stringStream(a.defaultRequestHeaders()).map(x -> BasicHeader.ofPair(x)).forEach(x -> psb.appendTo(REST_defaultRequestHeaders, x));
-
stringStream(a.defaultResponseHeaders()).map(x -> BasicHeader.ofPair(x)).forEach(x -> psb.appendTo(REST_defaultResponseHeaders, x));
-
psb.appendToIfNotEmpty(REST_defaultRequestHeaders, Accept.of(string(a.defaultAccept())));
-
psb.appendToIfNotEmpty(REST_defaultRequestHeaders, ContentType.of(string(a.defaultContentType())));
-
psb.prependTo(REST_responseHandlers, a.responseHandlers());
-
psb.prependTo(REST_converters, a.converters());
-
psb.prependTo(REST_guards, reverse(a.guards()));
-
psb.prependTo(REST_children, a.children());
-
psb.prependTo(REST_paramResolvers, a.paramResolvers());
-
psb.setIf(a.context() != RestContext.Null.class, REST_context, a.context());
-
psb.setIfNotEmpty(REST_uriContext, string(a.uriContext()));
-
psb.setIfNotEmpty(REST_uriAuthority, string(a.uriAuthority()));
-
psb.setIfNotEmpty(REST_uriRelativity, string(a.uriRelativity()));
-
psb.setIfNotEmpty(REST_uriResolution, string(a.uriResolution()));
-
psb.prependTo(REST_messages, Tuple2.of(c.inner(), string(a.messages())));
-
psb.setIf(a.fileFinder() != FileFinder.Null.class, REST_fileFinder, a.fileFinder());
-
psb.setIf(a.staticFiles() != StaticFiles.Null.class, REST_staticFiles, a.staticFiles());
-
psb.setIfNotEmpty(REST_path, trimLeadingSlash(string(a.path())));
-
psb.setIfNotEmpty(REST_clientVersionHeader, string(a.clientVersionHeader()));
-
psb.setIf(a.beanFactory() != BeanFactory.Null.class, REST_beanFactory, a.beanFactory());
-
psb.setIf(a.callLogger() != RestLogger.Null.class, REST_callLogger, a.callLogger());
-
psb.setIf(a.infoProvider() != RestInfoProvider.Null.class, REST_infoProvider, a.infoProvider());
-
psb.setIfNotEmpty(REST_disableAllowBodyParam, bool(a.disableAllowBodyParam()));
-
psb.setIfNotEmpty(REST_allowedHeaderParams, string(a.allowedHeaderParams()));
-
psb.setIfNotEmpty(REST_allowedMethodHeaders, string(a.allowedMethodHeaders()));
-
psb.setIfNotEmpty(REST_allowedMethodParams, string(a.allowedMethodParams()));
-
psb.setIfNotEmpty(REST_renderResponseStackTraces, bool(a.renderResponseStackTraces()));
-
psb.setIfNotEmpty(REST_defaultCharset, string(a.defaultCharset()));
-
psb.setIfNotEmpty(REST_maxInput, string(a.maxInput()));
-
psb.setIfNotEmpty(REST_debug, string(a.debug()));
-
psb.setIfNotEmpty(REST_debugOn, string(a.debugOn()));
-
cdStream(a.rolesDeclared()).forEach(x -> psb.addTo(REST_rolesDeclared, x));
-
psb.addToIfNotEmpty(REST_roleGuard, string(a.roleGuard()));
}
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestMethodAnnotation.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestMethodAnnotation.java
index bfd9034..e7f899f 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestMethodAnnotation.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/annotation/RestMethodAnnotation.java
@@ -612,55 +612,33 @@ public class RestMethodAnnotation {
public void apply(AnnotationInfo<RestMethod> ai, PropertyStoreBuilder psb, VarResolverSession vr) {
RestMethod a = ai.getAnnotation();
- if (a.serializers().length > 0)
- psb.set(REST_serializers, merge(ConverterUtils.toType(psb.peek(REST_serializers), Object[].class), a.serializers()));
-
- if (a.parsers().length > 0)
- psb.set(REST_parsers, merge(ConverterUtils.toType(psb.peek(REST_parsers), Object[].class), a.parsers()));
-
- if (a.encoders().length > 0)
- psb.set(REST_encoders, merge(ConverterUtils.toType(psb.peek(REST_encoders), Object[].class), a.encoders()));
-
+ psb.set(REST_serializers, merge(ConverterUtils.toType(psb.peek(REST_serializers), Object[].class), a.serializers()));
+ psb.set(REST_parsers, merge(ConverterUtils.toType(psb.peek(REST_parsers), Object[].class), a.parsers()));
+ psb.set(REST_encoders, merge(ConverterUtils.toType(psb.peek(REST_encoders), Object[].class), a.encoders()));
psb.setIfNotEmpty(REST_produces, stringList(a.produces()));
-
psb.setIfNotEmpty(REST_consumes, stringList(a.consumes()));
-
stringStream(a.defaultRequestHeaders()).map(x -> BasicHeader.ofPair(x)).forEach(x -> psb.appendTo(RESTMETHOD_defaultRequestHeaders, x));
-
stringStream(a.defaultResponseHeaders()).map(x -> BasicHeader.ofPair(x)).forEach(x -> psb.appendTo(RESTMETHOD_defaultResponseHeaders, x));
-
stringStream(a.defaultRequestAttributes()).map(x -> BasicNamedAttribute.ofPair(x)).forEach(x -> psb.appendTo(RESTMETHOD_defaultRequestAttributes, x));
-
stringStream(a.defaultQuery()).map(x -> BasicNameValuePair.ofPair(x)).forEach(x -> psb.appendTo(RESTMETHOD_defaultQuery, x));
-
stringStream(a.defaultFormData()).map(x -> BasicNameValuePair.ofPair(x)).forEach(x -> psb.appendTo(RESTMETHOD_defaultFormData, x));
-
psb.appendToIfNotEmpty(REST_defaultRequestHeaders, Accept.of(string(a.defaultAccept())));
-
psb.appendToIfNotEmpty(REST_defaultRequestHeaders, ContentType.of(string(a.defaultContentType())));
-
psb.prependTo(REST_converters, a.converters());
-
psb.prependTo(REST_guards, reverse(a.guards()));
-
psb.prependTo(RESTMETHOD_matchers, a.matchers());
-
psb.setIfNotEmpty(RESTMETHOD_clientVersion, a.clientVersion());
-
psb.setIfNotEmpty(REST_defaultCharset, string(a.defaultCharset()));
-
psb.setIfNotEmpty(REST_maxInput, string(a.maxInput()));
-
stringStream(a.path()).forEach(x -> psb.prependTo(RESTMETHOD_path, x));
-
cdStream(a.rolesDeclared()).forEach(x -> psb.addTo(REST_rolesDeclared, x));
-
psb.addToIfNotEmpty(REST_roleGuard, string(a.roleGuard()));
-
psb.setIfNotEmpty(RESTMETHOD_httpMethod, string(a.method()));
+ psb.setIf(a.priority() != 0, RESTMETHOD_priority, a.priority());
+ psb.setIfNotEmpty(RESTMETHOD_debug, string(a.debug()));
- if (! a.value().isEmpty()) {
- String v = string(a.value()).trim();
+ String v = StringUtils.trim(string(a.value()));
+ if (v != null) {
int i = v.indexOf(' ');
if (i == -1) {
psb.set(RESTMETHOD_httpMethod, v);
@@ -669,10 +647,6 @@ public class RestMethodAnnotation {
psb.prependTo(RESTMETHOD_path, v.substring(i).trim());
}
}
-
- psb.setIf(a.priority() != 0, RESTMETHOD_priority, a.priority());
-
- psb.setIfNotEmpty(RESTMETHOD_debug, string(a.debug()));
}
}