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 2022/02/14 17:15:00 UTC
[juneau] branch master updated: Replace AList/ASet/AMap with CollectionUtils.
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 f93668b Replace AList/ASet/AMap with CollectionUtils.
f93668b is described below
commit f93668bea8ab3a0e8a5a160bb57240ed64ff315a
Author: JamesBognar <ja...@salesforce.com>
AuthorDate: Mon Feb 14 12:14:37 2022 -0500
Replace AList/ASet/AMap with CollectionUtils.
---
.../main/ConfigurablePropertyCodeGenerator.java | 5 +-
.../main/java/org/apache/juneau/config/Config.java | 3 +-
.../main/java/org/apache/juneau/config/Entry.java | 32 +-
.../java/org/apache/juneau/config/Section.java | 8 +-
.../apache/juneau/config/internal/ConfigMap.java | 4 +-
.../juneau/config/internal/ConfigMapEntry.java | 7 +-
.../org/apache/juneau/config/store/FileStore.java | 2 +-
.../java/org/apache/juneau/dto/LinkString.java | 7 +-
.../java/org/apache/juneau/dto/atom/Category.java | 8 +-
.../java/org/apache/juneau/dto/atom/Common.java | 6 +-
.../org/apache/juneau/dto/atom/CommonEntry.java | 17 +-
.../java/org/apache/juneau/dto/atom/Content.java | 4 +-
.../java/org/apache/juneau/dto/atom/Entry.java | 9 +-
.../main/java/org/apache/juneau/dto/atom/Feed.java | 11 +-
.../java/org/apache/juneau/dto/atom/Generator.java | 8 +-
.../main/java/org/apache/juneau/dto/atom/Icon.java | 4 +-
.../main/java/org/apache/juneau/dto/atom/Id.java | 3 +-
.../main/java/org/apache/juneau/dto/atom/Link.java | 13 +-
.../main/java/org/apache/juneau/dto/atom/Logo.java | 4 +-
.../java/org/apache/juneau/dto/atom/Person.java | 8 +-
.../java/org/apache/juneau/dto/atom/Source.java | 10 +-
.../main/java/org/apache/juneau/dto/atom/Text.java | 5 +-
.../main/java/org/apache/juneau/dto/html5/A.java | 1 -
.../java/org/apache/juneau/dto/html5/Area.java | 1 -
.../java/org/apache/juneau/dto/html5/Audio.java | 1 -
.../java/org/apache/juneau/dto/html5/Base.java | 1 -
.../java/org/apache/juneau/dto/html5/Button.java | 1 -
.../java/org/apache/juneau/dto/html5/Embed.java | 1 -
.../java/org/apache/juneau/dto/html5/Form.java | 1 -
.../org/apache/juneau/dto/html5/HtmlElement.java | 3 +-
.../java/org/apache/juneau/dto/html5/Iframe.java | 1 -
.../main/java/org/apache/juneau/dto/html5/Img.java | 1 -
.../java/org/apache/juneau/dto/html5/Link.java | 1 -
.../java/org/apache/juneau/dto/html5/Script.java | 1 -
.../java/org/apache/juneau/dto/html5/Source.java | 1 -
.../java/org/apache/juneau/dto/html5/Track.java | 1 -
.../java/org/apache/juneau/dto/html5/Video.java | 1 -
.../apache/juneau/dto/jsonschema/JsonSchema.java | 1 -
.../juneau/dto/jsonschema/JsonSchemaMap.java | 3 +-
.../org/apache/juneau/dto/swagger/Contact.java | 19 +-
.../juneau/dto/swagger/ExternalDocumentation.java | 15 +-
.../org/apache/juneau/dto/swagger/HeaderInfo.java | 87 ++---
.../java/org/apache/juneau/dto/swagger/Info.java | 34 +-
.../java/org/apache/juneau/dto/swagger/Items.java | 79 ++--
.../org/apache/juneau/dto/swagger/License.java | 15 +-
.../org/apache/juneau/dto/swagger/Operation.java | 59 +--
.../apache/juneau/dto/swagger/OperationMap.java | 5 +-
.../apache/juneau/dto/swagger/ParameterInfo.java | 105 +++---
.../apache/juneau/dto/swagger/ResponseInfo.java | 23 +-
.../org/apache/juneau/dto/swagger/SchemaInfo.java | 131 +++----
.../apache/juneau/dto/swagger/SecurityScheme.java | 39 +-
.../org/apache/juneau/dto/swagger/Swagger.java | 73 ++--
.../apache/juneau/dto/swagger/SwaggerElement.java | 7 +-
.../java/org/apache/juneau/dto/swagger/Tag.java | 18 +-
.../java/org/apache/juneau/dto/swagger/Xml.java | 26 +-
.../apache/juneau/dto/swagger/ui/SwaggerUI.java | 5 +-
.../java/org/apache/juneau/jena/RdfParser.java | 20 +-
.../org/apache/juneau/jena/RdfParserSession.java | 19 +-
.../java/org/apache/juneau/jena/RdfSerializer.java | 25 +-
.../apache/juneau/jena/RdfSerializerSession.java | 21 +-
.../jena/annotation/RdfConfigAnnotation.java | 6 +-
.../java/org/apache/juneau/AnnotationApplier.java | 10 +-
.../main/java/org/apache/juneau/BeanBuilder.java | 6 +-
.../main/java/org/apache/juneau/BeanContext.java | 15 +-
.../java/org/apache/juneau/BeanContextable.java | 4 +-
.../main/java/org/apache/juneau/BeanFilter.java | 32 +-
.../src/main/java/org/apache/juneau/BeanMeta.java | 25 +-
.../java/org/apache/juneau/BeanPropertyMeta.java | 8 +-
.../main/java/org/apache/juneau/BeanSession.java | 7 +-
.../src/main/java/org/apache/juneau/ClassMeta.java | 16 +-
.../src/main/java/org/apache/juneau/Context.java | 5 +-
.../src/main/java/org/apache/juneau/Value.java | 4 +-
.../src/main/java/org/apache/juneau/Version.java | 5 +-
.../juneau/assertions/FluentArrayAssertion.java | 5 +-
.../juneau/assertions/FluentListAssertion.java | 3 +-
.../juneau/assertions/FluentMapAssertion.java | 2 +-
.../juneau/assertions/FluentObjectAssertion.java | 3 +-
.../java/org/apache/juneau/collections/Args.java | 4 +-
.../java/org/apache/juneau/cp/BasicFileFinder.java | 12 +-
.../apache/juneau/cp/BeanCreateMethodFinder.java | 4 +-
.../java/org/apache/juneau/cp/BeanCreator.java | 4 +-
.../main/java/org/apache/juneau/cp/BeanStore.java | 12 +-
.../org/apache/juneau/cp/ContextBeanCreator.java | 4 +-
.../org/apache/juneau/cp/DefaultClassList.java | 4 +-
.../org/apache/juneau/cp/DefaultSettingsMap.java | 4 +-
.../main/java/org/apache/juneau/cp/FileFinder.java | 5 +-
.../org/apache/juneau/encoders/EncoderSet.java | 13 +-
.../org/apache/juneau/html/HtmlDocSerializer.java | 26 +-
.../org/apache/juneau/html/HtmlParserSession.java | 5 +-
.../java/org/apache/juneau/html/HtmlWidgetMap.java | 4 +-
.../java/org/apache/juneau/http/HttpMethod.java | 5 +-
.../java/org/apache/juneau/http/HttpParts.java | 3 +-
.../juneau/http/header/BasicBooleanHeader.java | 6 +-
.../juneau/http/header/BasicCsvArrayHeader.java | 6 +-
.../apache/juneau/http/header/BasicDateHeader.java | 7 +-
.../http/header/BasicEntityTagArrayHeader.java | 13 +-
.../juneau/http/header/BasicEntityTagHeader.java | 6 +-
.../org/apache/juneau/http/header/BasicHeader.java | 3 +-
.../juneau/http/header/BasicIntegerHeader.java | 6 +-
.../apache/juneau/http/header/BasicLongHeader.java | 6 +-
.../http/header/BasicMediaRangeArrayHeader.java | 6 +-
.../juneau/http/header/BasicMediaTypeHeader.java | 6 +-
.../juneau/http/header/BasicStringHeader.java | 4 +-
.../http/header/BasicStringRangeArrayHeader.java | 6 +-
.../apache/juneau/http/header/BasicUriHeader.java | 6 +-
.../apache/juneau/http/header/ClientVersion.java | 4 +-
.../org/apache/juneau/http/header/HeaderList.java | 39 +-
.../org/apache/juneau/http/header/IfRange.java | 6 +-
.../org/apache/juneau/http/header/MediaRange.java | 4 +-
.../org/apache/juneau/http/header/MediaRanges.java | 3 +-
.../org/apache/juneau/http/header/RetryAfter.java | 7 +-
.../org/apache/juneau/http/header/StringRange.java | 4 +-
.../apache/juneau/http/header/StringRanges.java | 3 +-
.../java/org/apache/juneau/http/header/Thrown.java | 8 +-
.../apache/juneau/http/part/BasicBooleanPart.java | 4 +-
.../apache/juneau/http/part/BasicCsvArrayPart.java | 12 +-
.../org/apache/juneau/http/part/BasicDatePart.java | 8 +-
.../apache/juneau/http/part/BasicIntegerPart.java | 4 +-
.../org/apache/juneau/http/part/BasicLongPart.java | 4 +-
.../apache/juneau/http/part/BasicStringPart.java | 3 +-
.../org/apache/juneau/http/part/BasicUriPart.java | 4 +-
.../java/org/apache/juneau/http/part/PartList.java | 35 +-
.../juneau/http/remote/RrpcInterfaceMeta.java | 10 +-
.../org/apache/juneau/httppart/HttpPartSchema.java | 176 ++++-----
.../httppart/bean/RequestBeanPropertyMeta.java | 4 +-
.../juneau/httppart/bean/ResponseBeanMeta.java | 6 +-
.../httppart/bean/ResponseBeanPropertyMeta.java | 4 +-
.../java/org/apache/juneau/internal/AList.java | 410 ---------------------
.../main/java/org/apache/juneau/internal/AMap.java | 301 ---------------
.../main/java/org/apache/juneau/internal/ASet.java | 324 ----------------
.../org/apache/juneau/internal/ASortedMap.java | 254 -------------
.../org/apache/juneau/internal/ASortedSet.java | 272 --------------
.../org/apache/juneau/internal/ArrayBuilder.java | 2 +-
.../apache/juneau/internal/CollectionUtils.java | 292 +++++++++++++++
.../org/apache/juneau/internal/ListBuilder.java | 34 +-
.../org/apache/juneau/internal/MapBuilder.java | 17 +-
.../apache/juneau/internal/ReverseIterable.java | 71 ----
.../org/apache/juneau/internal/SetBuilder.java | 16 +-
.../org/apache/juneau/internal/StringUtils.java | 45 +++
.../java/org/apache/juneau/internal/SystemEnv.java | 3 +-
.../org/apache/juneau/json/JsonParserSession.java | 3 +-
.../juneau/jsonschema/JsonSchemaGenerator.java | 4 +-
.../org/apache/juneau/jsonschema/SchemaUtils.java | 3 +-
.../org/apache/juneau/jsonschema/TypeCategory.java | 16 +-
.../juneau/msgpack/MsgPackParserSession.java | 3 +-
.../apache/juneau/oapi/OpenApiParserSession.java | 5 +-
.../main/java/org/apache/juneau/parser/Parser.java | 6 +-
.../java/org/apache/juneau/parser/ParserSet.java | 15 +-
.../org/apache/juneau/pojotools/SearchArgs.java | 4 +-
.../org/apache/juneau/reflect/AnnotationInfo.java | 5 +-
.../java/org/apache/juneau/reflect/ClassInfo.java | 46 +--
.../java/org/apache/juneau/reflect/ParamInfo.java | 3 +-
.../org/apache/juneau/serializer/Serializer.java | 7 +-
.../apache/juneau/serializer/SerializerSet.java | 19 +-
.../apache/juneau/serializer/WriterSerializer.java | 6 +-
.../juneau/soap/SoapXmlSerializerSession.java | 4 +-
.../java/org/apache/juneau/svl/VarResolver.java | 4 +-
.../java/org/apache/juneau/svl/vars/SwitchVar.java | 5 +-
.../java/org/apache/juneau/swap/AutoListSwap.java | 6 +-
.../java/org/apache/juneau/swap/AutoMapSwap.java | 7 +-
.../org/apache/juneau/swap/AutoNumberSwap.java | 5 +-
.../org/apache/juneau/swap/AutoObjectSwap.java | 6 +-
.../java/org/apache/juneau/swap/SurrogateSwap.java | 4 +-
.../org/apache/juneau/uon/UonParserSession.java | 3 +-
.../java/org/apache/juneau/uon/UonSerializer.java | 5 +-
.../urlencoding/UrlEncodingParserSession.java | 4 +-
.../java/org/apache/juneau/utils/BeanDiff.java | 6 +-
.../java/org/apache/juneau/utils/PojoQuery.java | 4 +-
.../org/apache/juneau/utils/ReflectionMap.java | 21 +-
.../java/org/apache/juneau/utils/SearchArgs.java | 16 +-
.../java/org/apache/juneau/xml/XmlBeanMeta.java | 16 +-
.../main/java/org/apache/juneau/xml/XmlParser.java | 8 +-
.../org/apache/juneau/xml/XmlParserSession.java | 3 +-
.../java/org/apache/juneau/xml/XmlSerializer.java | 11 +-
.../apache/juneau/doc/internal/DocGenerator.java | 3 +-
.../apache/juneau/microservice/Microservice.java | 17 +-
.../juneau/microservice/console/ConfigCommand.java | 2 +-
.../juneau/microservice/console/ExitCommand.java | 2 +-
.../juneau/microservice/console/HelpCommand.java | 2 +-
.../microservice/console/RestartCommand.java | 2 +-
.../microservice/resources/ConfigResource.java | 13 +-
.../microservice/resources/DirectoryResource.java | 13 +-
.../microservice/resources/LogEntryFormatter.java | 5 +-
.../juneau/microservice/resources/LogParser.java | 7 +-
.../microservice/resources/LogsResource.java | 11 +-
.../microservice/resources/SampleRootResource.java | 4 +-
.../microservice/resources/ShutdownResource.java | 4 +-
.../apache/juneau/rest/test/ConfigResource.java | 6 +-
.../juneau/rest/test/LargePojosResource.java | 6 +-
.../java/org/apache/juneau/rest/test/Root.java | 4 +-
.../apache/juneau/rest/test/TestMicroservice.java | 2 +-
.../rest/test/client/ThirdPartyProxyResource.java | 62 ++--
.../rest/test/client/ThirdPartyProxyTest.java | 232 ++++++------
.../apache/juneau/rest/client/ResponseHeader.java | 4 +-
.../org/apache/juneau/rest/client/RestClient.java | 16 +-
.../org/apache/juneau/rest/client/RestRequest.java | 10 +-
.../juneau/rest/client/remote/RemoteMeta.java | 6 +-
.../apache/juneau/rest/mock/MockRestClient.java | 12 +-
.../juneau/rest/mock/MockServletRequest.java | 7 +-
.../juneau/rest/springboot/SpringBeanStore.java | 8 +-
.../java/org/apache/juneau/rest/RestChildren.java | 8 +-
.../java/org/apache/juneau/rest/RestContext.java | 35 +-
.../java/org/apache/juneau/rest/RestOpContext.java | 30 +-
.../org/apache/juneau/rest/RestOperations.java | 10 +-
.../java/org/apache/juneau/rest/RestRequest.java | 8 +-
.../java/org/apache/juneau/rest/RestResponse.java | 14 +-
.../org/apache/juneau/rest/arg/FormDataArg.java | 4 +-
.../java/org/apache/juneau/rest/arg/HeaderArg.java | 4 +-
.../java/org/apache/juneau/rest/arg/PathArg.java | 4 +-
.../java/org/apache/juneau/rest/arg/QueryArg.java | 4 +-
.../apache/juneau/rest/arg/ResponseHeaderArg.java | 4 +-
.../org/apache/juneau/rest/arg/RestOpArgList.java | 5 +-
.../juneau/rest/converter/RestConverterList.java | 12 +-
.../apache/juneau/rest/guard/RestGuardList.java | 12 +-
.../juneau/rest/httppart/BasicNamedAttribute.java | 5 +-
.../juneau/rest/httppart/RequestAttribute.java | 6 +-
.../apache/juneau/rest/httppart/RequestBody.java | 5 +-
.../juneau/rest/httppart/RequestFormParams.java | 14 +-
.../juneau/rest/httppart/RequestHeaders.java | 12 +-
.../juneau/rest/httppart/RequestHttpPart.java | 12 +-
.../juneau/rest/httppart/RequestPathParams.java | 12 +-
.../juneau/rest/httppart/RequestQueryParams.java | 12 +-
.../org/apache/juneau/rest/logging/RestLogger.java | 3 +-
.../juneau/rest/matcher/RestMatcherList.java | 9 +-
.../rest/processor/ResponseProcessorList.java | 3 +-
.../juneau/rest/staticfile/BasicStaticFiles.java | 7 +-
.../apache/juneau/rest/staticfile/StaticFiles.java | 4 +-
.../apache/juneau/rest/stats/MethodExecStats.java | 4 +-
.../apache/juneau/rest/stats/MethodExecStore.java | 4 +-
.../org/apache/juneau/rest/stats/ThrownStats.java | 5 +-
.../org/apache/juneau/rest/stats/ThrownStore.java | 8 +-
.../rest/swagger/BasicSwaggerProviderSession.java | 6 +-
.../juneau/rest/swagger/SwaggerProvider.java | 9 +-
.../org/apache/juneau/rest/util/RestUtils.java | 101 ++---
.../java/org/apache/juneau/rest/util/UrlPath.java | 7 +-
.../juneau/rest/util/UrlPathMatcherList.java | 9 +-
.../juneau/rest/widget/ContentTypeMenuItem.java | 2 +-
.../apache/juneau/rest/widget/ThemeMenuItem.java | 2 +-
.../pojos/PrimitiveAtomicObjectsBean.java | 8 +-
.../testutils/pojos/PrimitiveObjectsBean.java | 26 +-
.../org/apache/juneau/testutils/pojos/XBeans.java | 83 ++---
.../java/org/apache/juneau/BeanConfigTest.java | 4 +-
.../test/java/org/apache/juneau/BeanMapTest.java | 4 +-
.../test/java/org/apache/juneau/BenchmarkTest.java | 5 +-
.../test/java/org/apache/juneau/ComboInput.java | 8 +-
.../apache/juneau/ReadWriteOnlyPropertiesTest.java | 18 +-
.../juneau/SerializerPropertiesComboTest.java | 11 +-
.../test/java/org/apache/juneau/Version_Test.java | 5 +-
.../juneau/a/rttests/RoundTripBeanMapsTest.java | 6 +-
.../a/rttests/RoundTripBeanPropertiesTest.java | 9 +-
.../juneau/a/rttests/RoundTripClassesTest.java | 6 +-
.../apache/juneau/a/rttests/RoundTripEnumTest.java | 18 +-
.../a/rttests/RoundTripOptionalObjectsTest.java | 48 +--
.../a/rttests/RoundTripPrimitivesBeansTest.java | 20 +-
.../a/rttests/RoundTripSimpleObjectsTest.java | 7 +-
.../juneau/a/rttests/RoundTripToOMapsTest.java | 6 +-
.../a/rttests/RoundTripTransformBeansTest.java | 10 +-
.../juneau/assertions/AnyAssertion_Test.java | 13 +-
.../assertions/AssertionPredicates_Test.java | 4 +-
.../apache/juneau/assertions/Assertions_Test.java | 17 +-
.../juneau/assertions/BeanListAssertion_Test.java | 18 +-
.../assertions/CollectionAssertion_Test.java | 21 +-
.../juneau/assertions/ListAssertion_Test.java | 21 +-
.../juneau/assertions/MapAssertion_Test.java | 18 +-
.../assertions/StringListAssertion_Test.java | 19 +-
.../apache/juneau/config/ConfigInterfaceTest.java | 50 +--
.../java/org/apache/juneau/config/ConfigTest.java | 4 +-
.../java/org/apache/juneau/cp/FileFinder_Test.java | 13 +-
.../apache/juneau/dto/html5/Html5ComboTest.java | 14 +-
.../apache/juneau/dto/swagger/HeaderInfo_Test.java | 18 +-
.../org/apache/juneau/dto/swagger/Items_Test.java | 16 +-
.../apache/juneau/dto/swagger/Operation_Test.java | 100 ++---
.../juneau/dto/swagger/ParameterInfo_Test.java | 16 +-
.../juneau/dto/swagger/ResponseInfo_Test.java | 32 +-
.../apache/juneau/dto/swagger/SchemaInfo_Test.java | 56 +--
.../juneau/dto/swagger/SecurityScheme_Test.java | 16 +-
.../apache/juneau/dto/swagger/Swagger_Test.java | 142 +++----
.../java/org/apache/juneau/html/Common_Test.java | 13 +-
.../apache/juneau/http/BasicHttpResource_Test.java | 4 +-
.../org/apache/juneau/http/BasicPart_Test.java | 4 +-
.../org/apache/juneau/http/HttpHeaders_Test.java | 4 +-
.../juneau/http/MediaRanges_FindMatch_Test.java | 6 +-
.../org/apache/juneau/http/MediaRanges_Test.java | 10 +-
.../apache/juneau/http/SerializedHeader_Test.java | 8 +-
.../juneau/http/SerializedHttpEntity_Test.java | 4 +-
.../apache/juneau/http/SerializedPart_Test.java | 8 +-
.../org/apache/juneau/http/StringRanges_Test.java | 5 +-
.../org/apache/juneau/http/header/Accept_Test.java | 3 +-
.../org/apache/juneau/http/header/Allow_Test.java | 3 +-
.../http/header/BasicCsvArrayHeader_Test.java | 7 +-
.../header/BasicEntityTagArrayHeader_Test.java | 3 +-
.../header/BasicMediaRangeArrayHeader_Test.java | 9 +-
.../juneau/http/header/ContentLanguage_Test.java | 3 +-
.../juneau/http/header/ContentType_Match_Test.java | 4 +-
.../apache/juneau/http/header/HeaderList_Test.java | 22 +-
.../apache/juneau/http/header/IfMatch_Test.java | 3 +-
.../juneau/http/header/IfNoneMatch_Test.java | 3 +-
.../apache/juneau/http/header/Upgrade_Test.java | 3 +-
.../org/apache/juneau/http/header/Via_Test.java | 3 +-
.../org/apache/juneau/http/part/PartList_Test.java | 22 +-
.../http/remote/Remote_BodyAnnotation_Test.java | 14 +-
.../remote/Remote_FormDataAnnotation_Test.java | 32 +-
.../http/remote/Remote_HeaderAnnotation_Test.java | 32 +-
.../http/remote/Remote_PathAnnotation_Test.java | 34 +-
.../http/remote/Remote_QueryAnnotation_Test.java | 32 +-
.../juneau/http/remote/RrpcInterfaceTest.java | 130 +++----
.../juneau/httppart/HttpPartSchema_Body_Test.java | 11 +-
.../httppart/HttpPartSchema_FormData_Test.java | 11 +-
.../httppart/HttpPartSchema_Header_Test.java | 11 +-
.../juneau/httppart/HttpPartSchema_Path_Test.java | 11 +-
.../juneau/httppart/HttpPartSchema_Query_Test.java | 11 +-
.../HttpPartSchema_ResponseHeader_Test.java | 10 +-
.../httppart/HttpPartSchema_Response_Test.java | 10 +-
.../httppart/OpenApiPartSerializer_Test.java | 329 ++++++++---------
.../java/org/apache/juneau/jena/CommonTest.java | 12 +-
.../java/org/apache/juneau/json/CommonTest.java | 12 +-
.../java/org/apache/juneau/oapi/OpenApiTest.java | 10 +-
.../apache/juneau/pojotools/PojoSearcherTest.java | 259 ++++++-------
.../apache/juneau/pojotools/PojoSorterTest.java | 30 +-
.../apache/juneau/pojotools/PojoViewerTest.java | 46 +--
.../org/apache/juneau/reflect/ClassInfoTest.java | 8 +-
.../org/apache/juneau/reflect/ParamInfoTest.java | 3 +-
.../java/org/apache/juneau/rest/Swagger_Test.java | 4 +-
.../apache/juneau/rest/annotation/Body_Test.java | 6 +-
.../juneau/rest/annotation/Response_Test.java | 6 +-
.../juneau/rest/annotation/RestHook_Test.java | 4 +-
.../rest/client/RestClient_BasicCalls_Test.java | 32 +-
.../client/RestClient_CallbackStrings_Test.java | 4 +-
.../client/RestClient_Config_BeanContext_Test.java | 4 +-
.../client/RestClient_Config_Serializer_Test.java | 8 +-
.../rest/client/RestClient_FormData_Test.java | 10 +-
.../rest/client/RestClient_Headers_Test.java | 6 +-
.../juneau/rest/client/RestClient_Query_Test.java | 12 +-
.../juneau/rest/guards/RoleMatcher_Test.java | 4 +-
.../apache/juneau/rest/mock/PathResolverTest.java | 7 +-
.../juneau/serializer/ReaderObjectComboTest.java | 14 +-
.../org/apache/juneau/svl/ResolvingOMapTest.java | 18 +-
.../apache/juneau/transform/AutoListSwapTest.java | 5 +-
.../apache/juneau/transform/AutoMapSwapTest.java | 4 +-
.../juneau/transform/AutoObjectSwapTest.java | 4 +-
.../juneau/transforms/BeanDictionaryComboTest.java | 26 +-
.../transforms/ByteArrayBase64SwapComboTest.java | 18 +-
.../apache/juneau/transforms/DefaultSwapsTest.java | 6 +-
.../juneau/transforms/ReaderObjectSwapTest.java | 15 +-
.../java/org/apache/juneau/uon/Common_UonTest.java | 12 +-
.../juneau/urlencoding/Common_UrlEncodingTest.java | 12 +-
.../java/org/apache/juneau/urlencoding/DTOs.java | 43 +--
.../java/org/apache/juneau/urlencoding/DTOs2.java | 43 +--
.../urlencoding/UrlEncodingSerializerTest.java | 6 +-
.../java/org/apache/juneau/utils/BeanDiffTest.java | 6 +-
.../org/apache/juneau/utils/PojoQueryTest.java | 8 +-
.../org/apache/juneau/utils/StringUtilsTest.java | 51 +++
.../java/org/apache/juneau/xml/CommonTest.java | 12 +-
.../org/apache/juneau/xml/XmlCollapsedTest.java | 26 +-
.../test/java/org/apache/juneau/xml/XmlTest.java | 4 +-
355 files changed, 3170 insertions(+), 4313 deletions(-)
diff --git a/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java b/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java
index 55b8a2a..f2c3ae9 100644
--- a/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java
+++ b/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java
@@ -11,6 +11,7 @@
// * specific language governing permissions and limitations under the License. *
// ***************************************************************************************************************************
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.IOUtils.*;
import java.io.*;
@@ -24,7 +25,7 @@ import org.apache.juneau.reflect.*;
public class ConfigurablePropertyCodeGenerator {
- static Set<Class<?>> ignoreClasses = ASet.of(
+ static Set<Class<?>> ignoreClasses = set(
org.apache.http.entity.AbstractHttpEntity.class,
org.apache.http.entity.BasicHttpEntity.class,
org.apache.http.message.AbstractHttpMessage.class,
@@ -100,7 +101,7 @@ public class ConfigurablePropertyCodeGenerator {
StringBuilder sb = new StringBuilder();
ClassInfo ci = ClassInfo.of(c);
String cName = ci.getSimpleName();
- Set<String> ignore = ASet.of();
+ Set<String> ignore = set();
FluentSetters fs = ci.getAnnotation(FluentSetters.class);
if (! fs.returns().isEmpty())
cName = fs.returns();
diff --git a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Config.java b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Config.java
index 9df86f3..cb2f6c5 100644
--- a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Config.java
+++ b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Config.java
@@ -15,6 +15,7 @@ package org.apache.juneau.config;
import static org.apache.juneau.assertions.Assertions.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.IOUtils.*;
import static java.util.Collections.*;
@@ -130,7 +131,7 @@ public final class Config extends Context implements ConfigEventListener {
l.add(cmd + ".cfg");
}
- Set<File> files = ASortedSet.of(new File(".").listFiles());
+ Set<File> files = sortedSet(new File(".").listFiles());
for (File f : files)
if (f.getName().endsWith(".cfg"))
l.add(f.getName());
diff --git a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Entry.java b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Entry.java
index ae6c31a..33ba24e 100644
--- a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Entry.java
+++ b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Entry.java
@@ -12,9 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.config;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.BinaryFormat.*;
-import static java.util.Optional.*;
import java.lang.reflect.*;
import java.util.*;
@@ -209,7 +209,7 @@ public class Entry {
if (type == OMap.class) return (Optional<T>)asMap();
if (type == OList.class) return (Optional<T>)asList();
if (isEmpty()) return empty();
- if (isSimpleType(type)) return ofNullable((T)config.beanSession.convertToType(v, (Class<?>)type));
+ if (isSimpleType(type)) return optional((T)config.beanSession.convertToType(v, (Class<?>)type));
if (parser instanceof JsonParser) {
char s1 = firstNonWhitespaceChar(v);
@@ -218,7 +218,7 @@ public class Entry {
else if (s1 != '[' && s1 != '{' && ! "null".equals(v))
v = '\'' + v + '\'';
}
- return ofNullable(parser.parse(v, type, args));
+ return optional(parser.parse(v, type, args));
} catch (ParseException e) {
throw new BeanRuntimeException(e, null, "Value could not be parsed.");
}
@@ -251,7 +251,7 @@ public class Entry {
* @return This entry as a string, or {@link Optional#empty()} if the entry does not exist.
*/
public Optional<String> asString() {
- return isPresent() ? of(config.varSession.resolve(value)) : empty();
+ return optional(isPresent() ? config.varSession.resolve(value) : null);
}
/**
@@ -268,12 +268,12 @@ public class Entry {
char s1 = firstNonWhitespaceChar(v), s2 = lastNonWhitespaceChar(v);
if (s1 == '[' && s2 == ']' && config.parser instanceof JsonParser) {
try {
- return ofNullable(config.parser.parse(v, String[].class));
+ return optional(config.parser.parse(v, String[].class));
} catch (ParseException e) {
throw new BeanRuntimeException(e);
}
}
- return of(split(v));
+ return optional(split(v));
}
/**
@@ -307,7 +307,7 @@ public class Entry {
* @return The value, or {@link Optional#empty()} if the value does not exist or the value is empty.
*/
public Optional<Integer> asInteger() {
- return isEmpty() ? empty() : of(parseIntWithSuffix(toString()));
+ return optional(isEmpty() ? null : parseIntWithSuffix(toString()));
}
@@ -320,7 +320,7 @@ public class Entry {
* @return The value, or {@link Optional#empty()} if the value does not exist or the value is empty.
*/
public Optional<Boolean> asBoolean() {
- return isEmpty() ? empty() : of(Boolean.parseBoolean(toString()));
+ return optional(isEmpty() ? null : Boolean.parseBoolean(toString()));
}
/**
@@ -354,7 +354,7 @@ public class Entry {
* @return The value, or {@link Optional#empty()} if the value does not exist or the value is empty.
*/
public Optional<Long> asLong() {
- return isEmpty() ? empty() : of(parseLongWithSuffix(toString()));
+ return optional(isEmpty() ? null : parseLongWithSuffix(toString()));
}
@@ -373,7 +373,7 @@ public class Entry {
* @return The value, or {@link Optional#empty()} if the value does not exist or the value is empty.
*/
public Optional<Double> asDouble() {
- return isEmpty() ? empty() : of(Double.valueOf(toString()));
+ return optional(isEmpty() ? null : Double.valueOf(toString()));
}
@@ -392,7 +392,7 @@ public class Entry {
* @return The value, or {@link Optional#empty()} if the value does not exist or the value is empty.
*/
public Optional<Float> asFloat() {
- return isEmpty() ? empty() : of(Float.valueOf(toString()));
+ return optional(isEmpty() ? null : Float.valueOf(toString()));
}
@@ -410,10 +410,10 @@ public class Entry {
if (s.indexOf('\n') != -1) s = s.replaceAll("\n", "");
try {
if (config.binaryFormat == HEX)
- return of(fromHex(s));
+ return optional(fromHex(s));
if (config.binaryFormat == SPACED_HEX)
- return of(fromSpacedHex(s));
- return of(base64Decode(s));
+ return optional(fromSpacedHex(s));
+ return optional(base64Decode(s));
} catch (Exception e) {
throw new BeanRuntimeException(e, null, "Value could not be converted to a byte array.");
}
@@ -454,7 +454,7 @@ public class Entry {
if (s1 != '{' && ! "null".equals(s))
s = '{' + s + '}';
}
- return of(OMap.ofText(s, parser));
+ return optional(OMap.ofText(s, parser));
}
/**
@@ -493,7 +493,7 @@ public class Entry {
if (s1 != '[' && ! "null".equals(s))
s = '[' + s + ']';
}
- return of(OList.ofText(s, parser));
+ return optional(OList.ofText(s, parser));
}
//-----------------------------------------------------------------------------------------------------------------
diff --git a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Section.java b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Section.java
index 88907d9..315f6b5 100644
--- a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Section.java
+++ b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/Section.java
@@ -13,8 +13,8 @@
package org.apache.juneau.config;
import static org.apache.juneau.assertions.Assertions.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static java.util.Optional.*;
import java.beans.*;
import java.lang.reflect.*;
@@ -122,7 +122,7 @@ public class Section {
}
}
- return of(bm.getBean());
+ return optional(bm.getBean());
}
/**
@@ -138,7 +138,7 @@ public class Section {
OMap om = new OMap();
for (String k : keys)
om.put(k, config.get(name + '/' + k).as(Object.class).orElse(null));
- return of(om);
+ return optional(om);
}
/**
@@ -223,7 +223,7 @@ public class Section {
}
};
- return ofNullable((T)Proxy.newProxyInstance(c.getClassLoader(), new Class[] { c }, h));
+ return optional((T)Proxy.newProxyInstance(c.getClassLoader(), new Class[] { c }, h));
}
/**
diff --git a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/internal/ConfigMap.java b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/internal/ConfigMap.java
index 918af7c..ffcdd9b 100644
--- a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/internal/ConfigMap.java
+++ b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/internal/ConfigMap.java
@@ -14,6 +14,7 @@ package org.apache.juneau.config.internal;
import static org.apache.juneau.internal.ThrowableUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.config.event.ConfigEventType.*;
import java.io.*;
@@ -122,8 +123,7 @@ public class ConfigMap implements ConfigStoreListener {
}
List<Import> irl = new ArrayList<>(imports.size());
- for (ConfigMap ic : AList.of(imports.values()).riterable())
- irl.add(new Import(ic).register(listeners));
+ forEachReverse(listFrom(imports.values()), x -> irl.add(new Import(x).register(listeners)));
this.imports.addAll(irl);
// Add [blank] section.
diff --git a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/internal/ConfigMapEntry.java b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/internal/ConfigMapEntry.java
index 87c7b47..f9ae3db 100644
--- a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/internal/ConfigMapEntry.java
+++ b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/internal/ConfigMapEntry.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.config.internal;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.io.*;
@@ -52,7 +53,7 @@ public class ConfigMapEntry {
i = line.indexOf('#');
if (i != -1) {
- String[] l2 = StringUtils.split(line, '#', 2);
+ String[] l2 = split(line, '#', 2);
line = l2[0];
if (l2.length == 2)
this.comment = l2[1].trim();
@@ -64,7 +65,7 @@ public class ConfigMapEntry {
this.value = StringUtils.replaceUnicodeSequences(line.trim());
- this.preLines = AList.unmodifiable(preLines);
+ this.preLines = preLines == null ? emptyList() : unmodifiable(copyOf(preLines));
}
ConfigMapEntry(String key, String value, String modifiers, String comment, List<String> preLines) {
@@ -73,7 +74,7 @@ public class ConfigMapEntry {
this.value = value;
this.comment = comment;
this.modifiers = modifiers;
- this.preLines = AList.unmodifiable(preLines);
+ this.preLines = preLines == null ? emptyList() : unmodifiable(copyOf(preLines));
}
/**
diff --git a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/store/FileStore.java b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/store/FileStore.java
index 4442db4..d1cc510 100644
--- a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/store/FileStore.java
+++ b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/store/FileStore.java
@@ -385,7 +385,7 @@ public class FileStore extends ConfigStore {
try {
dir = new File(directory).getCanonicalFile();
dir.mkdirs();
- exts = StringUtils.split(extensions);
+ exts = split(extensions);
watcher = enableWatcher ? new WatcherThread(dir, watcherSensitivity) : null;
if (watcher != null)
watcher.start();
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/LinkString.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/LinkString.java
index 54c809b..426e88a 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/LinkString.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/LinkString.java
@@ -12,9 +12,10 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto;
+import static org.apache.juneau.internal.CollectionUtils.*;
+import static org.apache.juneau.internal.ObjectUtils.eq;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static org.apache.juneau.internal.ObjectUtils.*;
import java.text.*;
import java.util.*;
@@ -109,7 +110,7 @@ public class LinkString implements Comparable<LinkString> {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> name() {
- return Optional.ofNullable(name);
+ return optional(name);
}
/**
@@ -167,7 +168,7 @@ public class LinkString implements Comparable<LinkString> {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<java.net.URI> uri() {
- return Optional.ofNullable(uri);
+ return optional(uri);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Category.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Category.java
index 3200df2..16225f7 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Category.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Category.java
@@ -12,11 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.annotation.*;
@@ -104,7 +104,7 @@ public class Category extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> term() {
- return Optional.ofNullable(term);
+ return optional(term);
}
/**
@@ -163,7 +163,7 @@ public class Category extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<URI> scheme() {
- return Optional.ofNullable(scheme);
+ return optional(scheme);
}
/**
@@ -218,7 +218,7 @@ public class Category extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> label() {
- return Optional.ofNullable(label);
+ return optional(label);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Common.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Common.java
index df0d3d1..df6dc23 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Common.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Common.java
@@ -12,11 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.xml.*;
@@ -89,7 +89,7 @@ public abstract class Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<URI> base() {
- return Optional.ofNullable(base);
+ return optional(base);
}
/**
@@ -144,7 +144,7 @@ public abstract class Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> lang() {
- return Optional.ofNullable(lang);
+ return optional(lang);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/CommonEntry.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/CommonEntry.java
index c6fffbc..97d3ab1 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/CommonEntry.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/CommonEntry.java
@@ -13,6 +13,7 @@
package org.apache.juneau.dto.atom;
import static org.apache.juneau.dto.atom.Utils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.util.*;
@@ -106,7 +107,7 @@ public class CommonEntry extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Person[]> authors() {
- return Optional.ofNullable(authors);
+ return optional(authors);
}
/**
@@ -161,7 +162,7 @@ public class CommonEntry extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Category[]> categories() {
- return Optional.ofNullable(categories);
+ return optional(categories);
}
/**
@@ -216,7 +217,7 @@ public class CommonEntry extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Person[]> contributors() {
- return Optional.ofNullable(contributors);
+ return optional(contributors);
}
/**
@@ -270,7 +271,7 @@ public class CommonEntry extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Id> id() {
- return Optional.ofNullable(id);
+ return optional(id);
}
/**
@@ -341,7 +342,7 @@ public class CommonEntry extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Link[]> links() {
- return Optional.ofNullable(links);
+ return optional(links);
}
/**
@@ -395,7 +396,7 @@ public class CommonEntry extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Text> rights() {
- return Optional.ofNullable(rights);
+ return optional(rights);
}
/**
@@ -465,7 +466,7 @@ public class CommonEntry extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Text> title() {
- return Optional.ofNullable(title);
+ return optional(title);
}
/**
@@ -535,7 +536,7 @@ public class CommonEntry extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Calendar> updated() {
- return Optional.ofNullable(updated);
+ return optional(updated);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Content.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Content.java
index c6c1d92..0c8877c 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Content.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Content.java
@@ -12,11 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.xml.annotation.*;
@@ -133,7 +133,7 @@ public class Content extends Text {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<URI> src() {
- return Optional.ofNullable(src);
+ return optional(src);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Entry.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Entry.java
index 9b82390..d99a314 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Entry.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Entry.java
@@ -13,6 +13,7 @@
package org.apache.juneau.dto.atom;
import static org.apache.juneau.dto.atom.Utils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
@@ -121,7 +122,7 @@ public class Entry extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Content> content() {
- return Optional.ofNullable(content);
+ return optional(content);
}
/**
@@ -175,7 +176,7 @@ public class Entry extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Calendar> published() {
- return Optional.ofNullable(published);
+ return optional(published);
}
/**
@@ -245,7 +246,7 @@ public class Entry extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Source> source() {
- return Optional.ofNullable(source);
+ return optional(source);
}
/**
@@ -299,7 +300,7 @@ public class Entry extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Text> summary() {
- return Optional.ofNullable(summary);
+ return optional(summary);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Feed.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Feed.java
index 2931671..f64b58e 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Feed.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Feed.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.util.*;
@@ -127,7 +128,7 @@ public class Feed extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Generator> generator() {
- return Optional.ofNullable(generator);
+ return optional(generator);
}
/**
@@ -181,7 +182,7 @@ public class Feed extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Icon> icon() {
- return Optional.ofNullable(icon);
+ return optional(icon);
}
/**
@@ -235,7 +236,7 @@ public class Feed extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Logo> logo() {
- return Optional.ofNullable(logo);
+ return optional(logo);
}
/**
@@ -289,7 +290,7 @@ public class Feed extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Text> subtitle() {
- return Optional.ofNullable(subtitle);
+ return optional(subtitle);
}
/**
@@ -360,7 +361,7 @@ public class Feed extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Entry[]> entries() {
- return Optional.ofNullable(entries);
+ return optional(entries);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Generator.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Generator.java
index 621d8f5..4174b5c 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Generator.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Generator.java
@@ -12,11 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.annotation.*;
@@ -106,7 +106,7 @@ public class Generator extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<URI> uri() {
- return Optional.ofNullable(uri);
+ return optional(uri);
}
/**
@@ -161,7 +161,7 @@ public class Generator extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> version() {
- return Optional.ofNullable(version);
+ return optional(version);
}
/**
@@ -216,7 +216,7 @@ public class Generator extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> text() {
- return Optional.ofNullable(text);
+ return optional(text);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Icon.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Icon.java
index 433bda4..cdf97d0 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Icon.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Icon.java
@@ -12,11 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.*;
@@ -110,7 +110,7 @@ public class Icon extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<URI> uri() {
- return Optional.ofNullable(uri);
+ return optional(uri);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Id.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Id.java
index 09e7959..3aa38ce 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Id.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Id.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.util.*;
@@ -94,7 +95,7 @@ public class Id extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> text() {
- return Optional.ofNullable(text);
+ return optional(text);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Link.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Link.java
index b91de86..08ae013 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Link.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Link.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.util.*;
@@ -109,7 +110,7 @@ public class Link extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> href() {
- return Optional.ofNullable(href);
+ return optional(href);
}
/**
@@ -164,7 +165,7 @@ public class Link extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> rel() {
- return Optional.ofNullable(rel);
+ return optional(rel);
}
/**
@@ -228,7 +229,7 @@ public class Link extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> type() {
- return Optional.ofNullable(type);
+ return optional(type);
}
/**
@@ -283,7 +284,7 @@ public class Link extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> hreflang() {
- return Optional.ofNullable(hreflang);
+ return optional(hreflang);
}
/**
@@ -338,7 +339,7 @@ public class Link extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> title() {
- return Optional.ofNullable(title);
+ return optional(title);
}
/**
@@ -393,7 +394,7 @@ public class Link extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> length() {
- return Optional.ofNullable(length);
+ return optional(length);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Logo.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Logo.java
index 424c1ec..545b978 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Logo.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Logo.java
@@ -12,11 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.*;
@@ -113,7 +113,7 @@ public class Logo extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<URI> uri() {
- return Optional.ofNullable(uri);
+ return optional(uri);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Person.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Person.java
index 809f904..92bbf38 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Person.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Person.java
@@ -12,10 +12,10 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.*;
@@ -98,7 +98,7 @@ public class Person extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> name() {
- return Optional.ofNullable(name);
+ return optional(name);
}
/**
@@ -159,7 +159,7 @@ public class Person extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<URI> uri() {
- return Optional.ofNullable(uri);
+ return optional(uri);
}
/**
@@ -213,7 +213,7 @@ public class Person extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> email() {
- return Optional.ofNullable(email);
+ return optional(email);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Source.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Source.java
index aae93f4..0687851 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Source.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Source.java
@@ -12,6 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
import java.util.*;
/**
@@ -91,7 +93,7 @@ public class Source extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Generator> generator() {
- return Optional.ofNullable(generator);
+ return optional(generator);
}
/**
@@ -145,7 +147,7 @@ public class Source extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Icon> icon() {
- return Optional.ofNullable(icon);
+ return optional(icon);
}
/**
@@ -199,7 +201,7 @@ public class Source extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Logo> logo() {
- return Optional.ofNullable(logo);
+ return optional(logo);
}
/**
@@ -253,7 +255,7 @@ public class Source extends CommonEntry {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Text> subtitle() {
- return Optional.ofNullable(subtitle);
+ return optional(subtitle);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Text.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Text.java
index c6edb6b..3e2c28c 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Text.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/atom/Text.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.atom;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.util.*;
@@ -118,7 +119,7 @@ public class Text extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> type() {
- return Optional.ofNullable(type);
+ return optional(type);
}
/**
@@ -173,7 +174,7 @@ public class Text extends Common {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> text() {
- return Optional.ofNullable(text);
+ return optional(text);
}
/**
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/A.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/A.java
index d478e6b..249c71c 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/A.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/A.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Area.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Area.java
index 322a3b2..c6fe46c 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Area.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Area.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Audio.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Audio.java
index d10012a..4d83276 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Audio.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Audio.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Base.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Base.java
index a9d309a..9463daf 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Base.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Base.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Button.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Button.java
index 2e5ca62..beebecc 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Button.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Button.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Embed.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Embed.java
index 40c6ec4..5a2aeff 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Embed.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Embed.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Form.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Form.java
index dda1422..0f3774b 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Form.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Form.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/HtmlElement.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/HtmlElement.java
index 1d8e862..60e9d87 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/HtmlElement.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/HtmlElement.java
@@ -12,11 +12,10 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.html5;
-import static org.apache.juneau.xml.annotation.XmlFormat.*;
import static org.apache.juneau.html.annotation.HtmlFormat.*;
+import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import java.util.Map.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Iframe.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Iframe.java
index 7166ed6..0de683c 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Iframe.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Iframe.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Img.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Img.java
index fa99e08..a8b0b0e 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Img.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Img.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Link.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Link.java
index f2b8084..feb7cab 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Link.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Link.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Script.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Script.java
index 12036b8..784a0ce 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Script.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Script.java
@@ -15,7 +15,6 @@ package org.apache.juneau.dto.html5;
import static org.apache.juneau.internal.StringUtils.*;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Source.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Source.java
index 11a2b1a..f132cbe 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Source.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Source.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Track.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Track.java
index 7679214..14e0eb2 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Track.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Track.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Video.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Video.java
index bc6fac4..3f4e06e 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Video.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/html5/Video.java
@@ -13,7 +13,6 @@
package org.apache.juneau.dto.html5;
import java.net.*;
-import java.net.URI;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/jsonschema/JsonSchema.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/jsonschema/JsonSchema.java
index 10087e8..677be60 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/jsonschema/JsonSchema.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/jsonschema/JsonSchema.java
@@ -16,7 +16,6 @@ import static org.apache.juneau.internal.ClassUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/jsonschema/JsonSchemaMap.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/jsonschema/JsonSchemaMap.java
index 975fa98..c046013 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/jsonschema/JsonSchemaMap.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/jsonschema/JsonSchemaMap.java
@@ -12,8 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.jsonschema;
-import static org.apache.juneau.internal.ThrowableUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.ThrowableUtils.*;
+
import java.io.*;
import java.net.*;
import java.util.concurrent.*;
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Contact.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Contact.java
index 4e4d9e0..8ecbb69 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Contact.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Contact.java
@@ -12,11 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.annotation.*;
@@ -124,7 +124,7 @@ public class Contact extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> email() {
- return Optional.ofNullable(getEmail());
+ return optional(getEmail());
}
/**
@@ -183,7 +183,7 @@ public class Contact extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> name() {
- return Optional.ofNullable(getName());
+ return optional(getName());
}
/**
@@ -241,7 +241,7 @@ public class Contact extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<URI> url() {
- return Optional.ofNullable(getUrl());
+ return optional(getUrl());
}
/**
@@ -320,10 +320,11 @@ public class Contact extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(email != null, "email")
- .appendIf(name != null, "name")
- .appendIf(url != null, "url");
+ Set<String> s = setBuilder(String.class)
+ .addIf(email != null, "email")
+ .addIf(name != null, "name")
+ .addIf(url != null, "url")
+ .build();
return new MultiSet<>(s, super.keySet());
}
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ExternalDocumentation.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ExternalDocumentation.java
index 22cbb5b..76f6733 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ExternalDocumentation.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ExternalDocumentation.java
@@ -12,11 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.*;
@@ -122,7 +122,7 @@ public class ExternalDocumentation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> description() {
- return Optional.ofNullable(getDescription());
+ return optional(getDescription());
}
/**
@@ -181,7 +181,7 @@ public class ExternalDocumentation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<URI> url() {
- return Optional.ofNullable(getUrl());
+ return optional(getUrl());
}
/**
@@ -261,9 +261,10 @@ public class ExternalDocumentation extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(description != null, "description")
- .appendIf(url != null, "url");
+ Set<String> s = setBuilder(String.class)
+ .addIf(description != null, "description")
+ .addIf(url != null, "url")
+ .build();
return new MultiSet<>(s, super.keySet());
}
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/HeaderInfo.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/HeaderInfo.java
index 0f2d044..3bac104 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/HeaderInfo.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/HeaderInfo.java
@@ -12,10 +12,10 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
@@ -182,7 +182,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> collectionFormat() {
- return Optional.ofNullable(getCollectionFormat());
+ return optional(getCollectionFormat());
}
/**
@@ -268,7 +268,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Object> _default() {
- return Optional.ofNullable(getDefault());
+ return optional(getDefault());
}
/**
@@ -331,7 +331,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> description() {
- return Optional.ofNullable(getDescription());
+ return optional(getDescription());
}
/**
@@ -392,7 +392,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<Object>> _enum() {
- return Optional.ofNullable(getEnum());
+ return optional(getEnum());
}
/**
@@ -450,7 +450,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Object> example() {
- return Optional.ofNullable(getExample());
+ return optional(getExample());
}
/**
@@ -496,7 +496,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> exclusiveMaximum() {
- return Optional.ofNullable(getExclusiveMaximum());
+ return optional(getExclusiveMaximum());
}
/**
@@ -555,7 +555,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> exclusiveMinimum() {
- return Optional.ofNullable(getExclusiveMinimum());
+ return optional(getExclusiveMinimum());
}
/**
@@ -623,7 +623,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> format() {
- return Optional.ofNullable(getFormat());
+ return optional(getFormat());
}
/**
@@ -682,7 +682,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Items> items() {
- return Optional.ofNullable(getItems());
+ return optional(getItems());
}
/**
@@ -754,7 +754,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> maximum() {
- return Optional.ofNullable(getMaximum());
+ return optional(getMaximum());
}
/**
@@ -813,7 +813,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> maxItems() {
- return Optional.ofNullable(getMaxItems());
+ return optional(getMaxItems());
}
/**
@@ -872,7 +872,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> maxLength() {
- return Optional.ofNullable(getMaxLength());
+ return optional(getMaxLength());
}
/**
@@ -931,7 +931,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> minimum() {
- return Optional.ofNullable(getMinimum());
+ return optional(getMinimum());
}
/**
@@ -990,7 +990,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> minItems() {
- return Optional.ofNullable(getMinItems());
+ return optional(getMinItems());
}
/**
@@ -1049,7 +1049,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> minLength() {
- return Optional.ofNullable(getMinLength());
+ return optional(getMinLength());
}
/**
@@ -1108,7 +1108,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> multipleOf() {
- return Optional.ofNullable(getMultipleOf());
+ return optional(getMultipleOf());
}
/**
@@ -1168,7 +1168,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> pattern() {
- return Optional.ofNullable(getPattern());
+ return optional(getPattern());
}
/**
@@ -1217,7 +1217,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> ref() {
- return Optional.ofNullable(getRef());
+ return optional(getRef());
}
/**
@@ -1285,7 +1285,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> type() {
- return Optional.ofNullable(getType());
+ return optional(getType());
}
/**
@@ -1342,7 +1342,7 @@ public class HeaderInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> uniqueItems() {
- return Optional.ofNullable(getUniqueItems());
+ return optional(getUniqueItems());
}
/**
@@ -1434,27 +1434,28 @@ public class HeaderInfo extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(collectionFormat != null, "collectionFormat")
- .appendIf(_default != null, "default")
- .appendIf(description != null, "description")
- .appendIf(_enum != null, "enum")
- .appendIf(example != null, "example")
- .appendIf(exclusiveMaximum != null, "exclusiveMaximum")
- .appendIf(exclusiveMinimum != null, "exclusiveMinimum")
- .appendIf(format != null, "format")
- .appendIf(items != null, "items")
- .appendIf(maximum != null, "maximum")
- .appendIf(maxItems != null, "maxItems")
- .appendIf(maxLength != null, "maxLength")
- .appendIf(minimum != null, "minimum")
- .appendIf(minItems != null, "minItems")
- .appendIf(minLength != null, "minLength")
- .appendIf(multipleOf != null, "multipleOf")
- .appendIf(pattern != null, "pattern")
- .appendIf(ref != null, "$ref")
- .appendIf(type != null, "type")
- .appendIf(uniqueItems != null, "uniqueItems");
+ Set<String> s = setBuilder(String.class)
+ .addIf(collectionFormat != null, "collectionFormat")
+ .addIf(_default != null, "default")
+ .addIf(description != null, "description")
+ .addIf(_enum != null, "enum")
+ .addIf(example != null, "example")
+ .addIf(exclusiveMaximum != null, "exclusiveMaximum")
+ .addIf(exclusiveMinimum != null, "exclusiveMinimum")
+ .addIf(format != null, "format")
+ .addIf(items != null, "items")
+ .addIf(maximum != null, "maximum")
+ .addIf(maxItems != null, "maxItems")
+ .addIf(maxLength != null, "maxLength")
+ .addIf(minimum != null, "minimum")
+ .addIf(minItems != null, "minItems")
+ .addIf(minLength != null, "minLength")
+ .addIf(multipleOf != null, "multipleOf")
+ .addIf(pattern != null, "pattern")
+ .addIf(ref != null, "$ref")
+ .addIf(type != null, "type")
+ .addIf(uniqueItems != null, "uniqueItems")
+ .build();
return new MultiSet<>(s, super.keySet());
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Info.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Info.java
index 41fea77..766f7f9 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Info.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Info.java
@@ -12,8 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -152,7 +153,7 @@ public class Info extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Contact> contact() {
- return Optional.ofNullable(getContact());
+ return optional(getContact());
}
/**
@@ -232,7 +233,7 @@ public class Info extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> description() {
- return Optional.ofNullable(getDescription());
+ return optional(getDescription());
}
/**
@@ -291,7 +292,7 @@ public class Info extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<License> license() {
- return Optional.ofNullable(getLicense());
+ return optional(getLicense());
}
/**
@@ -369,7 +370,7 @@ public class Info extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> siteName() {
- return Optional.ofNullable(getSiteName());
+ return optional(getSiteName());
}
/**
@@ -426,7 +427,7 @@ public class Info extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> termsOfService() {
- return Optional.ofNullable(getTermsOfService());
+ return optional(getTermsOfService());
}
/**
@@ -483,7 +484,7 @@ public class Info extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> title() {
- return Optional.ofNullable(getTitle());
+ return optional(getTitle());
}
/**
@@ -541,7 +542,7 @@ public class Info extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> version() {
- return Optional.ofNullable(getVersion());
+ return optional(getVersion());
}
/**
@@ -597,14 +598,15 @@ public class Info extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(contact != null, "contact")
- .appendIf(description != null, "description")
- .appendIf(license != null, "license")
- .appendIf(siteName != null, "siteName")
- .appendIf(termsOfService != null, "termsOfService")
- .appendIf(title != null, "title")
- .appendIf(version != null, "version");
+ Set<String> s = setBuilder(String.class)
+ .addIf(contact != null, "contact")
+ .addIf(description != null, "description")
+ .addIf(license != null, "license")
+ .addIf(siteName != null, "siteName")
+ .addIf(termsOfService != null, "termsOfService")
+ .addIf(title != null, "title")
+ .addIf(version != null, "version")
+ .build();
return new MultiSet<>(s, super.keySet());
}
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Items.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Items.java
index 17a657a..ced6696 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Items.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Items.java
@@ -12,10 +12,10 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
@@ -182,7 +182,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> collectionFormat() {
- return Optional.ofNullable(getCollectionFormat());
+ return optional(getCollectionFormat());
}
/**
@@ -268,7 +268,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Object> _default() {
- return Optional.ofNullable(getDefault());
+ return optional(getDefault());
}
/**
@@ -335,7 +335,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<Object>> _enum() {
- return Optional.ofNullable(getEnum());
+ return optional(getEnum());
}
/**
@@ -393,7 +393,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> exclusiveMaximum() {
- return Optional.ofNullable(getExclusiveMaximum());
+ return optional(getExclusiveMaximum());
}
/**
@@ -452,7 +452,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> exclusiveMinimum() {
- return Optional.ofNullable(getExclusiveMinimum());
+ return optional(getExclusiveMinimum());
}
/**
@@ -520,7 +520,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> format() {
- return Optional.ofNullable(getFormat());
+ return optional(getFormat());
}
/**
@@ -579,7 +579,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Items> items() {
- return Optional.ofNullable(getItems());
+ return optional(getItems());
}
/**
@@ -651,7 +651,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> maximum() {
- return Optional.ofNullable(getMaximum());
+ return optional(getMaximum());
}
/**
@@ -710,7 +710,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> maxItems() {
- return Optional.ofNullable(getMaxItems());
+ return optional(getMaxItems());
}
/**
@@ -769,7 +769,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> maxLength() {
- return Optional.ofNullable(getMaxLength());
+ return optional(getMaxLength());
}
/**
@@ -828,7 +828,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> minimum() {
- return Optional.ofNullable(getMinimum());
+ return optional(getMinimum());
}
/**
@@ -887,7 +887,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> minItems() {
- return Optional.ofNullable(getMinItems());
+ return optional(getMinItems());
}
/**
@@ -946,7 +946,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> minLength() {
- return Optional.ofNullable(getMinLength());
+ return optional(getMinLength());
}
/**
@@ -1005,7 +1005,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> multipleOf() {
- return Optional.ofNullable(getMultipleOf());
+ return optional(getMultipleOf());
}
/**
@@ -1065,7 +1065,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> pattern() {
- return Optional.ofNullable(getPattern());
+ return optional(getPattern());
}
/**
@@ -1114,7 +1114,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> ref() {
- return Optional.ofNullable(getRef());
+ return optional(getRef());
}
/**
@@ -1178,7 +1178,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> type() {
- return Optional.ofNullable(getType());
+ return optional(getType());
}
/**
@@ -1235,7 +1235,7 @@ public class Items extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> uniqueItems() {
- return Optional.ofNullable(getUniqueItems());
+ return optional(getUniqueItems());
}
/**
@@ -1323,25 +1323,26 @@ public class Items extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(collectionFormat != null, "collectionFormat")
- .appendIf(_default != null, "default")
- .appendIf(_enum != null, "enum")
- .appendIf(exclusiveMaximum != null, "exclusiveMaximum")
- .appendIf(exclusiveMinimum != null, "exclusiveMinimum")
- .appendIf(format != null, "format")
- .appendIf(items != null, "items")
- .appendIf(maximum != null, "maximum")
- .appendIf(maxItems != null, "maxItems")
- .appendIf(maxLength != null, "maxLength")
- .appendIf(minimum != null, "minimum")
- .appendIf(minItems != null, "minItems")
- .appendIf(minLength != null, "minLength")
- .appendIf(multipleOf != null, "multipleOf")
- .appendIf(pattern != null, "pattern")
- .appendIf(ref != null, "$ref")
- .appendIf(type != null, "type")
- .appendIf(uniqueItems != null, "uniqueItems");
+ Set<String> s = setBuilder(String.class)
+ .addIf(collectionFormat != null, "collectionFormat")
+ .addIf(_default != null, "default")
+ .addIf(_enum != null, "enum")
+ .addIf(exclusiveMaximum != null, "exclusiveMaximum")
+ .addIf(exclusiveMinimum != null, "exclusiveMinimum")
+ .addIf(format != null, "format")
+ .addIf(items != null, "items")
+ .addIf(maximum != null, "maximum")
+ .addIf(maxItems != null, "maxItems")
+ .addIf(maxLength != null, "maxLength")
+ .addIf(minimum != null, "minimum")
+ .addIf(minItems != null, "minItems")
+ .addIf(minLength != null, "minLength")
+ .addIf(multipleOf != null, "multipleOf")
+ .addIf(pattern != null, "pattern")
+ .addIf(ref != null, "$ref")
+ .addIf(type != null, "type")
+ .addIf(uniqueItems != null, "uniqueItems")
+ .build();
return new MultiSet<>(s, super.keySet());
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/License.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/License.java
index 2483843..394de5b 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/License.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/License.java
@@ -12,11 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.net.*;
-import java.net.URI;
import java.util.*;
import org.apache.juneau.*;
@@ -121,7 +121,7 @@ public class License extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> name() {
- return Optional.ofNullable(getName());
+ return optional(getName());
}
/**
@@ -180,7 +180,7 @@ public class License extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<URI> url() {
- return Optional.ofNullable(getUrl());
+ return optional(getUrl());
}
/**
@@ -257,9 +257,10 @@ public class License extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(name != null, "name")
- .appendIf(url != null, "url");
+ Set<String> s = setBuilder(String.class)
+ .addIf(name != null, "name")
+ .addIf(url != null, "url")
+ .build();
return new MultiSet<>(s, super.keySet());
}
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Operation.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Operation.java
index 3e56f00..180de69 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Operation.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Operation.java
@@ -12,9 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
-import static org.apache.juneau.internal.ConverterUtils.*;
import static org.apache.juneau.internal.CollectionUtils.*;
+import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -263,7 +263,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<MediaType>> consumes() {
- return Optional.ofNullable(getConsumes());
+ return optional(getConsumes());
}
/**
@@ -361,7 +361,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> deprecated() {
- return Optional.ofNullable(getDeprecated());
+ return optional(getDeprecated());
}
/**
@@ -436,7 +436,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> description() {
- return Optional.ofNullable(getDescription());
+ return optional(getDescription());
}
/**
@@ -495,7 +495,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<ExternalDocumentation> externalDocs() {
- return Optional.ofNullable(getExternalDocs());
+ return optional(getExternalDocs());
}
/**
@@ -577,7 +577,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> operationId() {
- return Optional.ofNullable(getOperationId());
+ return optional(getOperationId());
}
/**
@@ -654,7 +654,7 @@ public class Operation extends SwaggerElement {
* @return The matching parameter info, or <jk>null</jk> if not found.
*/
public Optional<ParameterInfo> parameter(String in, String name) {
- return Optional.ofNullable(getParameter(in, name));
+ return optional(getParameter(in, name));
}
/**
@@ -694,7 +694,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<List<ParameterInfo>> parameters() {
- return Optional.ofNullable(getParameters());
+ return optional(getParameters());
}
/**
@@ -797,7 +797,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<MediaType>> produces() {
- return Optional.ofNullable(getProduces());
+ return optional(getProduces());
}
/**
@@ -891,7 +891,7 @@ public class Operation extends SwaggerElement {
* @return The response info as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<ResponseInfo> response(String status) {
- return Optional.ofNullable(getResponse(status));
+ return optional(getResponse(status));
}
/**
@@ -943,7 +943,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Map<String,ResponseInfo>> responses() {
- return Optional.ofNullable(getResponses());
+ return optional(getResponses());
}
/**
@@ -1041,7 +1041,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<String>> schemes() {
- return Optional.ofNullable(getSchemes());
+ return optional(getSchemes());
}
/**
@@ -1144,7 +1144,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<List<Map<String,List<String>>>> security() {
- return Optional.ofNullable(getSecurity());
+ return optional(getSecurity());
}
/**
@@ -1228,7 +1228,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> summary() {
- return Optional.ofNullable(getSummary());
+ return optional(getSummary());
}
/**
@@ -1299,7 +1299,7 @@ public class Operation extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<String>> tags() {
- return Optional.ofNullable(getTags());
+ return optional(getTags());
}
/**
@@ -1393,19 +1393,20 @@ public class Operation extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(consumes != null, "consumes")
- .appendIf(deprecated != null, "deprecated")
- .appendIf(description != null, "description")
- .appendIf(externalDocs != null, "externalDocs")
- .appendIf(operationId != null, "operationId")
- .appendIf(parameters != null, "parameters")
- .appendIf(produces != null, "produces")
- .appendIf(responses != null, "responses")
- .appendIf(schemes != null, "schemes")
- .appendIf(security != null, "security")
- .appendIf(summary != null, "summary")
- .appendIf(tags != null, "tags");
+ Set<String> s = setBuilder(String.class)
+ .addIf(consumes != null, "consumes")
+ .addIf(deprecated != null, "deprecated")
+ .addIf(description != null, "description")
+ .addIf(externalDocs != null, "externalDocs")
+ .addIf(operationId != null, "operationId")
+ .addIf(parameters != null, "parameters")
+ .addIf(produces != null, "produces")
+ .addIf(responses != null, "responses")
+ .addIf(schemes != null, "schemes")
+ .addIf(security != null, "security")
+ .addIf(summary != null, "summary")
+ .addIf(tags != null, "tags")
+ .build();
return new MultiSet<>(s, super.keySet());
}
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/OperationMap.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/OperationMap.java
index 75cc21d..f809233 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/OperationMap.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/OperationMap.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -45,7 +46,9 @@ public class OperationMap extends TreeMap<String,Operation> {
private static final long serialVersionUID = 1L;
private static final Comparator<String> OP_SORTER = new Comparator<String>() {
- private final Map<String,String> methods = AMap.of("get","0","put","1","post","2","delete","3","options","4","head","5","patch","6");
+ private final Map<String,String> methods = mapBuilder(String.class,String.class)
+ .add("get","0").add("put","1").add("post","2").add("delete","3").add("options","4").add("head","5").add("patch","6")
+ .build();
@Override
public int compare(String o1, String o2) {
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ParameterInfo.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ParameterInfo.java
index 4129a99..5f46a5c 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ParameterInfo.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ParameterInfo.java
@@ -12,11 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.ArrayUtils.*;
-import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.ArrayUtils.contains;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
@@ -295,7 +295,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> allowEmptyValue() {
- return Optional.ofNullable(getAllowEmptyValue());
+ return optional(getAllowEmptyValue());
}
/**
@@ -386,7 +386,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> collectionFormat() {
- return Optional.ofNullable(getCollectionFormat());
+ return optional(getCollectionFormat());
}
/**
@@ -462,7 +462,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Object> _default() {
- return Optional.ofNullable(getDefault());
+ return optional(getDefault());
}
/**
@@ -522,7 +522,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> description() {
- return Optional.ofNullable(getDescription());
+ return optional(getDescription());
}
/**
@@ -585,7 +585,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<Object>> _enum() {
- return Optional.ofNullable(getEnum());
+ return optional(getEnum());
}
/**
@@ -641,7 +641,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> exclusiveMaximum() {
- return Optional.ofNullable(getExclusiveMaximum());
+ return optional(getExclusiveMaximum());
}
/**
@@ -698,7 +698,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> exclusiveMinimum() {
- return Optional.ofNullable(getExclusiveMinimum());
+ return optional(getExclusiveMinimum());
}
/**
@@ -764,7 +764,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> format() {
- return Optional.ofNullable(getFormat());
+ return optional(getFormat());
}
/**
@@ -837,7 +837,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> in() {
- return Optional.ofNullable(getIn());
+ return optional(getIn());
}
/**
@@ -904,7 +904,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Items> items() {
- return Optional.ofNullable(getItems());
+ return optional(getItems());
}
/**
@@ -974,7 +974,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> maximum() {
- return Optional.ofNullable(getMaximum());
+ return optional(getMaximum());
}
/**
@@ -1031,7 +1031,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> maxItems() {
- return Optional.ofNullable(getMaxItems());
+ return optional(getMaxItems());
}
/**
@@ -1088,7 +1088,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> maxLength() {
- return Optional.ofNullable(getMaxLength());
+ return optional(getMaxLength());
}
/**
@@ -1145,7 +1145,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> minimum() {
- return Optional.ofNullable(getMinimum());
+ return optional(getMinimum());
}
/**
@@ -1202,7 +1202,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> minItems() {
- return Optional.ofNullable(getMinItems());
+ return optional(getMinItems());
}
/**
@@ -1259,7 +1259,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> minLength() {
- return Optional.ofNullable(getMinLength());
+ return optional(getMinLength());
}
/**
@@ -1318,7 +1318,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> multipleOf() {
- return Optional.ofNullable(getMultipleOf());
+ return optional(getMultipleOf());
}
/**
@@ -1397,7 +1397,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> name() {
- return Optional.ofNullable(getName());
+ return optional(getName());
}
/**
@@ -1446,7 +1446,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> pattern() {
- return Optional.ofNullable(getPattern());
+ return optional(getPattern());
}
/**
@@ -1504,7 +1504,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> required() {
- return Optional.ofNullable(getRequired());
+ return optional(getRequired());
}
/**
@@ -1582,7 +1582,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<SchemaInfo> schema() {
- return Optional.ofNullable(getSchema());
+ return optional(getSchema());
}
/**
@@ -1677,7 +1677,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> type() {
- return Optional.ofNullable(getType());
+ return optional(getType());
}
/**
@@ -1735,7 +1735,7 @@ public class ParameterInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> uniqueItems() {
- return Optional.ofNullable(getUniqueItems());
+ return optional(getUniqueItems());
}
/**
@@ -1833,32 +1833,33 @@ public class ParameterInfo extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(allowEmptyValue != null, "allowEmptyValue")
- .appendIf(collectionFormat != null, "collectionFormat")
- .appendIf(_default != null, "default")
- .appendIf(description != null, "description")
- .appendIf(_enum != null, "enum")
- .appendIf(example != null, "example")
- .appendIf(examples != null, "examples")
- .appendIf(exclusiveMaximum != null, "exclusiveMaximum")
- .appendIf(exclusiveMinimum != null, "exclusiveMinimum")
- .appendIf(format != null, "format")
- .appendIf(in != null, "in")
- .appendIf(items != null, "items")
- .appendIf(maximum != null, "maximum")
- .appendIf(maxItems != null, "maxItems")
- .appendIf(maxLength != null, "maxLength")
- .appendIf(minimum != null, "minimum")
- .appendIf(minItems != null, "minItems")
- .appendIf(minLength != null, "minLength")
- .appendIf(multipleOf != null, "multipleOf")
- .appendIf(name != null, "name")
- .appendIf(pattern != null, "pattern")
- .appendIf(required != null, "required")
- .appendIf(schema != null, "schema")
- .appendIf(type != null, "type")
- .appendIf(uniqueItems != null, "uniqueItems");
+ Set<String> s = setBuilder(String.class)
+ .addIf(allowEmptyValue != null, "allowEmptyValue")
+ .addIf(collectionFormat != null, "collectionFormat")
+ .addIf(_default != null, "default")
+ .addIf(description != null, "description")
+ .addIf(_enum != null, "enum")
+ .addIf(example != null, "example")
+ .addIf(examples != null, "examples")
+ .addIf(exclusiveMaximum != null, "exclusiveMaximum")
+ .addIf(exclusiveMinimum != null, "exclusiveMinimum")
+ .addIf(format != null, "format")
+ .addIf(in != null, "in")
+ .addIf(items != null, "items")
+ .addIf(maximum != null, "maximum")
+ .addIf(maxItems != null, "maxItems")
+ .addIf(maxLength != null, "maxLength")
+ .addIf(minimum != null, "minimum")
+ .addIf(minItems != null, "minItems")
+ .addIf(minLength != null, "minLength")
+ .addIf(multipleOf != null, "multipleOf")
+ .addIf(name != null, "name")
+ .addIf(pattern != null, "pattern")
+ .addIf(required != null, "required")
+ .addIf(schema != null, "schema")
+ .addIf(type != null, "type")
+ .addIf(uniqueItems != null, "uniqueItems")
+ .build();
return new MultiSet<>(s, super.keySet());
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ResponseInfo.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ResponseInfo.java
index 4428efa..d4a434e 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ResponseInfo.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ResponseInfo.java
@@ -12,9 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -171,7 +171,7 @@ public class ResponseInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> description() {
- return Optional.ofNullable(getDescription());
+ return optional(getDescription());
}
/**
@@ -254,7 +254,7 @@ public class ResponseInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Map<String,Object>> examples() {
- return Optional.ofNullable(getExamples());
+ return optional(getExamples());
}
/**
@@ -350,7 +350,7 @@ public class ResponseInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Map<String,HeaderInfo>> headers() {
- return Optional.ofNullable(getHeaders());
+ return optional(getHeaders());
}
/**
@@ -405,7 +405,7 @@ public class ResponseInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<HeaderInfo> header(String name) {
- return Optional.ofNullable(getHeader(name));
+ return optional(getHeader(name));
}
//-----------------------------------------------------------------------------------------------------------------
@@ -448,7 +448,7 @@ public class ResponseInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<SchemaInfo> schema() {
- return Optional.ofNullable(getSchema());
+ return optional(getSchema());
}
/**
@@ -519,11 +519,12 @@ public class ResponseInfo extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(description != null, "description")
- .appendIf(examples != null, "examples")
- .appendIf(headers != null, "headers")
- .appendIf(schema != null, "schema");
+ Set<String> s = setBuilder(String.class)
+ .addIf(description != null, "description")
+ .addIf(examples != null, "examples")
+ .addIf(headers != null, "headers")
+ .addIf(schema != null, "schema")
+ .build();
return new MultiSet<>(s, super.keySet());
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SchemaInfo.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SchemaInfo.java
index 520a183..9be7faa 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SchemaInfo.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SchemaInfo.java
@@ -12,9 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
-import static org.apache.juneau.internal.ConverterUtils.*;
import static org.apache.juneau.internal.CollectionUtils.*;
+import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -193,7 +193,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<SchemaInfo> additionalProperties() {
- return Optional.ofNullable(getAdditionalProperties());
+ return optional(getAdditionalProperties());
}
/**
@@ -265,7 +265,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<Object>> allOf() {
- return Optional.ofNullable(getAllOf());
+ return optional(getAllOf());
}
/**
@@ -333,7 +333,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Object> _default() {
- return Optional.ofNullable(getDefault());
+ return optional(getDefault());
}
/**
@@ -381,7 +381,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> description() {
- return Optional.ofNullable(getDescription());
+ return optional(getDescription());
}
/**
@@ -427,7 +427,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> discriminator() {
- return Optional.ofNullable(getDiscriminator());
+ return optional(getDiscriminator());
}
/**
@@ -486,7 +486,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<Object>> _enum() {
- return Optional.ofNullable(getEnum());
+ return optional(getEnum());
}
/**
@@ -544,7 +544,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Object> example() {
- return Optional.ofNullable(getExample());
+ return optional(getExample());
}
/**
@@ -590,7 +590,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> exclusiveMaximum() {
- return Optional.ofNullable(getExclusiveMaximum());
+ return optional(getExclusiveMaximum());
}
/**
@@ -649,7 +649,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> exclusiveMinimum() {
- return Optional.ofNullable(getExclusiveMinimum());
+ return optional(getExclusiveMinimum());
}
/**
@@ -708,7 +708,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<ExternalDocumentation> externalDocs() {
- return Optional.ofNullable(getExternalDocs());
+ return optional(getExternalDocs());
}
/**
@@ -784,7 +784,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> format() {
- return Optional.ofNullable(getFormat());
+ return optional(getFormat());
}
/**
@@ -842,7 +842,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Items> items() {
- return Optional.ofNullable(getItems());
+ return optional(getItems());
}
/**
@@ -906,7 +906,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> maximum() {
- return Optional.ofNullable(getMaximum());
+ return optional(getMaximum());
}
/**
@@ -965,7 +965,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> maxItems() {
- return Optional.ofNullable(getMaxItems());
+ return optional(getMaxItems());
}
/**
@@ -1024,7 +1024,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> maxLength() {
- return Optional.ofNullable(getMaxLength());
+ return optional(getMaxLength());
}
/**
@@ -1083,7 +1083,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> maxProperties() {
- return Optional.ofNullable(getMaxProperties());
+ return optional(getMaxProperties());
}
/**
@@ -1142,7 +1142,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> minimum() {
- return Optional.ofNullable(getMinimum());
+ return optional(getMinimum());
}
/**
@@ -1201,7 +1201,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> minItems() {
- return Optional.ofNullable(getMinItems());
+ return optional(getMinItems());
}
/**
@@ -1260,7 +1260,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> minLength() {
- return Optional.ofNullable(getMinLength());
+ return optional(getMinLength());
}
/**
@@ -1319,7 +1319,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Integer> minProperties() {
- return Optional.ofNullable(getMinProperties());
+ return optional(getMinProperties());
}
/**
@@ -1378,7 +1378,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Number> multipleOf() {
- return Optional.ofNullable(getMultipleOf());
+ return optional(getMultipleOf());
}
/**
@@ -1438,7 +1438,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> pattern() {
- return Optional.ofNullable(getPattern());
+ return optional(getPattern());
}
/**
@@ -1497,7 +1497,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Map<String,SchemaInfo>> properties() {
- return Optional.ofNullable(getProperties());
+ return optional(getProperties());
}
/**
@@ -1554,7 +1554,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> readOnly() {
- return Optional.ofNullable(getReadOnly());
+ return optional(getReadOnly());
}
/**
@@ -1615,7 +1615,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> ref() {
- return Optional.ofNullable(getRef());
+ return optional(getRef());
}
/**
@@ -1661,7 +1661,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> required() {
- return Optional.ofNullable(getRequired());
+ return optional(getRequired());
}
/**
@@ -1735,7 +1735,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<String>> requiredProperties() {
- return Optional.ofNullable(getRequiredProperties());
+ return optional(getRequiredProperties());
}
/**
@@ -1792,7 +1792,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> title() {
- return Optional.ofNullable(getTitle());
+ return optional(getTitle());
}
/**
@@ -1848,7 +1848,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> type() {
- return Optional.ofNullable(getType());
+ return optional(getType());
}
/**
@@ -1904,7 +1904,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> uniqueItems() {
- return Optional.ofNullable(getUniqueItems());
+ return optional(getUniqueItems());
}
/**
@@ -1963,7 +1963,7 @@ public class SchemaInfo extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Xml> xml() {
- return Optional.ofNullable(getXml());
+ return optional(getXml());
}
/**
@@ -2082,38 +2082,39 @@ public class SchemaInfo extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(additionalProperties != null, "additionalProperties")
- .appendIf(allOf != null, "allOf")
- .appendIf(_default != null, "default")
- .appendIf(description != null, "description")
- .appendIf(discriminator != null, "discriminator")
- .appendIf(_enum != null, "enum")
- .appendIf(example != null, "example")
- .appendIf(exclusiveMaximum != null, "exclusiveMaximum")
- .appendIf(exclusiveMinimum != null, "exclusiveMinimum")
- .appendIf(externalDocs != null, "externalDocs")
- .appendIf(format != null, "format")
- .appendIf(items != null, "items")
- .appendIf(maximum != null, "maximum")
- .appendIf(maxItems != null, "maxItems")
- .appendIf(maxLength != null, "maxLength")
- .appendIf(maxProperties != null, "maxProperties")
- .appendIf(minimum != null, "minimum")
- .appendIf(minItems != null, "minItems")
- .appendIf(minLength != null, "minLength")
- .appendIf(minProperties != null, "minProperties")
- .appendIf(multipleOf != null, "multipleOf")
- .appendIf(pattern != null, "pattern")
- .appendIf(properties != null, "properties")
- .appendIf(readOnly != null, "readOnly")
- .appendIf(ref != null, "$ref")
- .appendIf(required != null, "required")
- .appendIf(requiredProperties != null, "requiredProperties")
- .appendIf(title != null, "title")
- .appendIf(type != null, "type")
- .appendIf(uniqueItems != null, "uniqueItems")
- .appendIf(xml != null, "xml");
+ Set<String> s = setBuilder(String.class)
+ .addIf(additionalProperties != null, "additionalProperties")
+ .addIf(allOf != null, "allOf")
+ .addIf(_default != null, "default")
+ .addIf(description != null, "description")
+ .addIf(discriminator != null, "discriminator")
+ .addIf(_enum != null, "enum")
+ .addIf(example != null, "example")
+ .addIf(exclusiveMaximum != null, "exclusiveMaximum")
+ .addIf(exclusiveMinimum != null, "exclusiveMinimum")
+ .addIf(externalDocs != null, "externalDocs")
+ .addIf(format != null, "format")
+ .addIf(items != null, "items")
+ .addIf(maximum != null, "maximum")
+ .addIf(maxItems != null, "maxItems")
+ .addIf(maxLength != null, "maxLength")
+ .addIf(maxProperties != null, "maxProperties")
+ .addIf(minimum != null, "minimum")
+ .addIf(minItems != null, "minItems")
+ .addIf(minLength != null, "minLength")
+ .addIf(minProperties != null, "minProperties")
+ .addIf(multipleOf != null, "multipleOf")
+ .addIf(pattern != null, "pattern")
+ .addIf(properties != null, "properties")
+ .addIf(readOnly != null, "readOnly")
+ .addIf(ref != null, "$ref")
+ .addIf(required != null, "required")
+ .addIf(requiredProperties != null, "requiredProperties")
+ .addIf(title != null, "title")
+ .addIf(type != null, "type")
+ .addIf(uniqueItems != null, "uniqueItems")
+ .addIf(xml != null, "xml")
+ .build();
return new MultiSet<>(s, super.keySet());
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SecurityScheme.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SecurityScheme.java
index bdc2f09..bd4901f 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SecurityScheme.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SecurityScheme.java
@@ -12,10 +12,10 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.ArrayUtils.*;
-import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.ArrayUtils.contains;
import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import java.util.*;
@@ -155,7 +155,7 @@ public class SecurityScheme extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> authorizationUrl() {
- return Optional.ofNullable(getAuthorizationUrl());
+ return optional(getAuthorizationUrl());
}
/**
@@ -214,7 +214,7 @@ public class SecurityScheme extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> description() {
- return Optional.ofNullable(getDescription());
+ return optional(getDescription());
}
/**
@@ -279,7 +279,7 @@ public class SecurityScheme extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> flow() {
- return Optional.ofNullable(getFlow());
+ return optional(getFlow());
}
/**
@@ -349,7 +349,7 @@ public class SecurityScheme extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> in() {
- return Optional.ofNullable(getIn());
+ return optional(getIn());
}
/**
@@ -412,7 +412,7 @@ public class SecurityScheme extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> name() {
- return Optional.ofNullable(getName());
+ return optional(getName());
}
/**
@@ -486,7 +486,7 @@ public class SecurityScheme extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Map<String,String>> scopes() {
- return Optional.ofNullable(getScopes());
+ return optional(getScopes());
}
/**
@@ -559,7 +559,7 @@ public class SecurityScheme extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> tokenUrl() {
- return Optional.ofNullable(getTokenUrl());
+ return optional(getTokenUrl());
}
/**
@@ -629,7 +629,7 @@ public class SecurityScheme extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> type() {
- return Optional.ofNullable(getType());
+ return optional(getType());
}
/**
@@ -694,15 +694,16 @@ public class SecurityScheme extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(authorizationUrl != null, "authorizationUrl")
- .appendIf(description != null, "description")
- .appendIf(flow != null, "flow")
- .appendIf(in != null, "in")
- .appendIf(name != null, "name")
- .appendIf(scopes != null, "scopes")
- .appendIf(tokenUrl != null, "tokenUrl")
- .appendIf(type != null, "type");
+ Set<String> s = setBuilder(String.class)
+ .addIf(authorizationUrl != null, "authorizationUrl")
+ .addIf(description != null, "description")
+ .addIf(flow != null, "flow")
+ .addIf(in != null, "in")
+ .addIf(name != null, "name")
+ .addIf(scopes != null, "scopes")
+ .addIf(tokenUrl != null, "tokenUrl")
+ .addIf(type != null, "type")
+ .build();
return new MultiSet<>(s, super.keySet());
}
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Swagger.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Swagger.java
index 8b98865..711b4ae 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Swagger.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Swagger.java
@@ -12,10 +12,10 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ClassUtils.*;
import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import java.util.*;
@@ -206,7 +206,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> basePath() {
- return Optional.ofNullable(getBasePath());
+ return optional(getBasePath());
}
/**
@@ -285,7 +285,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<MediaType>> consumes() {
- return Optional.ofNullable(getConsumes());
+ return optional(getConsumes());
}
/**
@@ -404,7 +404,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Map<String,OMap>> definitions() {
- return Optional.ofNullable(getDefinitions());
+ return optional(getDefinitions());
}
/**
@@ -476,7 +476,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<ExternalDocumentation> externalDocs() {
- return Optional.ofNullable(getExternalDocs());
+ return optional(getExternalDocs());
}
/**
@@ -557,7 +557,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> host() {
- return Optional.ofNullable(getHost());
+ return optional(getHost());
}
/**
@@ -619,7 +619,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Info> info() {
- return Optional.ofNullable(getInfo());
+ return optional(getInfo());
}
/**
@@ -726,7 +726,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Map<String,ParameterInfo>> parameters() {
- return Optional.ofNullable(getParameters());
+ return optional(getParameters());
}
/**
@@ -837,7 +837,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Map<String,OperationMap>> paths() {
- return Optional.ofNullable(getPaths());
+ return optional(getPaths());
}
/**
@@ -927,7 +927,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<MediaType>> produces() {
- return Optional.ofNullable(getProduces());
+ return optional(getProduces());
}
/**
@@ -1046,7 +1046,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Map<String,ResponseInfo>> responses() {
- return Optional.ofNullable(getResponses());
+ return optional(getResponses());
}
/**
@@ -1148,7 +1148,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<String>> schemes() {
- return Optional.ofNullable(getSchemes());
+ return optional(getSchemes());
}
/**
@@ -1254,7 +1254,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<List<Map<String,List<String>>>> security() {
- return Optional.ofNullable(getSecurity());
+ return optional(getSecurity());
}
/**
@@ -1358,7 +1358,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Map<String,SecurityScheme>> securityDefinitions() {
- return Optional.ofNullable(getSecurityDefinitions());
+ return optional(getSecurityDefinitions());
}
/**
@@ -1430,7 +1430,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> swagger() {
- return Optional.ofNullable(getSwagger());
+ return optional(getSwagger());
}
/**
@@ -1512,7 +1512,7 @@ public class Swagger extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Set<Tag>> tags() {
- return Optional.ofNullable(getTags());
+ return optional(getTags());
}
/**
@@ -1567,7 +1567,7 @@ public class Swagger extends SwaggerElement {
* @return The operation map for the specified path as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<OperationMap> path(String path) {
- return Optional.ofNullable(getPath(path));
+ return optional(getPath(path));
}
/**
@@ -1592,7 +1592,7 @@ public class Swagger extends SwaggerElement {
* @return The operation for the specified path and operation id as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Operation> operation(String path, String operation) {
- return Optional.ofNullable(getOperation(path, operation));
+ return optional(getOperation(path, operation));
}
/**
@@ -1634,7 +1634,7 @@ public class Swagger extends SwaggerElement {
* @return The operation for the specified path and operation id as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<ResponseInfo> responseInfo(String path, String operation, String status) {
- return Optional.ofNullable(getResponseInfo(path, operation, status));
+ return optional(getResponseInfo(path, operation, status));
}
/**
@@ -1667,7 +1667,7 @@ public class Swagger extends SwaggerElement {
* @return The parameter information as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<ParameterInfo> parameterInfo(String path, String method, String in, String name) {
- return Optional.of(getParameterInfo(path, method, in, name));
+ return optional(getParameterInfo(path, method, in, name));
}
@@ -1724,22 +1724,23 @@ public class Swagger extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(basePath != null, "basePath")
- .appendIf(consumes != null, "consumes")
- .appendIf(definitions != null, "definitions")
- .appendIf(externalDocs != null, "externalDocs")
- .appendIf(host != null, "host")
- .appendIf(info != null, "info")
- .appendIf(parameters != null, "parameters")
- .appendIf(paths != null, "paths")
- .appendIf(produces != null, "produces")
- .appendIf(responses != null, "responses")
- .appendIf(schemes != null, "schemes")
- .appendIf(security != null, "security")
- .appendIf(securityDefinitions != null, "securityDefinitions")
- .appendIf(swagger != null, "swagger")
- .appendIf(tags != null, "tags");
+ Set<String> s = setBuilder(String.class)
+ .addIf(basePath != null, "basePath")
+ .addIf(consumes != null, "consumes")
+ .addIf(definitions != null, "definitions")
+ .addIf(externalDocs != null, "externalDocs")
+ .addIf(host != null, "host")
+ .addIf(info != null, "info")
+ .addIf(parameters != null, "parameters")
+ .addIf(paths != null, "paths")
+ .addIf(produces != null, "produces")
+ .addIf(responses != null, "responses")
+ .addIf(schemes != null, "schemes")
+ .addIf(security != null, "security")
+ .addIf(securityDefinitions != null, "securityDefinitions")
+ .addIf(swagger != null, "swagger")
+ .addIf(tags != null, "tags")
+ .build();
return new MultiSet<>(s, super.keySet());
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SwaggerElement.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SwaggerElement.java
index 44ffbc8..c7e1be9 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SwaggerElement.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/SwaggerElement.java
@@ -12,13 +12,13 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
import java.util.*;
import org.apache.juneau.annotation.*;
import org.apache.juneau.collections.*;
-import org.apache.juneau.internal.ASet;
import org.apache.juneau.json.*;
/**
@@ -153,8 +153,9 @@ public abstract class SwaggerElement {
* <br>Never <jk>null</jk>.
*/
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(strict, "strict");
+ Set<String> s = setBuilder(String.class)
+ .addIf(strict, "strict")
+ .build();
s.addAll(extraKeys());
return s;
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Tag.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Tag.java
index 7924ac7..3db993c 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Tag.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Tag.java
@@ -12,8 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -124,7 +125,7 @@ public class Tag extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> description() {
- return Optional.ofNullable(getDescription());
+ return optional(getDescription());
}
/**
@@ -182,7 +183,7 @@ public class Tag extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<ExternalDocumentation> externalDocs() {
- return Optional.ofNullable(getExternalDocs());
+ return optional(getExternalDocs());
}
/**
@@ -261,7 +262,7 @@ public class Tag extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> name() {
- return Optional.ofNullable(getName());
+ return optional(getName());
}
/**
@@ -309,10 +310,11 @@ public class Tag extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(description != null, "description")
- .appendIf(externalDocs != null, "externalDocs")
- .appendIf(name != null, "name");
+ Set<String> s = setBuilder(String.class)
+ .addIf(description != null, "description")
+ .addIf(externalDocs != null, "externalDocs")
+ .addIf(name != null, "name")
+ .build();
return new MultiSet<>(s, super.keySet());
}
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Xml.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Xml.java
index a3d040e..79cbb72 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Xml.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/Xml.java
@@ -12,8 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger;
-import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConverterUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -133,7 +134,7 @@ public class Xml extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> attribute() {
- return Optional.ofNullable(getAttribute());
+ return optional(getAttribute());
}
/**
@@ -209,7 +210,7 @@ public class Xml extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> name() {
- return Optional.ofNullable(getName());
+ return optional(getName());
}
/**
@@ -267,7 +268,7 @@ public class Xml extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> namespace() {
- return Optional.ofNullable(getNamespace());
+ return optional(getNamespace());
}
/**
@@ -325,7 +326,7 @@ public class Xml extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<String> prefix() {
- return Optional.ofNullable(getPrefix());
+ return optional(getPrefix());
}
/**
@@ -396,7 +397,7 @@ public class Xml extends SwaggerElement {
* @return The property value as an {@link Optional}. Never <jk>null</jk>.
*/
public Optional<Boolean> wrapped() {
- return Optional.ofNullable(getWrapped());
+ return optional(getWrapped());
}
/**
@@ -473,12 +474,13 @@ public class Xml extends SwaggerElement {
@Override /* SwaggerElement */
public Set<String> keySet() {
- ASet<String> s = ASet.<String>of()
- .appendIf(attribute != null, "attribute")
- .appendIf(name != null, "name")
- .appendIf(namespace != null, "namespace")
- .appendIf(prefix != null, "prefix")
- .appendIf(wrapped != null, "wrapped");
+ Set<String> s = setBuilder(String.class)
+ .addIf(attribute != null, "attribute")
+ .addIf(name != null, "name")
+ .addIf(namespace != null, "namespace")
+ .addIf(prefix != null, "prefix")
+ .addIf(wrapped != null, "wrapped")
+ .build();
return new MultiSet<>(s, super.keySet());
}
}
diff --git a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ui/SwaggerUI.java b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ui/SwaggerUI.java
index 5442268..7726d43 100644
--- a/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ui/SwaggerUI.java
+++ b/juneau-core/juneau-dto/src/main/java/org/apache/juneau/dto/swagger/ui/SwaggerUI.java
@@ -12,8 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.dto.swagger.ui;
-import static org.apache.juneau.dto.html5.HtmlBuilder.*;
import static java.util.Collections.*;
+import static org.apache.juneau.dto.html5.HtmlBuilder.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
import java.util.Map;
@@ -44,7 +45,7 @@ public class SwaggerUI extends ObjectSwap<Swagger,Div> {
.caching(Boolean.getBoolean("RestContext.disableClasspathResourceCaching.b") ? -1 : 1_000_000)
.build();
- private static final Set<String> STANDARD_METHODS = ASet.of("get", "put", "post", "delete", "options");
+ private static final Set<String> STANDARD_METHODS = set("get", "put", "post", "delete", "options");
/**
* This UI applies to HTML requests only.
diff --git a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
index f2b532a..e39b344 100644
--- a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
+++ b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParser.java
@@ -12,23 +12,21 @@
// ***************************************************************************************************************************
package org.apache.juneau.jena;
-import static org.apache.juneau.collections.OMap.filteredMap;
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Method;
-import java.nio.charset.Charset;
+import static org.apache.juneau.collections.OMap.*;
+
+import java.lang.annotation.*;
+import java.lang.reflect.*;
+import java.nio.charset.*;
import java.util.*;
import java.util.concurrent.*;
import org.apache.juneau.*;
import org.apache.juneau.collections.*;
-import org.apache.juneau.http.header.MediaType;
-import org.apache.juneau.internal.Cache;
-import org.apache.juneau.internal.FluentSetter;
-import org.apache.juneau.internal.FluentSetters;
-import org.apache.juneau.jena.annotation.Rdf;
+import org.apache.juneau.http.header.*;
+import org.apache.juneau.internal.*;
+import org.apache.juneau.jena.annotation.*;
import org.apache.juneau.parser.*;
-import org.apache.juneau.utils.HashKey;
-import org.apache.juneau.utils.ThrowingFunction;
+import org.apache.juneau.utils.*;
import org.apache.juneau.xml.*;
/**
diff --git a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserSession.java b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserSession.java
index 6c4e7d9..ca79314 100644
--- a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserSession.java
+++ b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserSession.java
@@ -12,22 +12,23 @@
// ***************************************************************************************************************************
package org.apache.juneau.jena;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.jena.Constants.*;
-import java.io.IOException;
-import java.lang.reflect.Method;
-import java.nio.charset.Charset;
+import java.io.*;
+import java.lang.reflect.*;
+import java.nio.charset.*;
import java.util.*;
-import java.util.function.Consumer;
+import java.util.function.*;
import org.apache.jena.rdf.model.*;
import org.apache.jena.util.iterator.*;
import org.apache.juneau.*;
import org.apache.juneau.collections.*;
-import org.apache.juneau.http.header.MediaType;
-import org.apache.juneau.httppart.HttpPartSchema;
-import org.apache.juneau.internal.FluentSetters;
+import org.apache.juneau.http.header.*;
+import org.apache.juneau.httppart.*;
+import org.apache.juneau.internal.*;
import org.apache.juneau.parser.*;
import org.apache.juneau.swap.*;
import org.apache.juneau.xml.*;
@@ -260,7 +261,7 @@ public class RdfParserSession extends ReaderParserSession {
}
if (roots.isEmpty())
- return type.isOptional() ? (T)Optional.empty() : null;
+ return type.isOptional() ? (T)empty() : null;
if (roots.size() > 1)
throw new ParseException(this, "Too many root nodes found in model: {0}", roots.size());
@@ -394,7 +395,7 @@ public class RdfParserSession extends ReaderParserSession {
sType = eType;
if (sType.isOptional())
- return (T)Optional.ofNullable(parseAnything(eType.getElementType(), n, outer, pMeta));
+ return (T)optional(parseAnything(eType.getElementType(), n, outer, pMeta));
setCurrentClass(sType);
diff --git a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
index de26208..8d7111d 100644
--- a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
+++ b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializer.java
@@ -12,25 +12,22 @@
// ***************************************************************************************************************************
package org.apache.juneau.jena;
-import static java.util.Optional.*;
-import static org.apache.juneau.collections.OMap.filteredMap;
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Method;
-import java.nio.charset.Charset;
+import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
+import java.lang.annotation.*;
+import java.lang.reflect.*;
+import java.nio.charset.*;
import java.util.*;
import java.util.concurrent.*;
import org.apache.juneau.*;
import org.apache.juneau.collections.*;
-import org.apache.juneau.http.header.MediaType;
-import org.apache.juneau.internal.AList;
-import org.apache.juneau.internal.Cache;
-import org.apache.juneau.internal.FluentSetter;
-import org.apache.juneau.internal.FluentSetters;
+import org.apache.juneau.http.header.*;
+import org.apache.juneau.internal.*;
import org.apache.juneau.jena.annotation.*;
import org.apache.juneau.serializer.*;
-import org.apache.juneau.utils.HashKey;
-import org.apache.juneau.utils.ThrowingFunction;
+import org.apache.juneau.utils.*;
import org.apache.juneau.xml.*;
import org.apache.juneau.xml.annotation.*;
@@ -132,7 +129,7 @@ public class RdfSerializer extends WriterSerializer implements RdfMetaProvider {
collectionFormat = copyFrom.collectionFormat;
juneauNs = copyFrom.juneauNs;
juneauBpNs = copyFrom.juneauBpNs;
- namespaces = copyFrom.namespaces.length == 0 ? null : AList.of(copyFrom.namespaces);
+ namespaces = copyFrom.namespaces.length == 0 ? null : list(copyFrom.namespaces);
jenaSettings = new TreeMap<>(copyFrom.jenaSettings);
}
@@ -1883,7 +1880,7 @@ public class RdfSerializer extends WriterSerializer implements RdfMetaProvider {
juneauNs = builder.juneauNs;
juneauBpNs = builder.juneauBpNs;
collectionFormat = builder.collectionFormat;
- namespaces = ofNullable(builder.namespaces).map(x -> x.toArray(new Namespace[0])).orElse(new Namespace[0]);
+ namespaces = optional(builder.namespaces).map(x -> x.toArray(new Namespace[0])).orElse(new Namespace[0]);
addBeanTypesRdf = builder.addBeanTypesRdf;
jenaSettings = new TreeMap<>(builder.jenaSettings);
diff --git a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerSession.java b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerSession.java
index 0ee5979..b9ccbd8 100644
--- a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerSession.java
+++ b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerSession.java
@@ -12,24 +12,25 @@
// ***************************************************************************************************************************
package org.apache.juneau.jena;
-import static org.apache.juneau.jena.Constants.*;
-import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.IOUtils.*;
+import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.jena.Constants.*;
import java.io.*;
-import java.lang.reflect.Method;
-import java.nio.charset.Charset;
+import java.lang.reflect.*;
+import java.nio.charset.*;
import java.util.*;
-import java.util.function.Consumer;
+import java.util.function.*;
import org.apache.jena.rdf.model.*;
import org.apache.juneau.*;
-import org.apache.juneau.http.header.MediaType;
-import org.apache.juneau.httppart.HttpPartSchema;
+import org.apache.juneau.http.header.*;
+import org.apache.juneau.httppart.*;
import org.apache.juneau.internal.*;
import org.apache.juneau.jena.annotation.*;
import org.apache.juneau.serializer.*;
-import org.apache.juneau.svl.VarResolverSession;
+import org.apache.juneau.svl.*;
import org.apache.juneau.swap.*;
import org.apache.juneau.xml.*;
import org.apache.juneau.xml.annotation.*;
@@ -52,7 +53,9 @@ public final class RdfSerializerSession extends WriterSerializerSession {
/**
* Maps RDF writer names to property prefixes that apply to them.
*/
- static final Map<String,String> LANG_PROP_MAP = AMap.of("RDF/XML","rdfXml.","RDF/XML-ABBREV","rdfXml.","N3","n3.","N3-PP","n3.","N3-PLAIN","n3.","N3-TRIPLES","n3.","TURTLE","n3.","N-TRIPLE","ntriple.");
+ static final Map<String,String> LANG_PROP_MAP = mapBuilder(String.class,String.class)
+ .add("RDF/XML","rdfXml.").add("RDF/XML-ABBREV","rdfXml.").add("N3","n3.").add("N3-PP","n3.").add("N3-PLAIN","n3.").add("N3-TRIPLES","n3.").add("TURTLE","n3.").add("N-TRIPLE","ntriple.")
+ .build();
//-----------------------------------------------------------------------------------------------------------------
// Static
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 1022289..39eb62d 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
@@ -13,12 +13,10 @@
package org.apache.juneau.jena.annotation;
import org.apache.juneau.*;
-import org.apache.juneau.jena.RdfCollectionFormat;
-import org.apache.juneau.jena.RdfParser;
-import org.apache.juneau.jena.RdfSerializer;
+import org.apache.juneau.jena.*;
import org.apache.juneau.reflect.*;
import org.apache.juneau.svl.*;
-import org.apache.juneau.xml.Namespace;
+import org.apache.juneau.xml.*;
/**
* Utility classes and methods for the {@link RdfConfig @RdfConfig} annotation.
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/AnnotationApplier.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/AnnotationApplier.java
index 8c7f3a1..6fedfd7 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/AnnotationApplier.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/AnnotationApplier.java
@@ -13,7 +13,7 @@
package org.apache.juneau;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.lang.annotation.*;
import java.nio.charset.*;
@@ -146,7 +146,7 @@ public abstract class AnnotationApplier<A extends Annotation, B> {
*/
protected Optional<String> string(String in) {
in = vr.resolve(in);
- return isEmpty(in) ? Optional.empty() : Optional.of(in);
+ return optional(isEmpty(in) ? null : in);
}
/**
@@ -156,7 +156,7 @@ public abstract class AnnotationApplier<A extends Annotation, B> {
* @return An optional containing the specified value.
*/
protected <T> Optional<Class<T>> type(Class<T> in) {
- return in.getSimpleName().equals("Null") ? Optional.empty() : Optional.of(in);
+ return optional(in.getSimpleName().equals("Null") ? null : in);
}
/**
@@ -169,7 +169,7 @@ public abstract class AnnotationApplier<A extends Annotation, B> {
* @return The array wrapped in an {@link Optional}.
*/
protected Optional<String[]> strings(String[] in) {
- return ofNullable(in.length == 0 ? null : Arrays.stream(in).map(x -> vr.resolve(x)).filter(x -> isNotEmpty(x)).toArray(String[]::new));
+ return optional(in.length == 0 ? null : Arrays.stream(in).map(x -> vr.resolve(x)).filter(x -> isNotEmpty(x)).toArray(String[]::new));
}
/**
@@ -254,7 +254,7 @@ public abstract class AnnotationApplier<A extends Annotation, B> {
* @return The array wrapped in an {@link Optional}.
*/
protected Optional<Class<?>[]> classes(Class<?>[] in) {
- return Optional.ofNullable(in.length == 0 ? null : in);
+ return optional(in.length == 0 ? null : in);
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanBuilder.java
index b2030c5..f82812b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanBuilder.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static java.util.Optional.*;
import java.util.*;
@@ -128,7 +128,7 @@ public class BeanBuilder<T> {
* @return The implementation type specified via {@link #type(Class)}.
*/
protected Optional<Class<? extends T>> type() {
- return ofNullable(type);
+ return optional(type);
}
/**
@@ -153,7 +153,7 @@ public class BeanBuilder<T> {
* @return The override bean specified via {@link #impl(Object)}.
*/
protected Optional<T> impl() {
- return ofNullable(impl);
+ return optional(impl);
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
index cc83c07..cbf5d70 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
@@ -17,7 +17,6 @@ import static org.apache.juneau.collections.OMap.*;
import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import static java.util.Arrays.*;
import java.beans.*;
@@ -3555,14 +3554,14 @@ public class BeanContext extends Context {
useJavaBeanIntrospector = builder.useJavaBeanIntrospector;
sortProperties = builder.sortProperties;
findFluentSetters = builder.findFluentSetters;
- typePropertyName = ofNullable(builder.typePropertyName).orElse("_type");
- locale = ofNullable(builder.locale).orElseGet(()->Locale.getDefault());
+ typePropertyName = optional(builder.typePropertyName).orElse("_type");
+ locale = optional(builder.locale).orElseGet(()->Locale.getDefault());
timeZone = builder.timeZone;
mediaType = builder.mediaType;
- beanDictionary = ofNullable(builder.beanDictionary).map(Collections::unmodifiableList).orElse(emptyList());
- swaps = ofNullable(builder.swaps).map(Collections::unmodifiableList).orElse(emptyList());
- notBeanClasses = ofNullable(builder.notBeanClasses).map(ArrayList::new).map(Collections::unmodifiableList).orElse(emptyList());
- notBeanPackages = ofNullable(builder.notBeanPackages).map(ArrayList::new).map(Collections::unmodifiableList).orElse(emptyList());
+ beanDictionary = optional(builder.beanDictionary).map(Collections::unmodifiableList).orElse(emptyList());
+ swaps = optional(builder.swaps).map(Collections::unmodifiableList).orElse(emptyList());
+ notBeanClasses = optional(builder.notBeanClasses).map(ArrayList::new).map(Collections::unmodifiableList).orElse(emptyList());
+ notBeanPackages = optional(builder.notBeanPackages).map(ArrayList::new).map(Collections::unmodifiableList).orElse(emptyList());
propertyNamer = builder.propertyNamer != null ? builder.propertyNamer : BasicPropertyNamer.class;
notBeanClassesArray = notBeanClasses.isEmpty() ? DEFAULT_NOTBEAN_CLASSES : Stream.of(notBeanClasses, asList(DEFAULT_NOTBEAN_CLASSES)).flatMap(Collection::stream).toArray(Class[]::new);
@@ -3578,7 +3577,7 @@ public class BeanContext extends Context {
}
LinkedList<ObjectSwap<?,?>> _swaps = new LinkedList<>();
- for (Object o : ofNullable(swaps).orElse(emptyList())) {
+ for (Object o : optional(swaps).orElse(emptyList())) {
if (o instanceof ObjectSwap) {
_swaps.add((ObjectSwap<?,?>)o);
} else {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextable.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextable.java
index d207f03..5c9330a 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextable.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextable.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau;
-import static java.util.Optional.*;
import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.beans.*;
import java.io.*;
@@ -2990,7 +2990,7 @@ public abstract class BeanContextable extends Context {
*/
protected BeanContextable(Builder b) {
super(b);
- beanContext = ofNullable(b.bc).orElse(b.bcBuilder.build());
+ beanContext = optional(b.bc).orElseGet(()->b.bcBuilder.build());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanFilter.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanFilter.java
index 7c746db..94d0da8 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanFilter.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanFilter.java
@@ -15,11 +15,11 @@ package org.apache.juneau;
import java.beans.*;
import java.util.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import org.apache.juneau.annotation.*;
import org.apache.juneau.cp.*;
-import org.apache.juneau.internal.*;
import org.apache.juneau.swap.*;
/**
@@ -64,11 +64,11 @@ public final class BeanFilter {
Class<?> beanClass;
String typeName, example;
- ASet<String>
- properties = ASet.of(),
- excludeProperties = ASet.of(),
- readOnlyProperties = ASet.of(),
- writeOnlyProperties = ASet.of();
+ Set<String>
+ properties = set(),
+ excludeProperties = set(),
+ readOnlyProperties = set(),
+ writeOnlyProperties = set();
Class<?> implClass, interfaceClass, stopClass;
boolean sortProperties, fluentSetters;
BeanCreator<PropertyNamer> propertyNamer = BeanCreator.of(PropertyNamer.class);
@@ -477,10 +477,9 @@ public final class BeanFilter {
* @return This object.
*/
public Builder properties(String...value) {
- this.properties = ASet.of();
+ this.properties = set();
for (String v : value)
- if (!v.isEmpty())
- properties.a(split(v));
+ split(v, x -> properties.add(x));
return this;
}
@@ -522,10 +521,9 @@ public final class BeanFilter {
* @return This object.
*/
public Builder excludeProperties(String...value) {
- this.excludeProperties = ASet.of();
+ this.excludeProperties = set();
for (String v : value)
- if (! v.isEmpty())
- excludeProperties.a(split(v));
+ split(v, x -> excludeProperties.add(x));
return this;
}
@@ -569,10 +567,9 @@ public final class BeanFilter {
* @return This object.
*/
public Builder readOnlyProperties(String...value) {
- this.readOnlyProperties = ASet.of();
+ this.readOnlyProperties = set();
for (String v : value)
- if (! v.isEmpty())
- readOnlyProperties.a(split(v));
+ split(v, x -> readOnlyProperties.add(x));
return this;
}
@@ -616,10 +613,9 @@ public final class BeanFilter {
* @return This object.
*/
public Builder writeOnlyProperties(String...value) {
- this.writeOnlyProperties = ASet.of();
+ this.writeOnlyProperties = set();
for (String v : value)
- if (! v.isEmpty())
- writeOnlyProperties.a(split(v));
+ split(v, x -> writeOnlyProperties.add(x));
return this;
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java
index ef432a2..a47e74e 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java
@@ -23,7 +23,6 @@ import java.io.*;
import java.lang.reflect.*;
import java.util.*;
import org.apache.juneau.annotation.*;
-import org.apache.juneau.internal.*;
import org.apache.juneau.reflect.*;
/**
@@ -121,12 +120,12 @@ public class BeanMeta<T> {
this.beanFilter = beanFilter;
this.dictionaryName = b.dictionaryName;
- this.properties = AMap.unmodifiable(b.properties);
- this.hiddenProperties = b.hiddenProperties.unmodifiable();
- this.getterProps = b.getterProps.unmodifiable();
- this.setterProps = b.setterProps.unmodifiable();
+ this.properties = unmodifiable(b.properties);
+ this.hiddenProperties = unmodifiable(b.hiddenProperties);
+ this.getterProps = unmodifiable(b.getterProps);
+ this.setterProps = unmodifiable(b.setterProps);
this.dynaProperty = b.dynaProperty;
- this.typeVarImpls = AMap.unmodifiable(b.typeVarImpls);
+ this.typeVarImpls = unmodifiable(b.typeVarImpls);
this.constructor = b.constructor;
this.constructorArgs = b.constructorArgs;
this.beanRegistry = b.beanRegistry;
@@ -142,12 +141,12 @@ public class BeanMeta<T> {
BeanFilter beanFilter;
String[] pNames;
Map<String,BeanPropertyMeta> properties;
- AMap<String,BeanPropertyMeta> hiddenProperties = AMap.create();
- AMap<Method,String> getterProps = AMap.create();
- AMap<Method,String> setterProps = AMap.create();
+ Map<String,BeanPropertyMeta> hiddenProperties = map();
+ Map<Method,String> getterProps = map();
+ Map<Method,String> setterProps = map();
BeanPropertyMeta dynaProperty;
- AMap<Class<?>,Class<?>[]> typeVarImpls;
+ Map<Class<?>,Class<?>[]> typeVarImpls;
ConstructorInfo constructor, implClassConstructor;
String[] constructorArgs = {};
PropertyNamer propertyNamer;
@@ -174,9 +173,9 @@ public class BeanMeta<T> {
mVis = ctx.getBeanMethodVisibility(),
fVis = ctx.getBeanFieldVisibility();
- AList<Class<?>> bdClasses = AList.create();
+ List<Class<?>> bdClasses = list();
if (beanFilter != null && beanFilter.getBeanDictionary() != null)
- bdClasses.a(beanFilter.getBeanDictionary());
+ addAll(bdClasses, beanFilter.getBeanDictionary());
Value<String> typeName = Value.empty();
classMeta.forEachAnnotation(Bean.class, x -> isNotEmpty(x.typeName()), x -> typeName.set(x.typeName()));
@@ -383,7 +382,7 @@ public class BeanMeta<T> {
}
}
- typeVarImpls = AMap.create();
+ typeVarImpls = map();
findTypeVarImpls(c, typeVarImpls);
if (typeVarImpls.isEmpty())
typeVarImpls = null;
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyMeta.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyMeta.java
index eb74c18..679174a 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanPropertyMeta.java
@@ -169,7 +169,7 @@ public final class BeanPropertyMeta {
boolean validate(BeanContext bc, BeanRegistry parentBeanRegistry, Map<Class<?>,Class<?>[]> typeVarImpls, Set<String> bpro, Set<String> bpwo) throws Exception {
- AList<Class<?>> bdClasses = AList.create();
+ List<Class<?>> bdClasses = list();
if (field == null && getter == null && setter == null)
return false;
@@ -192,7 +192,7 @@ public final class BeanPropertyMeta {
for (Beanp p : lp) {
if (! p.properties().isEmpty())
properties = split(p.properties());
- bdClasses.a(p.dictionary());
+ addAll(bdClasses, p.dictionary());
if (! p.ro().isEmpty())
readOnly = Boolean.valueOf(p.ro());
if (! p.wo().isEmpty())
@@ -211,7 +211,7 @@ public final class BeanPropertyMeta {
for (Beanp p : lp) {
if (properties != null && ! p.properties().isEmpty())
properties = split(p.properties());
- bdClasses.a(p.dictionary());
+ addAll(bdClasses, p.dictionary());
if (! p.ro().isEmpty())
readOnly = Boolean.valueOf(p.ro());
if (! p.wo().isEmpty())
@@ -231,7 +231,7 @@ public final class BeanPropertyMeta {
swap = getPropertySwap(p);
if (properties != null && ! p.properties().isEmpty())
properties = split(p.properties());
- bdClasses.a(p.dictionary());
+ addAll(bdClasses, p.dictionary());
if (! p.ro().isEmpty())
readOnly = Boolean.valueOf(p.ro());
if (! p.wo().isEmpty())
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
index cf38017..23c992c 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanSession.java
@@ -15,6 +15,7 @@ package org.apache.juneau;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.assertions.Assertions.*;
import static org.apache.juneau.internal.ClassUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.IOUtils.*;
import java.io.*;
@@ -506,7 +507,7 @@ public class BeanSession extends ContextSession {
}
if (to.isOptional() && (! (value instanceof Optional)))
- return (T) Optional.ofNullable(convertToMemberType(outer, value, to.getElementType()));
+ return (T) optional(convertToMemberType(outer, value, to.getElementType()));
Class<T> tc = to.getInnerClass();
@@ -1400,7 +1401,7 @@ public class BeanSession extends ContextSession {
}
/**
- * Creates either an {@link OMap} or {@link AMap} depending on whether the key type is
+ * Creates either an {@link OMap} or {@link LinkedHashMap} depending on whether the key type is
* String or something else.
*
* @param mapMeta The metadata of the map to create.
@@ -1408,7 +1409,7 @@ public class BeanSession extends ContextSession {
*/
protected Map newGenericMap(ClassMeta mapMeta) {
ClassMeta<?> k = mapMeta.getKeyType();
- return (k == null || k.isString()) ? new OMap(this) : new AMap();
+ return (k == null || k.isString()) ? new OMap(this) : map();
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ClassMeta.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ClassMeta.java
index 0e8a658..e1eec4f 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ClassMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ClassMeta.java
@@ -14,9 +14,9 @@ package org.apache.juneau;
import static org.apache.juneau.ClassMeta.ClassCategory.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConsumerUtils.*;
import static org.apache.juneau.internal.ObjectUtils.*;
-import static java.util.Optional.*;
import java.io.*;
import java.lang.annotation.*;
@@ -334,7 +334,7 @@ public final class ClassMeta<T> implements Type {
dictionaryName = null;
Throwable initException = null;
BeanMeta beanMeta = null;
- AList<ObjectSwap> swaps = AList.create();
+ List<ObjectSwap> swaps = list();
BuilderSwap builderSwap;
InvocationHandler invocationHandler = null;
BeanRegistry beanRegistry = null;
@@ -436,7 +436,7 @@ public final class ClassMeta<T> implements Type {
// parse() is used by the java logging Level class.
// forName() is used by Class and Charset
String[] fromStringMethodNames = {"fromString","fromValue","valueOf","parse","parseString","forName","forString"};
- fromStringMethod = ofNullable(
+ fromStringMethod = optional(
ci.getPublicMethod(
x -> x.isStatic()
&& x.isNotDeprecated()
@@ -447,7 +447,7 @@ public final class ClassMeta<T> implements Type {
.orElse(null);
// Find example() method if present.
- exampleMethod = ofNullable(
+ exampleMethod = optional(
ci.getPublicMethod(
x -> x.isStatic()
&& x.isNotDeprecated()
@@ -529,7 +529,7 @@ public final class ClassMeta<T> implements Type {
MarshalledFilter marshalledFilter = findMarshalledFilter(bc);
if (swaps != null)
- this.swaps.a(swaps);
+ addAll(this.swaps, swaps);
if (bc != null)
this.builderSwap = BuilderSwap.findSwapFromObjectClass(bc, c, bc.getBeanConstructorVisibility(), bc.getBeanMethodVisibility());
@@ -1704,7 +1704,7 @@ public final class ClassMeta<T> implements Type {
*/
public Optional<?> getOptionalDefault() {
if (isOptional())
- return Optional.ofNullable(getElementType().getOptionalDefault());
+ return optional(getElementType().getOptionalDefault());
return null;
}
@@ -2084,7 +2084,7 @@ public final class ClassMeta<T> implements Type {
if (o == null) {
if (beanContext == null)
return info.getAnnotation(BeanContext.DEFAULT, a);
- o = Optional.ofNullable(info.getAnnotation(beanContext, a));
+ o = optional(info.getAnnotation(beanContext, a));
annotationLastMap.put(a, o);
}
return o.orElse(null);
@@ -2129,7 +2129,7 @@ public final class ClassMeta<T> implements Type {
public <T2> Optional<T2> getProperty(String name, Function<ClassMeta<?>,T2> function) {
Optional<T2> t = (Optional<T2>) properties.get(name);
if (t == null) {
- t = Optional.ofNullable(function.apply(this));
+ t = optional(function.apply(this));
properties.put(name, t);
}
return t;
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Context.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Context.java
index 7ea0a3d..501b134 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Context.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Context.java
@@ -16,7 +16,6 @@ import static org.apache.juneau.internal.ClassUtils.*;
import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConsumerUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static java.util.Optional.*;
import static org.apache.juneau.collections.OMap.*;
import java.lang.annotation.Annotation;
@@ -301,7 +300,7 @@ public abstract class Context implements AnnotationProvider {
* @return The context class if it was specified.
*/
public Optional<Class<?>> getType() {
- return Optional.ofNullable(type);
+ return optional(type);
}
/**
@@ -846,7 +845,7 @@ public abstract class Context implements AnnotationProvider {
*/
protected Context(Builder builder) {
debug = builder.debug;
- annotations = ofNullable(builder.annotations).orElse(emptyList());
+ annotations = optional(builder.annotations).orElseGet(()->emptyList());
ReflectionMap.Builder<Annotation> rmb = ReflectionMap.create(Annotation.class);
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Value.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Value.java
index 291f9dc..6efc620 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Value.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Value.java
@@ -12,6 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
import java.lang.reflect.*;
import java.util.*;
import java.util.function.*;
@@ -90,7 +92,7 @@ public class Value<T> {
* @return The unwrapped type, or the same type if the type isn't {@link Value}.
*/
public static Type unwrap(Type t) {
- return Optional.ofNullable(getParameterType(t)).orElse(t);
+ return optional(getParameterType(t)).orElse(t);
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Version.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Version.java
index c094602..b991596 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Version.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/Version.java
@@ -12,12 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
-import static java.util.Optional.*;
-
/**
* Represents a version string such as <js>"1.2"</js> or <js>"1.2.3"</js>
*
@@ -91,7 +90,7 @@ public class Version implements Comparable<Version> {
public Optional<Integer> getPart(int index) {
if (index < 0 || parts.length <= index)
return empty();
- return ofNullable(parts[index]);
+ return optional(parts[index]);
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentArrayAssertion.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentArrayAssertion.java
index 9bd23a2..e089234 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentArrayAssertion.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentArrayAssertion.java
@@ -13,6 +13,7 @@
package org.apache.juneau.assertions;
import static org.apache.juneau.assertions.Assertions.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ObjectUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static java.util.Arrays.*;
@@ -435,11 +436,11 @@ public class FluentArrayAssertion<E,R> extends FluentObjectAssertion<E[],R> {
}
private List<E> toList() {
- return valueIsNull() ? null : AList.of(value());
+ return valueIsNull() ? null : list(value());
}
private List<E> toSortedList(Comparator<E> comparator) {
- return valueIsNull() ? null : AList.of(value()).sortWith(comparator);
+ return valueIsNull() ? null : sortedList(comparator, value());
}
private E at(int index) {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentListAssertion.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentListAssertion.java
index b2feec3..f83f3f0 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentListAssertion.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentListAssertion.java
@@ -14,6 +14,7 @@ package org.apache.juneau.assertions;
import static java.util.Arrays.*;
import static java.util.stream.Collectors.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.io.*;
@@ -362,6 +363,6 @@ public class FluentListAssertion<E,R> extends FluentCollectionAssertion<E,R> {
}
private List<E> toSortedList(Comparator<E> comparator) {
- return valueIsNull() ? null : AList.of(value()).sortWith(comparator);
+ return valueIsNull() ? null : sortedList(comparator, value());
}
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentMapAssertion.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentMapAssertion.java
index 471ff28..3063878 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentMapAssertion.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentMapAssertion.java
@@ -188,7 +188,7 @@ public class FluentMapAssertion<K,V,R> extends FluentObjectAssertion<Map<K,V>,R>
public FluentMapAssertion<K,V,R> extract(K...keys) {
if (valueIsNull())
return new FluentMapAssertion<>(this, null, returns());
- Map<K,V> m1 = value(), m2 = AMap.create();
+ Map<K,V> m1 = value(), m2 = CollectionUtils.map();
if (m1 != null)
for (K k : keys)
m2.put(k, m1.get(k));
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentObjectAssertion.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentObjectAssertion.java
index 58e9636..138879b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentObjectAssertion.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentObjectAssertion.java
@@ -14,6 +14,7 @@ package org.apache.juneau.assertions;
import static org.apache.juneau.assertions.Assertions.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.io.*;
@@ -602,7 +603,7 @@ public class FluentObjectAssertion<T,R> extends FluentAssertion<R> {
* @return The value wrapped in an {@link Optional}.
*/
protected Optional<T> opt() {
- return Optional.ofNullable(value);
+ return optional(value);
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/collections/Args.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/collections/Args.java
index 05b40fa..230ac66 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/collections/Args.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/collections/Args.java
@@ -17,8 +17,6 @@ import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
-import org.apache.juneau.internal.*;
-
/**
* Utility class to make it easier to work with command-line arguments pass in through a
* <c>main(String[] args)</c> method.
@@ -156,7 +154,7 @@ public final class Args extends OMap {
* @param args Arguments passed in as a raw command line.
*/
public Args(String args) {
- this(StringUtils.splitQuoted(args));
+ this(splitQuoted(args));
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicFileFinder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicFileFinder.java
index 6aa725e..886ac83 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicFileFinder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BasicFileFinder.java
@@ -13,6 +13,7 @@
package org.apache.juneau.cp;
import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.FileUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ObjectUtils.*;
@@ -105,12 +106,12 @@ public class BasicFileFinder implements FileFinder {
@Override /* FileFinder */
public final Optional<String> getString(String name) throws IOException {
- return Optional.ofNullable(read(find(name, null).orElse(null)));
+ return optional(read(find(name, null).orElse(null)));
}
@Override /* FileFinder */
public Optional<String> getString(String name, Locale locale) throws IOException {
- return Optional.ofNullable(read(find(name, locale).orElse(null)));
+ return optional(read(find(name, locale).orElse(null)));
}
//-----------------------------------------------------------------------------------------------------------------
@@ -135,7 +136,7 @@ public class BasicFileFinder implements FileFinder {
name = StringUtils.trimSlashesAndSpaces(name);
if (isInvalidPath(name))
- return Optional.empty();
+ return empty();
if (locale != null)
localizedFiles.putIfAbsent(locale, new ConcurrentHashMap<>());
@@ -168,10 +169,7 @@ public class BasicFileFinder implements FileFinder {
}
}
- if (lf == null)
- return Optional.empty();
-
- return Optional.of(lf.read());
+ return optional(lf == null ? null : lf.read());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanCreateMethodFinder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanCreateMethodFinder.java
index 1e4daee..80a5438 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanCreateMethodFinder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanCreateMethodFinder.java
@@ -13,6 +13,8 @@
package org.apache.juneau.cp;
import static org.apache.juneau.assertions.Assertions.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
import java.util.*;
import java.util.function.*;
@@ -210,7 +212,7 @@ public class BeanCreateMethodFinder<T> {
*/
public T run(Consumer<? super T> consumer) throws ExecutableException {
T t = run();
- Optional.ofNullable(t).ifPresent(consumer);
+ optional(t).ifPresent(consumer);
return t;
}
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanCreator.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanCreator.java
index 78036c1..5ecedd1 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanCreator.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanCreator.java
@@ -14,7 +14,7 @@ package org.apache.juneau.cp;
import static java.util.stream.Collectors.*;
import static org.apache.juneau.Visibility.*;
-import static java.util.Optional.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
import java.util.function.*;
@@ -244,7 +244,7 @@ public class BeanCreator<T> {
* @return A new bean wrapped in an {@link Optional}.
*/
public Optional<T> execute() {
- return ofNullable(silent().run());
+ return optional(silent().run());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanStore.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanStore.java
index df41354..2e1cfe7 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanStore.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/BeanStore.java
@@ -13,8 +13,8 @@
package org.apache.juneau.cp;
import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static java.util.Optional.*;
import static java.util.stream.Collectors.*;
import java.lang.annotation.*;
@@ -291,8 +291,8 @@ public class BeanStore {
* @param builder The builder containing the settings for this bean.
*/
protected BeanStore(Builder builder) {
- parent = ofNullable(builder.parent);
- outer = ofNullable(builder.outer);
+ parent = optional(builder.parent);
+ outer = optional(builder.outer);
readOnly = builder.readOnly;
threadSafe = builder.threadSafe;
lock = threadSafe ? new SimpleReadWriteLock() : SimpleReadWriteLock.NO_OP;
@@ -409,7 +409,7 @@ public class BeanStore {
try (SimpleLock x = lock.read()) {
BeanStoreEntry<T> e = (BeanStoreEntry<T>) unnamedEntries.get(beanType);
if (e != null)
- return ofNullable(e.get());
+ return optional(e.get());
if (parent.isPresent())
return parent.get().getBean(beanType);
return empty();
@@ -428,7 +428,7 @@ public class BeanStore {
try (SimpleLock x = lock.read()) {
BeanStoreEntry<T> e = (BeanStoreEntry<T>)entries.stream().filter(x2 -> x2.matches(beanType, name)).findFirst().orElse(null);
if (e != null)
- return ofNullable(e.get());
+ return optional(e.get());
if (parent.isPresent())
return parent.get().getBean(beanType, name);
return empty();
@@ -576,7 +576,7 @@ public class BeanStore {
*/
public String getMissingParams(ExecutableInfo executable) {
List<ParamInfo> params = executable.getParams();
- List<String> l = AList.create();
+ List<String> l = list();
loop: for (int i = 0; i < params.size(); i++) {
ParamInfo pi = params.get(i);
ClassInfo pt = pi.getParameterType();
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/ContextBeanCreator.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/ContextBeanCreator.java
index c680069..beccb81 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/ContextBeanCreator.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/ContextBeanCreator.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.cp;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -105,7 +105,7 @@ public class ContextBeanCreator<T> {
* @return An optional containing the builder if it exists.
*/
public <T2 extends Context.Builder> Optional<T2> builder(Class<T2> c) {
- return ofNullable(c.isInstance(builder) ? c.cast(builder) : null);
+ return optional(c.isInstance(builder) ? c.cast(builder) : null);
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/DefaultClassList.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/DefaultClassList.java
index cbdbed7..4bd504e 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/DefaultClassList.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/DefaultClassList.java
@@ -14,7 +14,7 @@ package org.apache.juneau.cp;
import static java.util.Arrays.*;
import static org.apache.juneau.assertions.Assertions.*;
-import static java.util.Optional.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
@@ -98,7 +98,7 @@ public class DefaultClassList {
assertArgNotNull("type", type);
for (Class<?> e : entries)
if (e != null && type.isAssignableFrom(e))
- return Optional.of((Class<? extends T>)e);
+ return optional((Class<? extends T>)e);
return empty();
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/DefaultSettingsMap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/DefaultSettingsMap.java
index 8f37f4f..4d03d66 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/DefaultSettingsMap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/DefaultSettingsMap.java
@@ -12,7 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.cp;
-import static java.util.Optional.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
@@ -88,7 +88,7 @@ public class DefaultSettingsMap {
*/
@SuppressWarnings("unchecked")
public <T> Optional<T> get(Class<T> type, String name) {
- return ofNullable((T)entries.get(name));
+ return optional((T)entries.get(name));
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/FileFinder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/FileFinder.java
index 64a9d5c..707a5ae 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/FileFinder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/cp/FileFinder.java
@@ -13,6 +13,7 @@
package org.apache.juneau.cp;
import static org.apache.juneau.assertions.Assertions.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.io.*;
import java.nio.file.*;
@@ -136,8 +137,8 @@ public interface FileFinder {
super(BasicFileFinder.class, beanStore);
roots = new LinkedHashSet<>();
cachingLimit = -1;
- include = AList.of(Pattern.compile(".*"));
- exclude = AList.create();
+ include = list(Pattern.compile(".*"));
+ exclude = list();
}
@Override /* BeanBuilder */
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/encoders/EncoderSet.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/encoders/EncoderSet.java
index 911a2ba..ffdf693 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/encoders/EncoderSet.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/encoders/EncoderSet.java
@@ -14,6 +14,7 @@ package org.apache.juneau.encoders;
import static java.util.Arrays.*;
import static org.apache.juneau.http.HttpHeaders.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import static java.util.stream.Collectors.*;
import static java.util.Collections.*;
@@ -131,7 +132,7 @@ public final class EncoderSet {
*/
protected Builder(BeanStore beanStore) {
super(EncoderSet.class, beanStore);
- entries = AList.create();
+ entries = list();
}
/**
@@ -141,7 +142,7 @@ public final class EncoderSet {
*/
protected Builder(Builder copyFrom) {
super(copyFrom);
- entries = AList.of(copyFrom.entries);
+ entries = copyOf(copyFrom.entries);
}
@Override /* BeanBuilder */
@@ -173,7 +174,7 @@ public final class EncoderSet {
* @throws IllegalArgumentException if any class does not extend from {@link Encoder}.
*/
public Builder add(Class<?>...values) {
- List<Object> l = AList.create();
+ List<Object> l = list();
for (Class<?> v : values)
if (v.getSimpleName().equals("NoInherit"))
clear();
@@ -203,7 +204,7 @@ public final class EncoderSet {
* @throws IllegalArgumentException if any class does not extend from {@link Encoder}.
*/
public Builder set(Class<?>...values) {
- List<Object> l = AList.create();
+ List<Object> l = list();
for (Class<?> v : values) {
if (v.getSimpleName().equals("Inherit")) {
l.addAll(entries);
@@ -319,8 +320,8 @@ public final class EncoderSet {
protected EncoderSet(Builder builder) {
entries = builder.entries.stream().map(x -> instantiate(builder.beanStore(), x)).toArray(Encoder[]::new);
- List<String> lc = AList.create();
- List<Encoder> l = AList.create();
+ List<String> lc = list();
+ List<Encoder> l = list();
for (Encoder e : entries) {
for (String c: e.getCodings()) {
lc.add(c);
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializer.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializer.java
index 3755d94..8d71f46 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializer.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializer.java
@@ -12,11 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.html;
-import static java.util.Optional.*;
import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static java.util.Collections.*;
-
import java.lang.annotation.*;
import java.lang.reflect.*;
import java.nio.charset.*;
@@ -86,6 +84,8 @@ public class HtmlDocSerializer extends HtmlStrippedDocSerializer {
// Static
//-------------------------------------------------------------------------------------------------------------------
+ private static final String[] EMPTY_ARRAY = new String[0];
+
/** Default serializer, all default settings. */
public static final HtmlDocSerializer DEFAULT = new HtmlDocSerializer(create());
@@ -1643,20 +1643,20 @@ public class HtmlDocSerializer extends HtmlStrippedDocSerializer {
*/
public HtmlDocSerializer(Builder builder) {
super(builder);
- style = ofNullable(builder.style).map(x -> toArray(x)).orElse(new String[0]);
- stylesheet = ofNullable(builder.stylesheet).map(x -> toArray(x)).orElse(new String[0]);
- script = ofNullable(builder.script).map(x -> toArray(x)).orElse(new String[0]);
- head = ofNullable(builder.head).map(x -> toArray(x)).orElse(new String[0]);
- header = ofNullable(builder.header).map(x -> toArray(x)).orElse(new String[0]);
- nav = ofNullable(builder.nav).map(x -> toArray(x)).orElse(new String[0]);
- aside = ofNullable(builder.aside).map(x -> toArray(x)).orElse(new String[0]);
- footer = ofNullable(builder.footer).map(x -> toArray(x)).orElse(new String[0]);
- navlinks = ofNullable(builder.navlinks).map(x -> toArray(x)).orElse(new String[0]);
+ style = optional(builder.style).map(x -> toArray(x)).orElse(EMPTY_ARRAY);
+ stylesheet = optional(builder.stylesheet).map(x -> toArray(x)).orElse(EMPTY_ARRAY);
+ script = optional(builder.script).map(x -> toArray(x)).orElse(EMPTY_ARRAY);
+ head = optional(builder.head).map(x -> toArray(x)).orElse(EMPTY_ARRAY);
+ header = optional(builder.header).map(x -> toArray(x)).orElse(EMPTY_ARRAY);
+ nav = optional(builder.nav).map(x -> toArray(x)).orElse(EMPTY_ARRAY);
+ aside = optional(builder.aside).map(x -> toArray(x)).orElse(EMPTY_ARRAY);
+ footer = optional(builder.footer).map(x -> toArray(x)).orElse(EMPTY_ARRAY);
+ navlinks = optional(builder.navlinks).map(x -> toArray(x)).orElse(EMPTY_ARRAY);
asideFloat = builder.asideFloat;
noResultsMessage = builder.noResultsMessage;
nowrap = builder.nowrap;
template = builder.template;
- widgets = builder.widgets == null ? emptyList() : new ArrayList<>(builder.widgets);
+ widgets = builder.widgets == null ? emptyList() : copyOf(builder.widgets);
templateBean = newInstance(template);
widgetMap = new HtmlWidgetMap();
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserSession.java
index 67cbfef..c511356 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserSession.java
@@ -14,6 +14,7 @@ package org.apache.juneau.html;
import static javax.xml.stream.XMLStreamConstants.*;
import static org.apache.juneau.html.HtmlTag.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.io.IOException;
@@ -53,7 +54,7 @@ public final class HtmlParserSession extends XmlParserSession {
// Static
//-------------------------------------------------------------------------------------------------------------------
- private static final Set<String> whitespaceElements = ASet.of("br","bs","sp","ff");
+ private static final Set<String> whitespaceElements = set("br","bs","sp","ff");
/**
* Creates a new builder for this object.
@@ -258,7 +259,7 @@ public final class HtmlParserSession extends XmlParserSession {
sType = eType;
if (sType.isOptional())
- return (T)Optional.ofNullable(parseAnything(eType.getElementType(), r, outer, isRoot, pMeta));
+ return (T)optional(parseAnything(eType.getElementType(), r, outer, isRoot, pMeta));
setCurrentClass(sType);
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlWidgetMap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlWidgetMap.java
index 78b9236..5985c01 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlWidgetMap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlWidgetMap.java
@@ -12,7 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.html;
-import org.apache.juneau.internal.*;
+import java.util.*;
/**
* A collection of {@link HtmlWidget} objects keyed by their names.
@@ -25,7 +25,7 @@ import org.apache.juneau.internal.*;
*
* @serial exclude
*/
-public class HtmlWidgetMap extends AMap<String,HtmlWidget> {
+public class HtmlWidgetMap extends LinkedHashMap<String,HtmlWidget> {
private static final long serialVersionUID = 1L;
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpMethod.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpMethod.java
index 3ac8b04..93d1afd 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpMethod.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpMethod.java
@@ -12,12 +12,11 @@
// ***************************************************************************************************************************
package org.apache.juneau.http;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
-import org.apache.juneau.internal.*;
-
/**
* Represents valid HTTP 1.1 method name static strings per the RFC 2616 spec.
*
@@ -65,7 +64,7 @@ public class HttpMethod {
/** Represents any HTTP method. */
public static final String ANY = "*";
- private static final Set<String> NO_BODY_METHODS = ASet.unmodifiable("GET","HEAD","DELETE","CONNECT","OPTIONS","TRACE");
+ private static final Set<String> NO_BODY_METHODS = unmodifiable(set("GET","HEAD","DELETE","CONNECT","OPTIONS","TRACE"));
/**
* Returns <jk>true</jk> if specified http method has content.
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpParts.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpParts.java
index b8b0cab..18b0c3c 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpParts.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpParts.java
@@ -13,6 +13,7 @@
package org.apache.juneau.http;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.time.*;
@@ -476,7 +477,7 @@ public class HttpParts {
case HEADER: return type.getProperty("HttpPart.header.name", HEADER_NAME_FUNCTION);
case PATH: return type.getProperty("HttpPart.path.name", PATH_NAME_FUNCTION);
case QUERY: return type.getProperty("HttpPart.query.name", QUERY_NAME_FUNCTION);
- default: return Optional.empty();
+ default: return empty();
}
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicBooleanHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicBooleanHeader.java
index e5288e7..6ca007f 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicBooleanHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicBooleanHeader.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -157,9 +157,7 @@ public class BasicBooleanHeader extends BasicHeader {
* @return The header value as a boolean.
*/
public Optional<Boolean> asBoolean() {
- if (supplier != null)
- return ofNullable(supplier.get());
- return ofNullable(value);
+ return optional(supplier == null ? value : supplier.get());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicCsvArrayHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicCsvArrayHeader.java
index 6eeb2f2..151825d 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicCsvArrayHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicCsvArrayHeader.java
@@ -12,9 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static java.util.Collections.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -156,9 +156,9 @@ public class BasicCsvArrayHeader extends BasicHeader {
*/
public Optional<List<String>> asList() {
if (value != null)
- return ofNullable(value);
+ return optional(value);
if (supplier != null)
- return ofNullable(supplier.get());
+ return optional(supplier.get());
return empty();
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicDateHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicDateHeader.java
index b5ec84a..a929880 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicDateHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicDateHeader.java
@@ -15,9 +15,8 @@ package org.apache.juneau.http.header;
import static java.time.format.DateTimeFormatter.*;
import static java.time.temporal.ChronoUnit.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
-
import java.time.*;
import java.util.*;
import java.util.function.*;
@@ -158,9 +157,7 @@ public class BasicDateHeader extends BasicHeader {
* @return This header value as a {@link ZonedDateTime}, or {@link Optional#empty()} if the header could not be parsed.
*/
public Optional<ZonedDateTime> asZonedDateTime() {
- if (supplier != null)
- return ofNullable(supplier.get());
- return ofNullable(value);
+ return optional(supplier == null ? value : supplier.get());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicEntityTagArrayHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicEntityTagArrayHeader.java
index f4e4c3f..86535b2 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicEntityTagArrayHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicEntityTagArrayHeader.java
@@ -12,9 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.stream.Collectors.*;
-import static java.util.Optional.*;
import static java.util.Collections.*;
import java.util.*;
@@ -156,9 +155,7 @@ public class BasicEntityTagArrayHeader extends BasicHeader {
* @return this header value as an array of {@link EntityTag} objects, or {@link Optional#empty()} if the value was <jk>null</jk>..
*/
public Optional<List<EntityTag>> asEntityTags() {
- if (supplier != null)
- return ofNullable(supplier.get());
- return ofNullable(value);
+ return optional(supplier == null ? value : supplier.get());
}
private static String serialize(List<EntityTag> value) {
@@ -166,6 +163,10 @@ public class BasicEntityTagArrayHeader extends BasicHeader {
}
private List<EntityTag> parse(String value) {
- return value == null ? null : Arrays.asList(split(value, ',')).stream().map(x -> EntityTag.of(x)).collect(toList());
+ if (value == null)
+ return null;
+ List<EntityTag> list = new ArrayList<>();
+ split(value, x -> list.add(EntityTag.of(x)));
+ return list;
}
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicEntityTagHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicEntityTagHeader.java
index d6245da..2f97106 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicEntityTagHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicEntityTagHeader.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -154,9 +154,7 @@ public class BasicEntityTagHeader extends BasicHeader {
* @return This header as an {@link EntityTag}, or {@link Optional#empty()} if the value is <jk>null</jk>.
*/
public Optional<EntityTag> asEntityTag() {
- if (supplier != null)
- return ofNullable(supplier.get());
- return ofNullable(value);
+ return optional(supplier == null ? value : supplier.get());
}
private static String serialize(EntityTag value) {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicHeader.java
index 9a88de6..76d8a51 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicHeader.java
@@ -14,6 +14,7 @@ package org.apache.juneau.http.header;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.StringUtils.isEmpty;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ObjectUtils.*;
import java.io.*;
import java.util.*;
@@ -202,7 +203,7 @@ public class BasicHeader implements Header, Cloneable, Serializable {
* @return The value of this header as a string, or {@link Optional#empty()} if the value is <jk>null</jk>
*/
public Optional<String> asString() {
- return Optional.ofNullable(getValue());
+ return optional(getValue());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicIntegerHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicIntegerHeader.java
index 602b6b8..1bcdd67 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicIntegerHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicIntegerHeader.java
@@ -12,9 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -158,9 +158,7 @@ public class BasicIntegerHeader extends BasicHeader {
* @return The header value as an integer, or {@link Optional#empty()} if the value is <jk>null</jk>.
*/
public Optional<Integer> asInteger() {
- if (supplier != null)
- return ofNullable(supplier.get());
- return ofNullable(value);
+ return optional(supplier == null ? value : supplier.get());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicLongHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicLongHeader.java
index c759c52..5610918 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicLongHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicLongHeader.java
@@ -13,8 +13,8 @@
package org.apache.juneau.http.header;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -159,9 +159,7 @@ public class BasicLongHeader extends BasicHeader {
* @return The header value as a long, or {@link Optional#empty()} if the value is <jk>null</jk>
*/
public Optional<Long> asLong() {
- if (supplier != null)
- return ofNullable(supplier.get());
- return ofNullable(value);
+ return optional(supplier == null ? value : supplier.get());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicMediaRangeArrayHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicMediaRangeArrayHeader.java
index bbe6578..44bc4b9 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicMediaRangeArrayHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicMediaRangeArrayHeader.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -129,9 +129,7 @@ public class BasicMediaRangeArrayHeader extends BasicStringHeader {
* @return This header as a {@link MediaRanges} object, or {@link Optional#empty()} if the value is <jk>null</jk>
*/
public Optional<MediaRanges> asMediaRanges() {
- if (supplier != null)
- return ofNullable(supplier.get());
- return ofNullable(value);
+ return optional(supplier == null ? value : supplier.get());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicMediaTypeHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicMediaTypeHeader.java
index e8b9dd6..c30a569 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicMediaTypeHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicMediaTypeHeader.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -139,9 +139,7 @@ public class BasicMediaTypeHeader extends BasicStringHeader {
* @return This header as a {@link MediaType} object, or {@link Optional#empty()} if the value is <jk>null</jk>
*/
public Optional<MediaType> asMediaType() {
- if (supplier != null)
- return ofNullable(supplier.get());
- return ofNullable(value);
+ return optional(supplier == null ? value : supplier.get());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicStringHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicStringHeader.java
index 1caf095..39cf6bf 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicStringHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicStringHeader.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -136,7 +136,7 @@ public class BasicStringHeader extends BasicHeader {
@Override /* BasicHeader */
public Optional<String> asString() {
- return ofNullable(getValue());
+ return optional(getValue());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicStringRangeArrayHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicStringRangeArrayHeader.java
index d5cf18b..92252ca 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicStringRangeArrayHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicStringRangeArrayHeader.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -155,9 +155,7 @@ public class BasicStringRangeArrayHeader extends BasicHeader {
* @return An unmodifiable list of type ranges, or {@link Optional#empty()} if the value is <jk>null</jk>
*/
public Optional<StringRanges> asRanges() {
- if (supplier != null)
- return ofNullable(supplier.get());
- return ofNullable(value);
+ return optional(supplier == null ? value : supplier.get());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicUriHeader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicUriHeader.java
index 6a25e7d..c22395c 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicUriHeader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/BasicUriHeader.java
@@ -13,8 +13,8 @@
package org.apache.juneau.http.header;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.net.*;
import java.util.*;
@@ -154,9 +154,7 @@ public class BasicUriHeader extends BasicHeader {
* @return This header as a {@link URI}, or {@link Optional#empty()} if the value is <jk>null</jk>
*/
public Optional<URI> asURI() {
- if (supplier != null)
- return ofNullable(supplier.get());
- return ofNullable(value);
+ return optional(supplier == null ? value : supplier.get());
}
private static String serialize(URI value) {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/ClientVersion.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/ClientVersion.java
index 87baef5..933fdba 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/ClientVersion.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/ClientVersion.java
@@ -12,7 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
-import static java.util.Optional.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -160,7 +160,7 @@ public class ClientVersion extends BasicStringHeader {
* @return The header value as a {@link Version} object, or {@link Optional#empty()} if the value is <jk>null</jk>.
*/
public Optional<Version> asVersion() {
- return ofNullable(value);
+ return optional(value);
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/HeaderList.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/HeaderList.java
index 634be42..762cf56 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/HeaderList.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/HeaderList.java
@@ -15,6 +15,7 @@ package org.apache.juneau.http.header;
import static org.apache.juneau.assertions.Assertions.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConsumerUtils.*;
import java.util.*;
@@ -1132,16 +1133,16 @@ public class HeaderList {
for (int i = 0; i < entries.size(); i++) {
Header x = entries.get(i);
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
if (defaultEntries != null) {
for (int i = 0; i < defaultEntries.size(); i++) {
Header x = defaultEntries.get(i);
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
}
- return Optional.empty();
+ return empty();
}
/**
@@ -1157,16 +1158,16 @@ public class HeaderList {
for (int i = entries.size() - 1; i >= 0; i--) {
Header x = entries.get(i);
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
if (defaultEntries != null) {
for (int i = defaultEntries.size() - 1; i >= 0; i--) {
Header x = defaultEntries.get(i);
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
}
- return Optional.empty();
+ return empty();
}
// <FluentSetters>
@@ -1306,10 +1307,10 @@ public class HeaderList {
}
if (first == null)
- return Optional.empty();
+ return empty();
if (rest == null)
- return Optional.of(first);
+ return optional(first);
CharArrayBuffer sb = new CharArrayBuffer(128);
sb.append(first.getValue());
@@ -1318,7 +1319,7 @@ public class HeaderList {
sb.append(rest.get(i).getValue());
}
- return Optional.of(new BasicHeader(name, sb.toString()));
+ return optional(new BasicHeader(name, sb.toString()));
}
/**
@@ -1365,10 +1366,10 @@ public class HeaderList {
}
if (first == null)
- return Optional.empty();
+ return empty();
if (rest == null)
- return Optional.of(HeaderBeanMeta.of(type).construct(name, first.getValue()));
+ return optional(HeaderBeanMeta.of(type).construct(name, first.getValue()));
CharArrayBuffer sb = new CharArrayBuffer(128);
sb.append(first.getValue());
@@ -1377,7 +1378,7 @@ public class HeaderList {
sb.append(rest.get(i).getValue());
}
- return Optional.of(HeaderBeanMeta.of(type).construct(name, sb.toString()));
+ return optional(HeaderBeanMeta.of(type).construct(name, sb.toString()));
}
/**
@@ -1412,7 +1413,7 @@ public class HeaderList {
* Header name comparison is case insensitive.
* Headers with null values are ignored.
* Each call creates a new array not backed by this list.
- *
+ *
* <p>
* As a general rule, it's more efficient to use the other methods with consumers to
* get headers.
@@ -1440,7 +1441,7 @@ public class HeaderList {
* <p>
* As a general rule, it's more efficient to use the other methods with consumers to
* get headers.
- *
+ *
* @return An array of all the headers in this list, never <jk>null</jk>.
*/
public Header[] getAll() {
@@ -1469,9 +1470,9 @@ public class HeaderList {
for (int i = 0; i < entries.length; i++) {
Header x = entries[i];
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
- return Optional.empty();
+ return empty();
}
/**
@@ -1487,9 +1488,9 @@ public class HeaderList {
for (int i = entries.length - 1; i >= 0; i--) {
Header x = entries[i];
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
- return Optional.empty();
+ return empty();
}
/**
@@ -1516,7 +1517,7 @@ public class HeaderList {
/**
* Returns all the string values for all headers with the specified name.
- *
+ *
* @param name The header name.
* @return An array containing all values. Never <jk>null</jk>.
*/
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/IfRange.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/IfRange.java
index 85ce412..44a9f23 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/IfRange.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/IfRange.java
@@ -15,8 +15,8 @@ package org.apache.juneau.http.header;
import static java.time.format.DateTimeFormatter.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ClassUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
-import static java.util.Optional.*;
import java.time.*;
import java.util.*;
@@ -225,9 +225,9 @@ public class IfRange extends BasicDateHeader {
public Optional<EntityTag> asEntityTag() {
if (supplier != null) {
Object o = supplier.get();
- return ofNullable(o instanceof EntityTag ? (EntityTag)o : null);
+ return optional(o instanceof EntityTag ? (EntityTag)o : null);
}
- return ofNullable(value);
+ return optional(value);
}
private static boolean isEtag(String s) {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/MediaRange.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/MediaRange.java
index 06362d8..3ed1d7e 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/MediaRange.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/MediaRange.java
@@ -13,11 +13,11 @@
package org.apache.juneau.http.header;
import static org.apache.juneau.http.HttpParts.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
import org.apache.http.*;
-import org.apache.juneau.internal.*;
/**
@@ -48,7 +48,7 @@ public class MediaRange extends MediaType {
// The media type consists of everything up to the q parameter.
// The q parameter and stuff after is part of the range.
- List<NameValuePair> extensions = AList.create();
+ List<NameValuePair> extensions = list();
boolean foundQ = false;
for (NameValuePair p : e.getParameters()) {
if (p.getName().equals("q")) {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/MediaRanges.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/MediaRanges.java
index c8ccf55..f80e08c 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/MediaRanges.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/MediaRanges.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -94,7 +95,7 @@ public class MediaRanges {
*/
public MediaRanges(HeaderElement[] e) {
- List<MediaRange> l = AList.create();
+ List<MediaRange> l = list();
for (HeaderElement e2 : e)
l.add(new MediaRange(e2));
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/RetryAfter.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/RetryAfter.java
index 4b76a37..6dd5f8b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/RetryAfter.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/RetryAfter.java
@@ -12,8 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
-import static java.time.format.DateTimeFormatter.*;import static java.util.Optional.*;
+import static java.time.format.DateTimeFormatter.*;
import static org.apache.juneau.internal.ClassUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
@@ -220,8 +221,8 @@ public class RetryAfter extends BasicDateHeader {
public Optional<Integer> asInteger() {
if (supplier != null) {
Object o = supplier.get();
- return ofNullable(o instanceof Integer ? (Integer)o : null);
+ return optional(o instanceof Integer ? (Integer)o : null);
}
- return ofNullable(value);
+ return optional(value);
}
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/StringRange.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/StringRange.java
index 538c1af..6c3fc8c 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/StringRange.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/StringRange.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ObjectUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.http.HttpParts.*;
@@ -21,7 +22,6 @@ import java.util.*;
import org.apache.http.*;
import org.apache.http.message.*;
import org.apache.juneau.annotation.*;
-import org.apache.juneau.internal.*;
/**
* Represents a single value in a comma-delimited header value that optionally contains a quality metric for
@@ -69,7 +69,7 @@ public class StringRange {
// The media type consists of everything up to the q parameter.
// The q parameter and stuff after is part of the range.
- List<NameValuePair> extensions = AList.create();
+ List<NameValuePair> extensions = list();
for (NameValuePair p : e.getParameters()) {
if (p.getName().equals("q")) {
qValue = Float.parseFloat(p.getValue());
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/StringRanges.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/StringRanges.java
index 7ac59e8..88ec4e6 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/StringRanges.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/StringRanges.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.header;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -100,7 +101,7 @@ public class StringRanges {
*/
public StringRanges(HeaderElement[] e) {
- List<StringRange> l = AList.create();
+ List<StringRange> l = list();
for (HeaderElement e2 : e)
l.add(new StringRange(e2));
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/Thrown.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/Thrown.java
index 129eb71..0644d21 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/Thrown.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/header/Thrown.java
@@ -14,8 +14,8 @@ package org.apache.juneau.http.header;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ClassUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static java.util.Collections.*;
-import static java.util.Optional.*;
import static java.util.stream.Collectors.*;
import java.util.*;
@@ -111,9 +111,7 @@ public class Thrown extends BasicCsvArrayHeader {
public Thrown(String value) {
super(NAME, value);
List<Part> l = new ArrayList<>();
- if (value != null)
- for (String s : split(value))
- l.add(new Part(s));
+ split(value, x -> l.add(new Part(x)));
this.value = value == null ? null : unmodifiableList(l);
}
@@ -134,7 +132,7 @@ public class Thrown extends BasicCsvArrayHeader {
* @return The class name portion of the header, or <jk>null</jk> if not there.
*/
public Optional<List<Part>> asParts() {
- return ofNullable(value);
+ return optional(value);
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicBooleanPart.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicBooleanPart.java
index 9f5803d..4fabfcb 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicBooleanPart.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicBooleanPart.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.part;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -107,7 +107,7 @@ public class BasicBooleanPart extends BasicPart {
* @return The part value as a boolean.
*/
public Optional<Boolean> asBoolean() {
- return ofNullable(getParsedValue());
+ return optional(getParsedValue());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicCsvArrayPart.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicCsvArrayPart.java
index 3a23771..045b9bc 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicCsvArrayPart.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicCsvArrayPart.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.part;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.lang.reflect.*;
import java.util.*;
@@ -21,7 +21,6 @@ import java.util.function.*;
import org.apache.http.*;
import org.apache.juneau.assertions.*;
-import org.apache.juneau.internal.*;
/**
* A {@link NameValuePair} that consists of a comma-delimited list of string values.
@@ -159,7 +158,7 @@ public class BasicCsvArrayPart extends BasicPart {
*/
public Optional<List<String>> asList() {
List<String> l = getParsedValue();
- return ofNullable(l == null ? null : Collections.unmodifiableList(l));
+ return optional(unmodifiable(l));
}
private List<String> getParsedValue() {
@@ -170,7 +169,7 @@ public class BasicCsvArrayPart extends BasicPart {
if (o == null)
return null;
- AList<String> l = AList.create();
+ List<String> l = list();
if (o instanceof Collection) {
for (Object o2 : (Collection<?>)o)
l.add(stringify(o2));
@@ -178,9 +177,8 @@ public class BasicCsvArrayPart extends BasicPart {
for (int i = 0; i < Array.getLength(o); i++)
l.add(stringify(Array.get(o, i)));
} else {
- for (String s : split(o.toString()))
- l.add(s);
+ split(o.toString(), x -> l.add(x));
}
- return l.unmodifiable();
+ return unmodifiable(l);
}
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicDatePart.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicDatePart.java
index a42563e..02cb131 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicDatePart.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicDatePart.java
@@ -14,8 +14,8 @@ package org.apache.juneau.http.part;
import static java.time.format.DateTimeFormatter.*;
import static java.time.temporal.ChronoUnit.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.time.*;
import java.util.*;
@@ -118,7 +118,7 @@ public class BasicDatePart extends BasicPart {
*/
public Optional<Calendar> asCalendar() {
ZonedDateTime zdt = getParsedValue();
- return ofNullable(zdt == null ? null : GregorianCalendar.from(zdt));
+ return optional(zdt).map(GregorianCalendar::from);
}
/**
@@ -128,7 +128,7 @@ public class BasicDatePart extends BasicPart {
*/
public Optional<java.util.Date> asDate() {
Calendar c = asCalendar().orElse(null);
- return ofNullable(c == null ? null : c.getTime());
+ return optional(c).map(Calendar::getTime);
}
/**
@@ -137,7 +137,7 @@ public class BasicDatePart extends BasicPart {
* @return This part value as a {@link ZonedDateTime}, or {@link Optional#empty()} if the part could not be parsed.
*/
public Optional<ZonedDateTime> asZonedDateTime() {
- return ofNullable(getParsedValue());
+ return optional(getParsedValue());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicIntegerPart.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicIntegerPart.java
index d2169d4..4ad86cd 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicIntegerPart.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicIntegerPart.java
@@ -13,8 +13,8 @@
package org.apache.juneau.http.part;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -108,7 +108,7 @@ public class BasicIntegerPart extends BasicPart {
* @return The part value as an integer, or {@link Optional#empty()} if the value is <jk>null</jk>.
*/
public Optional<Integer> asInteger() {
- return ofNullable(getParsedValue());
+ return optional(getParsedValue());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicLongPart.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicLongPart.java
index aa948b6..3833e02 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicLongPart.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicLongPart.java
@@ -13,8 +13,8 @@
package org.apache.juneau.http.part;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.util.*;
import java.util.function.*;
@@ -108,7 +108,7 @@ public class BasicLongPart extends BasicPart {
* @return The part value as a long, or {@link Optional#empty()} if the value is <jk>null</jk>
*/
public Optional<Long> asLong() {
- return ofNullable(getParsedValue());
+ return optional(getParsedValue());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicStringPart.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicStringPart.java
index 983f8a7..2b46973 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicStringPart.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicStringPart.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.part;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.util.*;
@@ -112,7 +113,7 @@ public class BasicStringPart extends BasicPart {
* @return The value of this part as a string, or {@link Optional#empty()} if the value is <jk>null</jk>
*/
public Optional<String> asString() {
- return Optional.ofNullable(getParsedValue());
+ return optional(getParsedValue());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicUriPart.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicUriPart.java
index c66110f..169194b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicUriPart.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/BasicUriPart.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.part;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
-import static java.util.Optional.*;
import java.net.*;
import java.util.*;
@@ -98,7 +98,7 @@ public class BasicUriPart extends BasicPart {
* @return This header as a {@link URI}, or {@link Optional#empty()} if the value is <jk>null</jk>
*/
public Optional<URI> asURI() {
- return ofNullable(getParsedValue());
+ return optional(getParsedValue());
}
private URI getParsedValue() {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/PartList.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/PartList.java
index 7c10152..d21bb2a 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/PartList.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/part/PartList.java
@@ -15,6 +15,7 @@ package org.apache.juneau.http.part;
import static org.apache.juneau.assertions.Assertions.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConsumerUtils.*;
import java.util.*;
@@ -1116,16 +1117,16 @@ public class PartList {
for (int i = 0; i < entries.size(); i++) {
NameValuePair x = entries.get(i);
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
if (defaultEntries != null) {
for (int i = 0; i < defaultEntries.size(); i ++) {
NameValuePair x = defaultEntries.get(i);
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
}
- return Optional.empty();
+ return empty();
}
/**
@@ -1138,16 +1139,16 @@ public class PartList {
for (int i = entries.size() - 1; i >= 0; i--) {
NameValuePair x = entries.get(i);
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
if (defaultEntries != null) {
for (int i = defaultEntries.size() - 1; i >= 0; i--) {
NameValuePair x = defaultEntries.get(i);
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
}
- return Optional.empty();
+ return empty();
}
// <FluentSetters>
@@ -1287,10 +1288,10 @@ public class PartList {
}
if (first == null)
- return Optional.empty();
+ return empty();
if (rest == null)
- return Optional.of(first);
+ return optional(first);
CharArrayBuffer sb = new CharArrayBuffer(128);
sb.append(first.getValue());
@@ -1299,7 +1300,7 @@ public class PartList {
sb.append(rest.get(i).getValue());
}
- return Optional.of(new BasicPart(name, sb.toString()));
+ return optional(new BasicPart(name, sb.toString()));
}
/**
@@ -1346,10 +1347,10 @@ public class PartList {
}
if (first == null)
- return Optional.empty();
+ return empty();
if (rest == null)
- return Optional.of(PartBeanMeta.of(type).construct(name, first.getValue()));
+ return optional(PartBeanMeta.of(type).construct(name, first.getValue()));
CharArrayBuffer sb = new CharArrayBuffer(128);
sb.append(first.getValue());
@@ -1358,7 +1359,7 @@ public class PartList {
sb.append(rest.get(i).getValue());
}
- return Optional.of(PartBeanMeta.of(type).construct(name, sb.toString()));
+ return optional(PartBeanMeta.of(type).construct(name, sb.toString()));
}
/**
@@ -1391,7 +1392,7 @@ public class PartList {
* The returned array maintains the relative order in which the parts were added.
* Each call creates a new array not backed by this list.
*
- * @return
+ * @return
* An array of all the parts in this list, or an empty array if no parts are present.
*/
public NameValuePair[] getAll() {
@@ -1440,9 +1441,9 @@ public class PartList {
for (int i = 0; i < entries.length; i++) {
NameValuePair x = entries[i];
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
- return Optional.empty();
+ return empty();
}
/**
@@ -1458,9 +1459,9 @@ public class PartList {
for (int i = entries.length - 1; i >= 0; i--) {
NameValuePair x = entries[i];
if (eq(x.getName(), name))
- return Optional.of(x);
+ return optional(x);
}
- return Optional.empty();
+ return empty();
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/remote/RrpcInterfaceMeta.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/remote/RrpcInterfaceMeta.java
index 8c0bd4c..9e48ce4 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/remote/RrpcInterfaceMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/remote/RrpcInterfaceMeta.java
@@ -12,12 +12,12 @@
// ***************************************************************************************************************************
package org.apache.juneau.http.remote;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.lang.reflect.*;
import java.util.*;
import org.apache.juneau.*;
-import org.apache.juneau.internal.*;
import org.apache.juneau.reflect.*;
/**
@@ -55,18 +55,18 @@ public class RrpcInterfaceMeta {
ci.forEachAnnotation(Remote.class, x -> isNotEmpty(x.path()), x -> path.set(trimSlashes(x.path())));
- AMap<Method,RrpcInterfaceMethodMeta> methods = AMap.create();
+ Map<Method,RrpcInterfaceMethodMeta> methods = map();
ci.forEachPublicMethod(
x -> true,
x -> methods.put(x.inner(), new RrpcInterfaceMethodMeta(uri, x.inner()))
);
- AMap<String,RrpcInterfaceMethodMeta> methodsByPath = AMap.create();
+ Map<String,RrpcInterfaceMethodMeta> methodsByPath = map();
for (RrpcInterfaceMethodMeta rmm : methods.values())
methodsByPath.put(rmm.getPath(), rmm);
- this.methods = methods.unmodifiable();
- this.methodsByPath = methodsByPath.unmodifiable();
+ this.methods = unmodifiable(methods);
+ this.methodsByPath = unmodifiable(methodsByPath);
this.path = path.get();
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/HttpPartSchema.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/HttpPartSchema.java
index 8d95ece..6c682b4 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/HttpPartSchema.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/HttpPartSchema.java
@@ -18,6 +18,7 @@ import static org.apache.juneau.httppart.HttpPartFormat.*;
import static org.apache.juneau.internal.ClassUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.lang.annotation.*;
import java.lang.reflect.*;
@@ -2772,7 +2773,7 @@ public class HttpPartSchema {
* @return This object.
*/
public Builder _enum(String...values) {
- return _enum(ASet.of(values));
+ return _enum(set(values));
}
/**
@@ -3291,61 +3292,62 @@ public class HttpPartSchema {
// Validation.
List<String> errors = new ArrayList<>();
- AList<String> notAllowed = AList.create();
+ ListBuilder<String> notAllowed = listBuilder(String.class);
boolean invalidFormat = false;
switch (type) {
case STRING: {
- notAllowed.appendIf(properties != null, "properties");
- notAllowed.appendIf(additionalProperties != null, "additionalProperties");
- notAllowed.appendIf(exclusiveMaximum, "exclusiveMaximum");
- notAllowed.appendIf(exclusiveMinimum, "exclusiveMinimum");
- notAllowed.appendIf(uniqueItems, "uniqueItems");
- notAllowed.appendIf(collectionFormat != HttpPartCollectionFormat.NO_COLLECTION_FORMAT, "collectionFormat");
- notAllowed.appendIf(items != null, "items");
- notAllowed.appendIf(maximum != null, "maximum");
- notAllowed.appendIf(minimum != null, "minimum");
- notAllowed.appendIf(multipleOf != null, "multipleOf");
- notAllowed.appendIf(maxItems != null, "maxItems");
- notAllowed.appendIf(minItems != null, "minItems");
- notAllowed.appendIf(minProperties != null, "minProperties");
+ notAllowed
+ .addIf(properties != null, "properties")
+ .addIf(additionalProperties != null, "additionalProperties")
+ .addIf(exclusiveMaximum, "exclusiveMaximum")
+ .addIf(exclusiveMinimum, "exclusiveMinimum")
+ .addIf(uniqueItems, "uniqueItems")
+ .addIf(collectionFormat != HttpPartCollectionFormat.NO_COLLECTION_FORMAT, "collectionFormat")
+ .addIf(items != null, "items")
+ .addIf(maximum != null, "maximum")
+ .addIf(minimum != null, "minimum")
+ .addIf(multipleOf != null, "multipleOf")
+ .addIf(maxItems != null, "maxItems")
+ .addIf(minItems != null, "minItems")
+ .addIf(minProperties != null, "minProperties");
invalidFormat = ! format.isOneOf(HttpPartFormat.BYTE, HttpPartFormat.BINARY, HttpPartFormat.BINARY_SPACED, HttpPartFormat.DATE, HttpPartFormat.DATE_TIME, HttpPartFormat.PASSWORD, HttpPartFormat.UON, HttpPartFormat.NO_FORMAT);
break;
}
case ARRAY: {
- notAllowed.appendIf(properties != null, "properties");
- notAllowed.appendIf(additionalProperties != null, "additionalProperties");
- notAllowed.appendIf(exclusiveMaximum, "exclusiveMaximum");
- notAllowed.appendIf(exclusiveMinimum, "exclusiveMinimum");
- notAllowed.appendIf(pattern != null, "pattern");
- notAllowed.appendIf(maximum != null, "maximum");
- notAllowed.appendIf(minimum != null, "minimum");
- notAllowed.appendIf(multipleOf != null, "multipleOf");
- notAllowed.appendIf(maxLength != null, "maxLength");
- notAllowed.appendIf(minLength != null, "minLength");
- notAllowed.appendIf(maxProperties != null, "maxProperties");
- notAllowed.appendIf(minProperties != null, "minProperties");
+ notAllowed.addIf(properties != null, "properties")
+ .addIf(additionalProperties != null, "additionalProperties")
+ .addIf(exclusiveMaximum, "exclusiveMaximum")
+ .addIf(exclusiveMinimum, "exclusiveMinimum")
+ .addIf(pattern != null, "pattern")
+ .addIf(maximum != null, "maximum")
+ .addIf(minimum != null, "minimum")
+ .addIf(multipleOf != null, "multipleOf")
+ .addIf(maxLength != null, "maxLength")
+ .addIf(minLength != null, "minLength")
+ .addIf(maxProperties != null, "maxProperties")
+ .addIf(minProperties != null, "minProperties");
invalidFormat = ! format.isOneOf(HttpPartFormat.NO_FORMAT, HttpPartFormat.UON);
break;
}
case BOOLEAN: {
- notAllowed.appendIf(! _enum.isEmpty(), "_enum");
- notAllowed.appendIf(properties != null, "properties");
- notAllowed.appendIf(additionalProperties != null, "additionalProperties");
- notAllowed.appendIf(exclusiveMaximum, "exclusiveMaximum");
- notAllowed.appendIf(exclusiveMinimum, "exclusiveMinimum");
- notAllowed.appendIf(uniqueItems, "uniqueItems");
- notAllowed.appendIf(collectionFormat != HttpPartCollectionFormat.NO_COLLECTION_FORMAT, "collectionFormat");
- notAllowed.appendIf(pattern != null, "pattern");
- notAllowed.appendIf(items != null, "items");
- notAllowed.appendIf(maximum != null, "maximum");
- notAllowed.appendIf(minimum != null, "minimum");
- notAllowed.appendIf(multipleOf != null, "multipleOf");
- notAllowed.appendIf(maxItems != null, "maxItems");
- notAllowed.appendIf(maxLength != null, "maxLength");
- notAllowed.appendIf(maxProperties != null, "maxProperties");
- notAllowed.appendIf(minItems != null, "minItems");
- notAllowed.appendIf(minLength != null, "minLength");
- notAllowed.appendIf(minProperties != null, "minProperties");
+ notAllowed.addIf(! _enum.isEmpty(), "_enum")
+ .addIf(properties != null, "properties")
+ .addIf(additionalProperties != null, "additionalProperties")
+ .addIf(exclusiveMaximum, "exclusiveMaximum")
+ .addIf(exclusiveMinimum, "exclusiveMinimum")
+ .addIf(uniqueItems, "uniqueItems")
+ .addIf(collectionFormat != HttpPartCollectionFormat.NO_COLLECTION_FORMAT, "collectionFormat")
+ .addIf(pattern != null, "pattern")
+ .addIf(items != null, "items")
+ .addIf(maximum != null, "maximum")
+ .addIf(minimum != null, "minimum")
+ .addIf(multipleOf != null, "multipleOf")
+ .addIf(maxItems != null, "maxItems")
+ .addIf(maxLength != null, "maxLength")
+ .addIf(maxProperties != null, "maxProperties")
+ .addIf(minItems != null, "minItems")
+ .addIf(minLength != null, "minLength")
+ .addIf(minProperties != null, "minProperties");
invalidFormat = ! format.isOneOf(HttpPartFormat.NO_FORMAT, HttpPartFormat.UON);
break;
}
@@ -3353,50 +3355,50 @@ public class HttpPartSchema {
break;
}
case INTEGER: {
- notAllowed.appendIf(properties != null, "properties");
- notAllowed.appendIf(additionalProperties != null, "additionalProperties");
- notAllowed.appendIf(uniqueItems, "uniqueItems");
- notAllowed.appendIf(collectionFormat != HttpPartCollectionFormat.NO_COLLECTION_FORMAT, "collectionFormat");
- notAllowed.appendIf(pattern != null, "pattern");
- notAllowed.appendIf(items != null, "items");
- notAllowed.appendIf(maxItems != null, "maxItems");
- notAllowed.appendIf(maxLength != null, "maxLength");
- notAllowed.appendIf(maxProperties != null, "maxProperties");
- notAllowed.appendIf(minItems != null, "minItems");
- notAllowed.appendIf(minLength != null, "minLength");
- notAllowed.appendIf(minProperties != null, "minProperties");
+ notAllowed.addIf(properties != null, "properties")
+ .addIf(additionalProperties != null, "additionalProperties")
+ .addIf(uniqueItems, "uniqueItems")
+ .addIf(collectionFormat != HttpPartCollectionFormat.NO_COLLECTION_FORMAT, "collectionFormat")
+ .addIf(pattern != null, "pattern")
+ .addIf(items != null, "items")
+ .addIf(maxItems != null, "maxItems")
+ .addIf(maxLength != null, "maxLength")
+ .addIf(maxProperties != null, "maxProperties")
+ .addIf(minItems != null, "minItems")
+ .addIf(minLength != null, "minLength")
+ .addIf(minProperties != null, "minProperties");
invalidFormat = ! format.isOneOf(HttpPartFormat.NO_FORMAT, HttpPartFormat.UON, HttpPartFormat.INT32, HttpPartFormat.INT64);
break;
}
case NUMBER: {
- notAllowed.appendIf(properties != null, "properties");
- notAllowed.appendIf(additionalProperties != null, "additionalProperties");
- notAllowed.appendIf(uniqueItems, "uniqueItems");
- notAllowed.appendIf(collectionFormat != HttpPartCollectionFormat.NO_COLLECTION_FORMAT, "collectionFormat");
- notAllowed.appendIf(pattern != null, "pattern");
- notAllowed.appendIf(items != null, "items");
- notAllowed.appendIf(maxItems != null, "maxItems");
- notAllowed.appendIf(maxLength != null, "maxLength");
- notAllowed.appendIf(maxProperties != null, "maxProperties");
- notAllowed.appendIf(minItems != null, "minItems");
- notAllowed.appendIf(minLength != null, "minLength");
- notAllowed.appendIf(minProperties != null, "minProperties");
+ notAllowed.addIf(properties != null, "properties")
+ .addIf(additionalProperties != null, "additionalProperties")
+ .addIf(uniqueItems, "uniqueItems")
+ .addIf(collectionFormat != HttpPartCollectionFormat.NO_COLLECTION_FORMAT, "collectionFormat")
+ .addIf(pattern != null, "pattern")
+ .addIf(items != null, "items")
+ .addIf(maxItems != null, "maxItems")
+ .addIf(maxLength != null, "maxLength")
+ .addIf(maxProperties != null, "maxProperties")
+ .addIf(minItems != null, "minItems")
+ .addIf(minLength != null, "minLength")
+ .addIf(minProperties != null, "minProperties");
invalidFormat = ! format.isOneOf(HttpPartFormat.NO_FORMAT, HttpPartFormat.UON, HttpPartFormat.FLOAT, HttpPartFormat.DOUBLE);
break;
}
case OBJECT: {
- notAllowed.appendIf(exclusiveMaximum, "exclusiveMaximum");
- notAllowed.appendIf(exclusiveMinimum, "exclusiveMinimum");
- notAllowed.appendIf(uniqueItems, "uniqueItems");
- notAllowed.appendIf(pattern != null, "pattern");
- notAllowed.appendIf(items != null, "items");
- notAllowed.appendIf(maximum != null, "maximum");
- notAllowed.appendIf(minimum != null, "minimum");
- notAllowed.appendIf(multipleOf != null, "multipleOf");
- notAllowed.appendIf(maxItems != null, "maxItems");
- notAllowed.appendIf(maxLength != null, "maxLength");
- notAllowed.appendIf(minItems != null, "minItems");
- notAllowed.appendIf(minLength != null, "minLength");
+ notAllowed.addIf(exclusiveMaximum, "exclusiveMaximum")
+ .addIf(exclusiveMinimum, "exclusiveMinimum")
+ .addIf(uniqueItems, "uniqueItems")
+ .addIf(pattern != null, "pattern")
+ .addIf(items != null, "items")
+ .addIf(maximum != null, "maximum")
+ .addIf(minimum != null, "minimum")
+ .addIf(multipleOf != null, "multipleOf")
+ .addIf(maxItems != null, "maxItems")
+ .addIf(maxLength != null, "maxLength")
+ .addIf(minItems != null, "minItems")
+ .addIf(minLength != null, "minLength");
invalidFormat = ! format.isOneOf(HttpPartFormat.NO_FORMAT);
break;
}
@@ -3404,8 +3406,9 @@ public class HttpPartSchema {
break;
}
- if (! notAllowed.isEmpty())
- errors.add("Attributes not allow for type='"+type+"': " + StringUtils.join(notAllowed, ","));
+ List<String> notAllowed2 = notAllowed.build();
+ if (! notAllowed2.isEmpty())
+ errors.add("Attributes not allow for type='"+type+"': " + StringUtils.join(notAllowed2, ","));
if (invalidFormat)
errors.add("Invalid format for type='"+type+"': '"+format+"'");
if (exclusiveMaximum && maximum == null)
@@ -4050,19 +4053,18 @@ public class HttpPartSchema {
isNotEmpty |= ss.length > 0;
if (! isNotEmpty)
return null;
- Set<String> set = ASet.of();
+ Set<String> set = set();
for (String[] ss : s)
if (ss != null)
for (String ss2 : ss)
- for (String ss3 : split(ss2, ','))
- set.add(trim(ss3));
+ split(ss2, x -> set.add(x));
return set.isEmpty() ? null : set;
}
final static Set<String> toSet(String s) {
if (isEmpty(s))
return null;
- Set<String> set = ASet.of();
+ Set<String> set = set();
try {
for (Object o : StringUtils.parseListOrCdl(s))
set.add(o.toString());
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/RequestBeanPropertyMeta.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/RequestBeanPropertyMeta.java
index 23aded7..1f7d748 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/RequestBeanPropertyMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/RequestBeanPropertyMeta.java
@@ -12,7 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.httppart.bean;
-import static java.util.Optional.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.lang.annotation.*;
import java.lang.reflect.*;
@@ -54,7 +54,7 @@ public class RequestBeanPropertyMeta {
this.partType = b.partType;
this.schema = b.schema;
this.getter = b.getter;
- this.serializer = ofNullable(schema.getSerializer() == null ? serializer : BeanCreator.of(HttpPartSerializer.class).type(schema.getSerializer()).run());
+ this.serializer = optional(schema.getSerializer() == null ? serializer : BeanCreator.of(HttpPartSerializer.class).type(schema.getSerializer()).run());
this.parser = schema.getParser() == null ? parser : BeanCreator.of(HttpPartParser.class).type(schema.getParser()).run();
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/ResponseBeanMeta.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/ResponseBeanMeta.java
index e7c117f..610489f 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/ResponseBeanMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/ResponseBeanMeta.java
@@ -13,9 +13,9 @@
package org.apache.juneau.httppart.bean;
import static org.apache.juneau.httppart.bean.Utils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.httppart.HttpPartType.*;
import static org.apache.juneau.annotation.InvalidAnnotationException.*;
-import static java.util.Optional.*;
import java.io.*;
import java.lang.reflect.*;
@@ -110,8 +110,8 @@ public class ResponseBeanMeta {
ResponseBeanMeta(Builder b) {
this.cm = b.cm;
this.code = b.code;
- this.partSerializer = ofNullable(b.partSerializer).map(x -> HttpPartSerializer.creator().type(x).apply(b.annotations).create());
- this.partParser = ofNullable(b.partParser).map(x -> HttpPartParser.creator().type(x).apply(b.annotations).create());
+ this.partSerializer = optional(b.partSerializer).map(x -> HttpPartSerializer.creator().type(x).apply(b.annotations).create());
+ this.partParser = optional(b.partParser).map(x -> HttpPartParser.creator().type(x).apply(b.annotations).create());
this.schema = b.schema.build();
Map<String,ResponseBeanPropertyMeta> properties = new LinkedHashMap<>();
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/ResponseBeanPropertyMeta.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/ResponseBeanPropertyMeta.java
index 4ea141f..1891601 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/ResponseBeanPropertyMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/httppart/bean/ResponseBeanPropertyMeta.java
@@ -12,6 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.httppart.bean;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
import java.lang.reflect.*;
import java.util.*;
import org.apache.juneau.http.annotation.*;
@@ -92,7 +94,7 @@ public class ResponseBeanPropertyMeta {
* @return The HTTP part name, or <jk>null</jk> if it doesn't have a part name.
*/
public Optional<String> getPartName() {
- return Optional.ofNullable(schema == null ? null : schema.getName());
+ return optional(schema == null ? null : schema.getName());
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/AList.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/AList.java
deleted file mode 100644
index f6c5ab8..0000000
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/AList.java
+++ /dev/null
@@ -1,410 +0,0 @@
-// ***************************************************************************************************************************
-// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file *
-// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
-// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance *
-// * with the License. You may obtain a copy of the License at *
-// * *
-// * http://www.apache.org/licenses/LICENSE-2.0 *
-// * *
-// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an *
-// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the *
-// * specific language governing permissions and limitations under the License. *
-// ***************************************************************************************************************************
-package org.apache.juneau.internal;
-
-import static java.util.Collections.*;
-import static org.apache.juneau.internal.ConsumerUtils.*;
-import java.lang.reflect.*;
-import java.util.*;
-import java.util.function.*;
-
-import org.apache.juneau.json.*;
-import org.apache.juneau.serializer.*;
-
-/**
- * A fluent {@link ArrayList}.
- *
- * <p>
- * Provides various convenience methods for creating and populating a list with minimal code.
- *
- * <h5 class='figure'>Examples:</h5>
- * <p class='bjava'>
- * <jc>// A list of strings.</jc>
- * AList<String> <jv>list</jv> = AList.<jsm>of</jsm>(<js>"foo"</js>,<js>"bar"</js>);
- *
- * <jc>// Append to list.</jc>
- * <jv>list</jv>.append(<js>"baz"</js>, <js>"qux"</js>);
- *
- * <jc>// Create an unmodifiable view of this list.</jc>
- * List<String> <jv>list2</jv> = <jv>list</jv>.unmodifiable();
- *
- * <jc>// Convert it to an array.</jc>
- * String[] <jv>array</jv> = <jv>list</jv>.asArray();
- *
- * <jc>// Convert to simplified JSON.</jc>
- * String <jv>json</jv> = <jv>list</jv>.asString();
- *
- * <jc>// Convert to XML.</jc>
- * String <jv>json</jv> = <jv>list</jv>.asString(XmlSerializer.<jsf>DEFAULT</jsm>);
- * </p>
- *
- * <ul class='spaced-list'>
- * <li class='warn'>This class is not thread safe.
- * </ul>
- *
- * <ul class='seealso'>
- * <li class='extlink'>{@source}
- * </ul>
- *
- * @param <T> The entry type.
- * @serial exclude
- */
-@SuppressWarnings({"unchecked"})
-public class AList<T> extends ArrayList<T> {
-
- private static final long serialVersionUID = 1L;
-
- //------------------------------------------------------------------------------------------------------------------
- // Constructors
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Constructor.
- *
- * <p>
- * Creates an array list of default size.
- */
- public AList() {}
-
- /**
- * Constructor.
- *
- * <p>
- * Creates an array list of default size.
- * @param capacity Initial capacity.
- */
- public AList(int capacity) {
- super(capacity);
- }
-
- /**
- * Copy constructor.
- *
- * @param c Initial contents. Can be <jk>null</jk>.
- */
- public AList(Collection<T> c) {
- super(c == null ? emptyList() : c);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Creators
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Convenience method for creating an empty list of objects.
- *
- * <p>
- * Creates an array list of default size.
- *
- * @return A new list.
- */
- public static <T> AList<T> create() {
- return new AList<>();
- }
-
- /**
- * Convenience method for creating a list of objects.
- *
- * @param values The initial values.
- * @return A new list.
- */
- @SafeVarargs
- public static <T> AList<T> of(T...values) {
- return new AList<T>(values.length).a(values);
- }
-
- /**
- * Convenience method for creating a list of objects.
- *
- * <p>
- * Creates a list with the same capacity as the array.
- *
- * @param values The initial values.
- * @return A new list.
- */
- public static <T> AList<T> of(Collection<T> values) {
- values = values == null ? emptyList() : values;
- return new AList<T>(values.size()).a(values);
- }
-
- /**
- * Convenience method for creating a list of collection objects.
- *
- * @param values The initial values.
- * @return A new list.
- */
- public static <T extends Collection<?>> AList<T> ofCollections(T...values) {
- AList<T> l = new AList<>();
- for (T v : values)
- l.add(v);
- return l;
- }
-
- /**
- * Convenience method for creating a list of collection objects.
- *
- * @param values The initial values.
- * @return A new list.
- */
- public static <T> AList<T[]> ofArrays(T[]...values) {
- AList<T[]> l = new AList<>();
- for (T[] v : values)
- l.add(v);
- return l;
- }
-
- /**
- * Creates a copy of the collection if it's not <jk>null</jk>.
- *
- * @param values The initial values.
- * @return A new list, or <jk>null</jk> if the collection is <jk>null</jk>.
- */
- public static <T> AList<T> nullable(Collection<T> values) {
- return values == null ? null : of(values);
- }
-
- /**
- * Convenience method for creating an unmodifiable list of objects.
- *
- * <p>
- * Creates a list with the same capacity as the array.
- *
- * @param values The initial values.
- * @return A new list.
- */
- public static <T> List<T> unmodifiable(T...values) {
- return values.length == 0 ? emptyList() : of(values).unmodifiable();
- }
-
- /**
- * Convenience method for creating an unmodifiable list out of the specified collection.
- *
- * @param values The collection to add.
- * @param <T> The element type.
- * @return An unmodifiable list, never <jk>null</jk>.
- */
- public static <T> List<T> unmodifiable(Collection<T> values) {
- if (values == null || values.isEmpty())
- return Collections.emptyList();
- return new AList<T>(values.size()).a(values).unmodifiable();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Appenders
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Adds the value to this list.
- *
- * @param value The value to add to this list.
- * @return This object.
- */
- public AList<T> append(T value) {
- add(value);
- return this;
- }
-
- /**
- * Adds all the values in the specified array to this list.
- *
- * @param values The values to add to this list.
- * @return This object.
- */
- public AList<T> append(T...values) {
- Collections.addAll(this, values);
- return this;
- }
-
- /**
- * Adds all the values in the specified collection to this list.
- *
- * @param values The values to add to this list.
- * @return This object.
- */
- public AList<T> append(Collection<? extends T> values) {
- addAll(values);
- return this;
- }
-
- /**
- * Same as {@link #append(Object)}.
- *
- * @param value The entry to add to this list.
- * @return This object.
- */
- public AList<T> a(T value) {
- return append(value);
- }
-
- /**
- * Same as {@link #append(Collection)}.
- *
- * @param values The collection to add to this list. Can be <jk>null</jk>.
- * @return This object.
- */
- public AList<T> a(Collection<? extends T> values) {
- return append(values);
- }
-
- /**
- * Same as {@link #append(Object...)}.
- *
- * @param values The array to add to this list.
- * @return This object.
- */
- public AList<T> a(T...values) {
- return append(values);
- }
-
- /**
- * Adds an entry to this list if the boolean flag is <jk>true</jk>.
- *
- * @param flag The boolean flag.
- * @param value The value to add.
- * @return This object.
- */
- public AList<T> appendIf(boolean flag, T value) {
- if (flag)
- a(value);
- return this;
- }
-
- /**
- * Adds entries to this list skipping <jk>null</jk> values.
- *
- * @param values The objects to add to the list.
- * @return This object.
- */
- public AList<T> appendIfNotNull(T...values) {
- for (T o2 : values)
- if (o2 != null)
- a(o2);
- return this;
- }
-
- /**
- * Add if predicate matches value.
- *
- * @param test The predicate to match against.
- * @param value The value to add to the list.
- * @return This object.
- */
- public AList<T> appendIf(Predicate<Object> test, T value) {
- return appendIf(passes(test, value), value);
- }
-
- /**
- * Add reverse.
- *
- * <p>
- * Adds all the entries in the specified collection to this list in reverse order.
- *
- * @param values The collection to add to this list.
- * @return This object.
- */
- public AList<T> appendReverse(List<? extends T> values) {
- for (ListIterator<? extends T> i = values.listIterator(values.size()); i.hasPrevious();)
- add(i.previous());
- return this;
- }
-
- /**
- * Add reverse.
- *
- * <p>
- * Adds the contents of the array to the list in reverse order.
- *
- * <p>
- * i.e. add values from the array from end-to-start order to the end of the list.
- *
- * @param values The collection to add to this list.
- * @return This object.
- */
- public AList<T> appendReverse(T...values) {
- for (int i = values.length - 1; i >= 0; i--)
- add(values[i]);
- return this;
- }
-
- /**
- * Sorts the contents of this list using natural ordering.
- *
- * @return This object.
- */
- public AList<T> sort() {
- super.sort(null);
- return this;
- }
-
- /**
- * Sorts the contents of this list using the specified comparator.
- *
- * @param c The comparator to use for sorting. Can be <jk>null</jk>.
- * @return This object.
- */
- public AList<T> sortWith(Comparator<? super T> c) {
- super.sort(c);
- return this;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Other methods
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Returns an unmodifiable view of this list.
- *
- * @return An unmodifiable view of this list.
- */
- public List<T> unmodifiable() {
- return isEmpty() ? emptyList() : unmodifiableList(this);
- }
-
- /**
- * Convert the contents of this list into a new array.
- *
- * @param c The component type of the array.
- * @return A new array.
- */
- public <T2> T2[] asArrayOf(Class<T2> c) {
- return toArray((T2[])Array.newInstance(c, size()));
- }
-
- /**
- * Returns a reverse iterable over this list.
- *
- * @return An iterable over the collection.
- */
- public Iterable<T> riterable() {
- return new ReverseIterable<>(this);
- }
-
- /**
- * Convert to a string using the specified serializer.
- *
- * @param ws The serializer to use to serialize this collection.
- * @return This collection serialized to a string.
- */
- public String asString(WriterSerializer ws) {
- return ws.toString(this);
- }
-
- /**
- * Convert to Simplified JSON.
- *
- * @return This collection serialized to a string.
- */
- public String asJson() {
- return SimpleJsonSerializer.DEFAULT.toString(this);
- }
-}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/AMap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/AMap.java
deleted file mode 100644
index 0cf7f58..0000000
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/AMap.java
+++ /dev/null
@@ -1,301 +0,0 @@
-// ***************************************************************************************************************************
-// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file *
-// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
-// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance *
-// * with the License. You may obtain a copy of the License at *
-// * *
-// * http://www.apache.org/licenses/LICENSE-2.0 *
-// * *
-// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an *
-// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the *
-// * specific language governing permissions and limitations under the License. *
-// ***************************************************************************************************************************
-package org.apache.juneau.internal;
-
-import static java.util.Collections.*;
-import static org.apache.juneau.internal.ThrowableUtils.*;
-import static org.apache.juneau.internal.ConsumerUtils.*;
-
-import java.util.*;
-import java.util.function.*;
-
-import org.apache.juneau.json.*;
-import org.apache.juneau.serializer.*;
-
-/**
- * A fluent {@link LinkedHashMap}.
- *
- * <p>
- * Provides various convenience methods for creating and populating a map with minimal code.
- *
- * <h5 class='figure'>Examples:</h5>
- * <p class='bjava'>
- * <jc>// A map of string key/value pairs.</jc>
- * AMap<String,String> <jv>map</jv> = AMap.<jsm>of</jsm>(<js>"foo"</js>,<js>"bar"</js>);
- *
- * <jc>// Append to map.</jc>
- * <jv>map</jv>.a(<js>"baz"</js>, <js>"qux"</js>);
- *
- * <jc>// Create an unmodifiable view of this list.</jc>
- * Map<String,String> <jv>map2</jv> = <jv>map</jv>.unmodifiable();
- *
- * <jc>// Convert to simplified JSON.</jc>
- * String <jv>json</jv> = <jv>map</jv>.asString();
- *
- * <jc>// Convert to XML.</jc>
- * String <jv>json</jv> = <jv>msp</jv>.asString(XmlSerializer.<jsf>DEFAULT</jsm>);
- * </p>
- *
- * <ul class='spaced-list'>
- * <li class='warn'>This class is not thread safe.
- * </ul>
- *
- * <ul class='seealso'>
- * <li class='extlink'>{@source}
- * </ul>
- *
- * @param <K> The key type.
- * @param <V> The value type.
- * @serial exclude
- */
-public class AMap<K,V> extends LinkedHashMap<K,V> {
-
- private static final long serialVersionUID = 1L;
-
- //------------------------------------------------------------------------------------------------------------------
- // Constructors
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Constructor.
- */
- public AMap() {}
-
- /**
- * Copy constructor.
- *
- * @param copy The map to copy. Can be <jk>null</jk>.
- */
- public AMap(Map<K,V> copy) {
- super(copy == null ? emptyMap() : copy);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Creators
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Creates an empty map.
- *
- * @return A new empty map.
- */
- public static <K,V> AMap<K,V> create() {
- return new AMap<>();
- }
-
- /**
- * Creates a map with one entry.
- *
- * @param key Entry key.
- * @param value Entry value.
- * @return A new map with one entry.
- */
- public static <K,V> AMap<K,V> of(K key, V value) {
- return new AMap<K,V>().a(key, value);
- }
-
- /**
- * Creates a map out of a list of key/value pairs.
- *
- * @param <K> The key type.
- * @param <V> The value type.
- * @param parameters
- * The parameters.
- * <br>Must be an even number of parameters.
- * <br>It's up to you to ensure that the parameters are the correct type.
- * @return A new map.
- */
- @SuppressWarnings("unchecked")
- public static <K,V> AMap<K,V> ofPairs(Object...parameters) {
- AMap<K,V> m = AMap.create();
- if (parameters.length % 2 != 0)
- throw runtimeException("Odd number of parameters passed into AMap.ofPairs()");
- for (int i = 0; i < parameters.length; i+=2)
- m.put((K)parameters[i], (V)parameters[i+1]);
- return m;
- }
-
-
- @SuppressWarnings("javadoc")
- public static <K,V> AMap<K,V> of(K k1, V v1, K k2, V v2) {
- return AMap.of(k1,v1).a(k2,v2);
- }
-
- @SuppressWarnings("javadoc")
- public static <K,V> AMap<K,V> of(K k1, V v1, K k2, V v2, K k3, V v3) {
- return AMap.of(k1,v1).a(k2,v2).a(k3,v3);
- }
-
- @SuppressWarnings("javadoc")
- public static <K,V> AMap<K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4) {
- return AMap.of(k1,v1).a(k2,v2).a(k3,v3).a(k4,v4);
- }
-
- @SuppressWarnings("javadoc")
- public static <K,V> AMap<K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5) {
- return AMap.of(k1,v1).a(k2,v2).a(k3,v3).a(k4,v4).a(k5,v5);
- }
-
- @SuppressWarnings("javadoc")
- public static <K,V> AMap<K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5, K k6, V v6) {
- return AMap.of(k1,v1).a(k2,v2).a(k3,v3).a(k4,v4).a(k5,v5).a(k6,v6);
- }
-
- @SuppressWarnings("javadoc")
- public static <K,V> AMap<K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5, K k6, V v6, K k7, V v7) {
- return AMap.of(k1,v1).a(k2,v2).a(k3,v3).a(k4,v4).a(k5,v5).a(k6,v6).a(k7,v7);
- }
-
- @SuppressWarnings("javadoc")
- public static <K,V> AMap<K,V> of(K k1, V v1, K k2, V v2, K k3, V v3, K k4, V v4, K k5, V v5, K k6, V v6, K k7, V v7, K k8, V v8) {
- return AMap.of(k1,v1).a(k2,v2).a(k3,v3).a(k4,v4).a(k5,v5).a(k6,v6).a(k7,v7).a(k8,v8);
- }
-
- /**
- * Creates a new map initialized with the specified contents.
- *
- * @param copy Initialize with these contents. Can be <jk>null</jk>.
- * @return A new map. Never <jk>null</jk>.
- */
- public static <K,V> AMap<K,V> of(Map<K,V> copy) {
- return new AMap<>(copy);
- }
-
- /**
- * Creates an unmodifiable copy of the specified map.
- *
- * @param copy The map to copy.
- * @return A new unmodifiable map, never <jk>null</jk>.
- */
- public static <K,V> Map<K,V> unmodifiable(Map<K,V> copy) {
- if (copy == null || copy.isEmpty())
- return emptyMap();
- return new AMap<>(copy).unmodifiable();
- }
-
- /**
- * Creates a copy of the collection if it's not <jk>null</jk>.
- *
- * @param c The initial values.
- * @return A new list, or <jk>null</jk> if the collection is <jk>null</jk>.
- */
- public static <K,V> AMap<K,V> nullable(Map<K,V> c) {
- return c == null ? null : of(c);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Appenders
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Adds an entry to this map.
- *
- * @param key The key.
- * @param value The value.
- * @return This object.
- */
- public AMap<K,V> append(K key, V value) {
- put(key, value);
- return this;
- }
-
- /**
- * Appends all the entries in the specified map to this map.
- *
- * @param values The map to copy.
- * @return This object.
- */
- public AMap<K,V> append(Map<K,V> values) {
- super.putAll(values);
- return this;
- }
-
- /**
- * Same as {@link #append(Object,Object)}.
- *
- * @param key The key.
- * @param value The value.
- * @return This object.
- */
- public AMap<K,V> a(K key, V value) {
- return append(key, value);
- }
-
- /**
- * Same as {@link #append(Map)}.
- *
- * @param values The map to copy.
- * @return This object.
- */
- public AMap<K,V> a(Map<K,V> values) {
- return append(values);
- }
-
- /**
- * Add if flag is <jk>true</jk>.
- *
- * @param flag The flag to check.
- * @param key The key.
- * @param value The value.
- * @return This object.
- */
- public AMap<K,V> appendIf(boolean flag, K key, V value) {
- if (flag)
- append(key, value);
- return this;
- }
-
- /**
- * Add if predicate matches value.
- *
- * @param test The predicate to match against.
- * @param key The key.
- * @param value The value.
- * @return This object.
- */
- public AMap<K,V> appendIf(Predicate<Object> test, K key, V value) {
- return appendIf(passes(test, value), key, value);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Other methods
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Returns an unmodifiable view of this map.
- *
- * @return An unmodifiable view of this map.
- */
- public Map<K,V> unmodifiable() {
- return this.isEmpty() ? emptyMap() : unmodifiableMap(this);
- }
-
- /**
- * Convert to a string using the specified serializer.
- *
- * @param ws The serializer to use to serialize this collection.
- * @return This collection serialized to a string.
- */
- public String asString(WriterSerializer ws) {
- return ws.toString(this);
- }
-
- /**
- * Convert to Simplified JSON.
- *
- * @return This collection serialized to a string.
- */
- public String asJson() {
- return SimpleJsonSerializer.DEFAULT.toString(this);
- }
-}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ASet.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ASet.java
deleted file mode 100644
index 9da8188..0000000
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ASet.java
+++ /dev/null
@@ -1,324 +0,0 @@
-// ***************************************************************************************************************************
-// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file *
-// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
-// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance *
-// * with the License. You may obtain a copy of the License at *
-// * *
-// * http://www.apache.org/licenses/LICENSE-2.0 *
-// * *
-// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an *
-// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the *
-// * specific language governing permissions and limitations under the License. *
-// ***************************************************************************************************************************
-package org.apache.juneau.internal;
-
-import static java.util.Collections.*;
-import static org.apache.juneau.internal.ConsumerUtils.*;
-
-import java.lang.reflect.*;
-import java.util.*;
-import java.util.function.*;
-
-import org.apache.juneau.json.*;
-import org.apache.juneau.serializer.*;
-
-/**
- * A fluent {@link LinkedHashSet}.
- *
- * <p>
- * Provides various convenience methods for creating and populating a set with minimal code.
- *
- * <h5 class='figure'>Examples:</h5>
- * <p class='bjava'>
- * <jc>// A set of strings.</jc>
- * ASet<String> <jv>set</jv> = ASet.<jsm>of</jsm>(<js>"foo"</js>,<js>"bar"</js>);
- *
- * <jc>// Append to set.</jc>
- * <jv>set</jv>.a(<js>"baz"</js>).a(<js>"qux"</js>);
- *
- * <jc>// Create an unmodifiable view of this set.</jc>
- * Set<String> <jv>set2</jv> = <jv>set</jv>.unmodifiable();
- *
- * <jc>// Convert it to an array.</jc>
- * String[] <jv>array</jv> = <jv>set</jv>.asArrayOf(String.<jk>class</jk>);
- *
- * <jc>// Convert to simplified JSON.</jc>
- * String <jv>json</jv> = <jv>set</jv>.asString();
- *
- * <jc>// Convert to XML.</jc>
- * String <jv>json</jv> = <jv>set</jv>.asString(XmlSerializer.<jsf>DEFAULT</jsm>);
- * </p>
- *
- * <ul class='spaced-list'>
- * <li class='warn'>This class is not thread safe.
- * </ul>
- *
- * <ul class='seealso'>
- * <li class='extlink'>{@source}
- * </ul>
- *
- * @param <T> The entry type.
- * @serial exclude
- */
-@SuppressWarnings({"unchecked"})
-public class ASet<T> extends LinkedHashSet<T> {
-
- private static final long serialVersionUID = 1L;
-
- //------------------------------------------------------------------------------------------------------------------
- // Constructors
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Constructor.
- */
- public ASet() {}
-
- /**
- * Copy constructor.
- *
- * @param c Initial contents. Can be <jk>null</jk>.
- */
- public ASet(Collection<T> c) {
- super(c == null ? emptySet() : c);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Creators
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Convenience method for creating an empty set of objects.
- *
- * @return A new set.
- */
- public static <T> ASet<T> create() {
- return new ASet<>();
- }
-
- /**
- * Convenience method for creating a list of objects.
- *
- * @param t The initial values.
- * @return A new list.
- */
- @SafeVarargs
- public static <T> ASet<T> of(T...t) {
- return new ASet<T>().a(t);
- }
-
- /**
- * Convenience method for creating a list of objects.
- *
- * @param c The initial values.
- * @return A new list.
- */
- public static <T> ASet<T> of(Collection<T> c) {
- return new ASet<T>().a(c);
- }
-
- /**
- * Convenience method for creating a set of collection objects.
- *
- * @param values The initial values.
- * @return A new list.
- */
- public static <T extends Collection<?>> ASet<T> ofCollections(T...values) {
- ASet<T> l = new ASet<>();
- for (T v : values)
- l.add(v);
- return l;
- }
-
- /**
- * Convenience method for creating a set of collection objects.
- *
- * @param values The initial values.
- * @return A new list.
- */
- public static <T> ASet<T[]> ofArrays(T[]...values) {
- ASet<T[]> l = new ASet<>();
- for (T[] v : values)
- l.add(v);
- return l;
- }
-
- /**
- * Creates a copy of the collection if it's not <jk>null</jk>.
- *
- * @param values The initial values.
- * @return A new list, or <jk>null</jk> if the collection is <jk>null</jk>.
- */
- public static <T> ASet<T> nullable(Collection<T> values) {
- return values == null ? null : of(values);
- }
-
- /**
- * Convenience method for creating an unmodifiable set of objects.
- *
- * @param t The initial values.
- * @return A new list.
- */
- public static <T> Set<T> unmodifiable(T...t) {
- return t.length == 0 ? emptySet() : of(t).unmodifiable();
- }
-
- /**
- * Convenience method for creating an unmodifiable sert out of the specified collection.
- *
- * @param c The collection to add.
- * @param <T> The element type.
- * @return An unmodifiable set, never <jk>null</jk>.
- */
- public static <T> Set<T> unmodifiable(Collection<T> c) {
- if (c == null || c.isEmpty())
- return Collections.emptySet();
- return new ASet<T>().a(c).unmodifiable();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Appenders
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Adds the value to this set.
- *
- * @param value The value to add to this set.
- * @return This object.
- */
- public ASet<T> append(T value) {
- add(value);
- return this;
- }
-
- /**
- * Adds all the values in the specified array to this set.
- *
- * @param values The values to add to this set.
- * @return This object.
- */
- public ASet<T> append(T...values) {
- Collections.addAll(this, values);
- return this;
- }
-
- /**
- * Adds all the values in the specified collection to this set.
- *
- * @param values The values to add to this set.
- * @return This object.
- */
- public ASet<T> append(Collection<? extends T> values) {
- addAll(values);
- return this;
- }
-
- /**
- * Same as {@link #append(Object)}.
- *
- * @param value The entry to add to this set.
- * @return This object.
- */
- public ASet<T> a(T value) {
- return append(value);
- }
-
- /**
- * Same as {@link #append(Object[])}.
- *
- * @param values The entries to add to this set.
- * @return This object.
- */
- public ASet<T> a(T...values) {
- return append(values);
- }
-
- /**
- * Same as {@link #append(Collection)}.
- *
- * @param values The entries to add to this set.
- * @return This object.
- */
- public ASet<T> a(Collection<? extends T> values) {
- return append(values);
- }
-
- /**
- * Adds a value to this set if the boolean value is <jk>true</jk>
- *
- * @param flag The boolean value.
- * @param value The value to add.
- * @return This object.
- */
- public ASet<T> appendIf(boolean flag, T value) {
- if (flag)
- a(value);
- return this;
- }
-
- /**
- * Adds entries to this set skipping <jk>null</jk> values.
- *
- * @param values The objects to add to the list.
- * @return This object.
- */
- public ASet<T> appendIfNotNull(T...values) {
- for (T o2 : values)
- if (o2 != null)
- a(o2);
- return this;
- }
-
- /**
- * Add if predicate matches value.
- *
- * @param test The predicate to match against.
- * @param value The value to add to the list.
- * @return This object.
- */
- public ASet<T> appendIf(Predicate<Object> test, T value) {
- return appendIf(passes(test, value), value);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Other methods
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Returns an unmodifiable view of this set.
- *
- * @return An unmodifiable view of this set.
- */
- public Set<T> unmodifiable() {
- return isEmpty() ? emptySet() : unmodifiableSet(this);
- }
-
- /**
- * Convert the contents of this set into a new array.
- *
- * @param c The component type of the array.
- * @return A new array.
- */
- public <T2> T2[] asArrayOf(Class<T2> c) {
- return toArray((T2[])Array.newInstance(c, size()));
- }
-
- /**
- * Convert to a string using the specified serializer.
- *
- * @param ws The serializer to use to serialize this collection.
- * @return This collection serialized to a string.
- */
- public String asString(WriterSerializer ws) {
- return ws.toString(this);
- }
-
- /**
- * Convert to Simplified JSON.
- *
- * @return This collection serialized to a string.
- */
- public String asJson() {
- return SimpleJsonSerializer.DEFAULT.toString(this);
- }
-}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ASortedMap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ASortedMap.java
deleted file mode 100644
index c158ec9..0000000
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ASortedMap.java
+++ /dev/null
@@ -1,254 +0,0 @@
-// ***************************************************************************************************************************
-// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file *
-// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
-// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance *
-// * with the License. You may obtain a copy of the License at *
-// * *
-// * http://www.apache.org/licenses/LICENSE-2.0 *
-// * *
-// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an *
-// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the *
-// * specific language governing permissions and limitations under the License. *
-// ***************************************************************************************************************************
-package org.apache.juneau.internal;
-
-import static java.util.Collections.*;
-import static org.apache.juneau.internal.ConsumerUtils.*;
-
-import java.util.*;
-import java.util.function.*;
-
-import org.apache.juneau.json.*;
-import org.apache.juneau.serializer.*;
-
-/**
- * A fluent {@link TreeMap}.
- *
- * <p>
- * Provides various convenience methods for creating and populating a sorted map with minimal code.
- *
- * <h5 class='figure'>Examples:</h5>
- * <p class='bjava'>
- * <jc>// A map of string key/value pairs.</jc>
- * AMap<String,String> <jv>map</jv> = AMap.<jsm>of</jsm>(<js>"foo"</js>,<js>"bar"</js>);
- *
- * <jc>// Append to map.</jc>
- * <jv>map</jv>.a(<js>"baz"</js>, <js>"qux"</js>);
- *
- * <jc>// Create an unmodifiable view of this list.</jc>
- * Map<String,String> <jv>map2</jv> = <jv>map</jv>.unmodifiable();
- *
- * <jc>// Convert to simplified JSON.</jc>
- * String <jv>json</jv> = <jv>map</jv>.asString();
- *
- * <jc>// Convert to XML.</jc>
- * String <jv>json</jv> = <jv>map</jv>.asString(XmlSerializer.<jsf>DEFAULT</jsm>);
- * </p>
- *
- * <ul class='spaced-list'>
- * <li class='warn'>This class is not thread safe.
- * </ul>
- *
- * <ul class='seealso'>
- * <li class='extlink'>{@source}
- * </ul>
- *
- * @param <K> The key type.
- * @param <V> The value type.
- * @serial exclude
- */
-public class ASortedMap<K,V> extends TreeMap<K,V> {
-
- private static final long serialVersionUID = 1L;
-
- //------------------------------------------------------------------------------------------------------------------
- // Constructors
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Constructor.
- */
- public ASortedMap() {
- super();
- }
-
- /**
- * Constructor.
- *
- * @param c Comparator to use for key comparison.
- */
- public ASortedMap(Comparator<K> c) {
- super(c);
- }
-
- /**
- * Copy constructor.
- *
- * @param copy The map to copy.
- */
- public ASortedMap(Map<K,V> copy) {
- super(copy == null ? emptyMap() : copy);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Creators
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Creates an empty map.
- *
- * @return A new empty map.
- */
- public static <K,V> ASortedMap<K,V> create() {
- return new ASortedMap<>();
- }
-
- /**
- * Creates a map with one entry.
- *
- * @param key Entry key.
- * @param value Entry value.
- * @return A new map with one entry.
- */
- public static <K,V> ASortedMap<K,V> of(K key, V value) {
- return new ASortedMap<K,V>().a(key, value);
- }
-
- /**
- * Creates a new map initialized with the specified contents.
- *
- * @param copy Initialize with these contents. Can be <jk>null</jk>.
- * @return A new map. Never <jk>null</jk>.
- */
- public static <K,V> ASortedMap<K,V> of(Map<K,V> copy) {
- return new ASortedMap<>(copy);
- }
-
- /**
- * Convenience method for creating an unmodifiable list out of the specified collection.
- *
- * @param c The collection to add.
- * @return An unmodifiable list, never <jk>null</jk>.
- */
- public static <K,V> SortedMap<K,V> unmodifiable(Map<K,V> c) {
- if (c == null || c.isEmpty())
- return Collections.emptySortedMap();
- return new ASortedMap<>(c).unmodifiable();
- }
-
- /**
- * Creates a copy of the collection if it's not <jk>null</jk>.
- *
- * @param c The initial values.
- * @return A new list, or <jk>null</jk> if the collection is <jk>null</jk>.
- */
- public static <K,V> ASortedMap<K,V> nullable(Map<K,V> c) {
- return c == null ? null : of(c);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Appenders
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Adds an entry to this map.
- *
- * @param key The key.
- * @param value The value.
- * @return This object.
- */
- public ASortedMap<K,V> append(K key, V value) {
- put(key, value);
- return this;
- }
-
- /**
- * Appends all the entries in the specified map to this map.
- *
- * @param values The map to copy.
- * @return This object.
- */
- public ASortedMap<K,V> append(Map<K,V> values) {
- super.putAll(values);
- return this;
- }
-
- /**
- * Same as {@link #append(Object,Object)}.
- *
- * @param key The key.
- * @param value The value.
- * @return This object.
- */
- public ASortedMap<K,V> a(K key, V value) {
- return append(key, value);
- }
-
- /**
- * Same as {@link #append(Map)}.
- *
- * @param values The map to copy.
- * @return This object.
- */
- public ASortedMap<K,V> a(Map<K,V> values) {
- return append(values);
- }
-
- /**
- * Add if flag is <jk>true</jk>.
- *
- * @param flag The flag to check.
- * @param key The key.
- * @param value The value.
- * @return This object.
- */
- public ASortedMap<K,V> appendIf(boolean flag, K key, V value) {
- if (flag)
- append(key, value);
- return this;
- }
-
- /**
- * Add if predicate matches value.
- *
- * @param test The predicate to match against.
- * @param key The key.
- * @param value The value.
- * @return This object.
- */
- public ASortedMap<K,V> appendIf(Predicate<Object> test, K key, V value) {
- return appendIf(passes(test, value), key, value);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Other methods
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Returns an unmodifiable view of this set.
- *
- * @return An unmodifiable view of this set.
- */
- public SortedMap<K,V> unmodifiable() {
- return isEmpty() ? emptySortedMap() : unmodifiableSortedMap(this);
- }
-
- /**
- * Convert to a string using the specified serializer.
- *
- * @param ws The serializer to use to serialize this collection.
- * @return This collection serialized to a string.
- */
- public String asString(WriterSerializer ws) {
- return ws.toString(this);
- }
-
- /**
- * Convert to Simplified JSON.
- *
- * @return This collection serialized to a string.
- */
- public String asJson() {
- return SimpleJsonSerializer.DEFAULT.toString(this);
- }
-}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ASortedSet.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ASortedSet.java
deleted file mode 100644
index 98ecc62..0000000
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ASortedSet.java
+++ /dev/null
@@ -1,272 +0,0 @@
-// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
-// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance *
-// * with the License. You may obtain a copy of the License at *
-// * *
-// * http://www.apache.org/licenses/LICENSE-2.0 *
-// * *
-// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an *
-// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the *
-// * specific language governing permissions and limitations under the License. *
-// ***************************************************************************************************************************
-package org.apache.juneau.internal;
-
-import static java.util.Collections.*;
-import static org.apache.juneau.internal.ConsumerUtils.*;
-
-import java.lang.reflect.*;
-import java.util.*;
-import java.util.function.*;
-
-import org.apache.juneau.json.*;
-import org.apache.juneau.serializer.*;
-
-/**
- * A fluent {@link TreeSet}.
- *
- * <p>
- * Provides various convenience methods for creating and populating a sorted set with minimal code.
- *
- * <h5 class='figure'>Examples:</h5>
- * <p class='bjava'>
- * <jc>// A set of strings.</jc>
- * ASortedSet<String> <jv>set</jv> = ASortedSet.<jsm>of</jsm>(<js>"foo"</js>,<js>"bar"</js>);
- *
- * <jc>// Append to set.</jc>
- * <jv>set</jv>.a(<js>"baz"</js>).a(<js>"qux"</js>);
- *
- * <jc>// Create an unmodifiable view of this set.</jc>
- * Set<String> <jv>set2</jv> = <jv>set</jv>.unmodifiable();
- *
- * <jc>// Convert it to an array.</jc>
- * String[] <jv>array</jv> = <jv>set</jv>.asArrayOf(String.<jk>class</jk>);
- *
- * <jc>// Convert to simplified JSON.</jc>
- * String <jv>json</jv> = <jv>set</jv>.asString();
- *
- * <jc>// Convert to XML.</jc>
- * String <jv>json</jv> = <jv>set</jv>.asString(XmlSerializer.<jsf>DEFAULT</jsm>);
- * </p>
- *
- * <ul class='spaced-list'>
- * <li class='warn'>This class is not thread safe.
- * </ul>
- *
- * <ul class='seealso'>
- * <li class='extlink'>{@source}
- * </ul>
- *
- * @param <T> The entry type.
- * @serial exclude
- */
-@SuppressWarnings({"unchecked"})
-public class ASortedSet<T> extends TreeSet<T> {
-
- private static final long serialVersionUID = 1L;
-
- //------------------------------------------------------------------------------------------------------------------
- // Constructors
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Constructor.
- */
- public ASortedSet() {}
-
- /**
- * Constructor.
- *
- * @param c Comparator.
- */
- public ASortedSet(Comparator<T> c) {
- super(c);
- }
-
- /**
- * Copy constructor.
- *
- * @param c Initial contents. Can be <jk>null</jk>.
- */
- public ASortedSet(Collection<T> c) {
- super(c == null ? emptySet() : c);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Creators
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Convenience method for creating a list of objects.
- *
- * @return A new list.
- */
- public static <T> ASortedSet<T> create() {
- return new ASortedSet<>();
- }
-
- /**
- * Convenience method for creating a list of objects.
- *
- * @param values The initial values.
- * @return A new list.
- */
- @SafeVarargs
- public static <T> ASortedSet<T> of(T...values) {
- return new ASortedSet<T>().a(values);
- }
-
- /**
- * Convenience method for creating a list of objects.
- *
- * @param values The initial values.
- * @return A new list.
- */
- public static <T> ASortedSet<T> of(Collection<T> values) {
- return new ASortedSet<T>().a(values);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Appenders
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Adds the value to this set.
- *
- * @param value The value to add to this set.
- * @return This object.
- */
- public ASortedSet<T> append(T value) {
- add(value);
- return this;
- }
-
- /**
- * Adds all the values in the specified array to this set.
- *
- * @param values The values to add to this set.
- * @return This object.
- */
- public ASortedSet<T> append(T...values) {
- Collections.addAll(this, values);
- return this;
- }
-
- /**
- * Adds all the values in the specified collection to this set.
- *
- * @param values The values to add to this set.
- * @return This object.
- */
- public ASortedSet<T> append(Collection<? extends T> values) {
- addAll(values);
- return this;
- }
-
- /**
- * Same as {@link #append(Object)}.
- *
- * @param value The entry to add to this set.
- * @return This object.
- */
- public ASortedSet<T> a(T value) {
- return append(value);
- }
-
- /**
- * Same as {@link #append(Object[])}.
- *
- * @param values The entries to add to this set.
- * @return This object.
- */
- public ASortedSet<T> a(T...values) {
- return append(values);
- }
-
- /**
- * Same as {@link #append(Collection)}.
- *
- * @param values The entries to add to this set.
- * @return This object.
- */
- public ASortedSet<T> a(Collection<? extends T> values) {
- return append(values);
- }
-
- /**
- * Adds a value to this set if the boolean value is <jk>true</jk>
- *
- * @param flag The boolean value.
- * @param value The value to add.
- * @return This object.
- */
- public ASortedSet<T> appendIf(boolean flag, T value) {
- if (flag)
- a(value);
- return this;
- }
-
- /**
- * Adds entries to this set skipping <jk>null</jk> values.
- *
- * @param values The objects to add to the list.
- * @return This object.
- */
- public ASortedSet<T> appendIfNotNull(T...values) {
- for (T o2 : values)
- if (o2 != null)
- a(o2);
- return this;
- }
-
- /**
- * Add if predicate matches.
- *
- * @param test The predicate to match against.
- * @param value The value to add if the predicate matches.
- * @return This object.
- */
- public ASortedSet<T> appendIf(Predicate<Object> test, T value) {
- return appendIf(passes(test, value), value);
- }
-
- //------------------------------------------------------------------------------------------------------------------
- // Other methods
- //------------------------------------------------------------------------------------------------------------------
-
- /**
- * Returns an unmodifiable view of this set.
- *
- * @return An unmodifiable view of this set.
- */
- public SortedSet<T> unmodifiable() {
- return isEmpty() ? emptySortedSet() : unmodifiableSortedSet(this);
- }
-
- /**
- * Convert the contents of this set into a new array.
- *
- * @param c The component type of the array.
- * @return A new array.
- */
- public <T2> T2[] asArrayOf(Class<T2> c) {
- return toArray((T2[])Array.newInstance(c, size()));
- }
-
- /**
- * Convert to a string using the specified serializer.
- *
- * @param ws The serializer to use to serialize this collection.
- * @return This collection serialized to a string.
- */
- public String asString(WriterSerializer ws) {
- return ws.toString(this);
- }
-
- /**
- * Convert to Simplified JSON.
- *
- * @return This collection serialized to a string.
- */
- public String asJson() {
- return SimpleJsonSerializer.DEFAULT.toString(this);
- }
-}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ArrayBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ArrayBuilder.java
index c4937c5..eaebefb 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ArrayBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ArrayBuilder.java
@@ -31,7 +31,7 @@ import java.util.function.*;
*
* @param <T> The array element type.
*/
-public class ArrayBuilder<T> {
+public final class ArrayBuilder<T> {
//-----------------------------------------------------------------------------------------------------------------
// Static
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/CollectionUtils.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/CollectionUtils.java
index da763db..4e62ba6 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/CollectionUtils.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/CollectionUtils.java
@@ -14,6 +14,7 @@ package org.apache.juneau.internal;
import java.lang.reflect.*;
import java.util.*;
+import java.util.function.*;
/**
* Utility methods for collections.
@@ -148,6 +149,278 @@ public final class CollectionUtils {
}
/**
+ * Convenience method for creating an {@link ArrayList}.
+ *
+ * @param values The values to initialize the list with.
+ * @return A new modifiable list.
+ */
+ @SafeVarargs
+ public static <T> ArrayList<T> list(T...values) {
+ ArrayList<T> l = new ArrayList<>(values.length);
+ for (T v : values)
+ l.add(v);
+ return l;
+ }
+
+ /**
+ * Creates an {@link ArrayList} copy from a collection.
+ *
+ * @param value The collection to copy from.
+ * @return A new modifiable list.
+ */
+ public static <T> ArrayList<T> listFrom(Collection<T> value) {
+ ArrayList<T> l = new ArrayList<>();
+ value.forEach(x -> l.add(x));
+ return l;
+ }
+
+ /**
+ * Convenience method for creating a {@link LinkedHashSet}.
+ *
+ * @param values The values to initialize the set with.
+ * @return A new modifiable set.
+ */
+ @SafeVarargs
+ public static <T> LinkedHashSet<T> set(T...values) {
+ LinkedHashSet<T> l = new LinkedHashSet<>();
+ for (T v : values)
+ l.add(v);
+ return l;
+ }
+
+ /**
+ * Convenience method for creating an unmodifiable {@link LinkedHashSet}.
+ *
+ * @param values The values to initialize the set with.
+ * @return A new modifiable set.
+ */
+ @SafeVarargs
+ public static <T> Set<T> unmodifiableSet(T...values) {
+ return unmodifiable(set(values));
+ }
+
+ /**
+ * Convenience method for creating a {@link TreeSet}.
+ *
+ * @param values The values to initialize the set with.
+ * @return A new modifiable set.
+ */
+ @SafeVarargs
+ public static <T> TreeSet<T> sortedSet(T...values) {
+ TreeSet<T> l = new TreeSet<>();
+ for (T v : values)
+ l.add(v);
+ return l;
+ }
+
+ /**
+ * Convenience method for creating a {@link LinkedHashMap}.
+ *
+ * @return A new modifiable map.
+ */
+ public static <K,V> LinkedHashMap<K,V> map() {
+ LinkedHashMap<K,V> m = new LinkedHashMap<>();
+ return m;
+ }
+
+ /**
+ * Convenience method for creating a {@link LinkedHashMap}.
+ *
+ * @param k1 Key 1.
+ * @param v1 Value 1.
+ * @return A new modifiable map.
+ */
+ public static <K,V> LinkedHashMap<K,V> map(K k1, V v1) {
+ LinkedHashMap<K,V> m = new LinkedHashMap<>();
+ m.put(k1, v1);
+ return m;
+ }
+
+ /**
+ * Convenience method for creating a {@link LinkedHashMap}.
+ *
+ * @param k1 Key 1.
+ * @param v1 Value 1.
+ * @param k2 Key 2.
+ * @param v2 Value 2.
+ * @return A new modifiable map.
+ */
+ public static <K,V> LinkedHashMap<K,V> map(K k1, V v1, K k2, V v2) {
+ LinkedHashMap<K,V> m = new LinkedHashMap<>();
+ m.put(k1, v1);
+ m.put(k2, v2);
+ return m;
+ }
+
+ /**
+ * Convenience method for creating a {@link LinkedHashMap}.
+ *
+ * @param k1 Key 1.
+ * @param v1 Value 1.
+ * @param k2 Key 2.
+ * @param v2 Value 2.
+ * @param k3 Key 3.
+ * @param v3 Value 3.
+ * @return A new modifiable map.
+ */
+ public static <K,V> LinkedHashMap<K,V> map(K k1, V v1, K k2, V v2, K k3, V v3) {
+ LinkedHashMap<K,V> m = new LinkedHashMap<>();
+ m.put(k1, v1);
+ m.put(k2, v2);
+ m.put(k3, v3);
+ return m;
+ }
+
+ /**
+ * Convenience method for copying a list.
+ *
+ * @param value The list to copy.
+ * @return A new modifiable list.
+ */
+ public static <T> ArrayList<T> copyOf(List<T> value) {
+ if (value == null)
+ return null;
+ ArrayList<T> l2 = new ArrayList<>();
+ value.forEach(x -> l2.add(x));
+ return l2;
+ }
+
+ /**
+ * Convenience method for creating an {@link ArrayList} and sorting it.
+ *
+ * @param values The values to initialize the list with.
+ * @return A new modifiable list.
+ */
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ @SafeVarargs
+ public static <T> ArrayList<T> sortedList(T...values) {
+ ArrayList<T> l = list(values);
+ Collections.sort((List<Comparable>) l);
+ return l;
+ }
+
+ /**
+ * Convenience method for creating an {@link ArrayList} and sorting it.
+ *
+ * @param comparator The comparator to use to sort the list.
+ * @param values The values to initialize the list with.
+ * @return A new modifiable list.
+ */
+ public static <T> ArrayList<T> sortedList(Comparator<T> comparator, T[] values) {
+ ArrayList<T> l = list(values);
+ Collections.sort(l, comparator);
+ return l;
+ }
+
+ /**
+ * Convenience method for creating an {@link ArrayList} and sorting it.
+ *
+ * @param comparator The comparator to use to sort the list.
+ * @param value The values to initialize the list with.
+ * @return A new modifiable list.
+ */
+ public static <T> ArrayList<T> sortedList(Comparator<T> comparator, Collection<T> value) {
+ ArrayList<T> l = listFrom(value);
+ Collections.sort(l, comparator);
+ return l;
+ }
+
+ /**
+ * Wraps the specified list in {@link Collections#unmodifiableList(List)}.
+ *
+ * @param value The list to wrap.
+ * @return The wrapped list.
+ */
+ public static <T> List<T> unmodifiable(List<T> value) {
+ return value == null ? null: Collections.unmodifiableList(value);
+ }
+
+ /**
+ * Wraps the specified set in {@link Collections#unmodifiableSet(Set)}.
+ *
+ * @param value The set to wrap.
+ * @return The wrapped set.
+ */
+ public static <T> Set<T> unmodifiable(Set<T> value) {
+ return value == null ? null: Collections.unmodifiableSet(value);
+ }
+
+ /**
+ * Wraps the specified map in {@link Collections#unmodifiableMap(Map)}.
+ *
+ * @param value The map to wrap.
+ * @return The wrapped map.
+ */
+ public static <K,V> Map<K,V> unmodifiable(Map<K,V> value) {
+ return value == null ? null: Collections.unmodifiableMap(value);
+ }
+
+ /**
+ * Converts the specified collection to an array.
+ *
+ * @param value The collection to convert.
+ * @return A new array.
+ */
+ @SuppressWarnings("unchecked")
+ public static <T> T[] array(Collection<T> value) {
+ return array(value, (Class<T>)value.getClass().getComponentType());
+ }
+
+ /**
+ * Converts the specified collection to an array.
+ *
+ * @param value The collection to convert.
+ * @param componentType The component type of the array.
+ * @return A new array.
+ */
+ @SuppressWarnings("unchecked")
+ public static <T> T[] array(Collection<T> value, Class<T> componentType) {
+ if (value == null)
+ return null;
+ T[] array = (T[])Array.newInstance(componentType, value.size());
+ return value.toArray(array);
+ }
+
+ /**
+ * Iterates the specified list in reverse order.
+ *
+ * @param value The list to iterate.
+ * @param action The action to perform.
+ */
+ public static <T> void forEachReverse(List<T> value, Consumer<T> action) {
+ if (value instanceof ArrayList) {
+ for (int i = value.size()-1; i >= 0; i--)
+ action.accept(value.get(i));
+ } else {
+ ListIterator<T> i = value.listIterator(value.size());
+ while (i.hasPrevious())
+ action.accept(i.previous());
+ }
+ }
+
+ /**
+ * Iterates the specified array in reverse order.
+ *
+ * @param value The array to iterate.
+ * @param action The action to perform.
+ */
+ public static <T> void forEachReverse(T[] value, Consumer<T> action) {
+ for (int i = value.length-1; i >= 0; i--)
+ action.accept(value[i]);
+ }
+
+ /**
+ * Adds all the specified values to the specified collection.
+ *
+ * @param value The collection to add to.
+ * @param entries The entries to add.
+ */
+ @SafeVarargs
+ public static <T> void addAll(Collection<T> value, T...entries) {
+ Collections.addAll(value, entries);
+ }
+
+ /**
* Returns the last entry in a list.
*
* @param <T> The element type.
@@ -172,4 +445,23 @@ public final class CollectionUtils {
return null;
return l[l.length-1];
}
+
+ /**
+ * Returns an optional of the specified value.
+ *
+ * @param value The value.
+ * @return A new Optional.
+ */
+ public static <T> Optional<T> optional(T value) {
+ return Optional.ofNullable(value);
+ }
+
+ /**
+ * Returns an empty {@link Optional}.
+ *
+ * @return An empty {@link Optional}.
+ */
+ public static <T> Optional<T> empty() {
+ return Optional.empty();
+ }
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ListBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ListBuilder.java
index 9cc674b..edc738b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ListBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ListBuilder.java
@@ -31,7 +31,26 @@ import org.apache.juneau.parser.*;
*
* @param <E> Element type.
*/
-public class ListBuilder<E> {
+public final class ListBuilder<E> {
+
+ //-----------------------------------------------------------------------------------------------------------------
+ // Static
+ //-----------------------------------------------------------------------------------------------------------------
+
+ /**
+ * Static creator.
+ *
+ * @param elementType The element type.
+ * @param elementTypeArgs Optional element type arguments.
+ * @return A new builder.
+ */
+ public static <E> ListBuilder<E> create(Class<E> elementType, Type...elementTypeArgs) {
+ return new ListBuilder<>(elementType, elementTypeArgs);
+ }
+
+ //-----------------------------------------------------------------------------------------------------------------
+ // Instance
+ //-----------------------------------------------------------------------------------------------------------------
private List<E> list;
private boolean unmodifiable = false, sparse = false;
@@ -235,4 +254,17 @@ public class ListBuilder<E> {
}
return this;
}
+
+ /**
+ * Appends a value to this list of the flag is true.
+ *
+ * @param flag The flag.
+ * @param value The value.
+ * @return This object.
+ */
+ public ListBuilder<E> addIf(boolean flag, E value) {
+ if (flag)
+ add(value);
+ return this;
+ }
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/MapBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/MapBuilder.java
index eaaaecb..8b7a4f1 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/MapBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/MapBuilder.java
@@ -33,7 +33,7 @@ import org.apache.juneau.parser.*;
* @param <K> Key type.
* @param <V> Value type.
*/
-public class MapBuilder<K,V> {
+public final class MapBuilder<K,V> {
private Map<K,V> map;
private boolean unmodifiable = false, sparse = false;
@@ -224,4 +224,19 @@ public class MapBuilder<K,V> {
}
return this;
}
+
+ /**
+ * Adds a list of key/value pairs to this map.
+ *
+ * @param pairs The pairs to add.
+ * @return This object.
+ */
+ @SuppressWarnings("unchecked")
+ public MapBuilder<K,V> addPairs(Object...pairs) {
+ if (pairs.length % 2 != 0)
+ throw runtimeException("Odd number of parameters passed into AMap.ofPairs()");
+ for (int i = 0; i < pairs.length; i+=2)
+ add((K)pairs[i], (V)pairs[i+1]);
+ return this;
+ }
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ReverseIterable.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ReverseIterable.java
deleted file mode 100644
index a601101..0000000
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/ReverseIterable.java
+++ /dev/null
@@ -1,71 +0,0 @@
-// ***************************************************************************************************************************
-// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file *
-// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
-// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance *
-// * with the License. You may obtain a copy of the License at *
-// * *
-// * http://www.apache.org/licenses/LICENSE-2.0 *
-// * *
-// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an *
-// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the *
-// * specific language governing permissions and limitations under the License. *
-// ***************************************************************************************************************************
-package org.apache.juneau.internal;
-
-import java.util.*;
-
-/**
- * Implements a reversed iteration {@link Iterable} without altering the underlying list.
- *
- * <ul class='seealso'>
- * <li class='extlink'>{@source}
- * </ul>
- *
- * @param <T> The entry type.
- */
-public class ReverseIterable<T> implements Iterable<T> {
- private final List<T> list;
-
- /**
- * Constructor
- *
- * @param list The original list.
- */
- public ReverseIterable(List<T> list) {
- this.list = list;
- }
-
- /**
- * Convenience method for constructing instances.
- *
- * @param list The original list.
- * @return A new {@link ReverseIterable}.
- */
- public static <T> ReverseIterable<T> of(List<T> list) {
- return new ReverseIterable<>(list);
- }
-
- /**
- * Convenience method for constructing instances.
- *
- * @param list The original list.
- * @return A new {@link ReverseIterable}.
- */
- public static <T> ReverseIterable<T> of(T[] list) {
- return new ReverseIterable<>(Arrays.asList(list));
- }
-
- @Override
- public Iterator<T> iterator() {
- final ListIterator<T> i = list.listIterator(list.size());
-
- return new Iterator<T>() {
- @Override
- public boolean hasNext() { return i.hasPrevious(); }
- @Override
- public T next() { return i.previous(); }
- @Override
- public void remove() { i.remove(); }
- };
- }
-}
\ No newline at end of file
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/SetBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/SetBuilder.java
index 4268df0..624254d 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/SetBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/SetBuilder.java
@@ -18,7 +18,6 @@ import static org.apache.juneau.internal.StringUtils.*;
import java.lang.reflect.*;
import java.util.*;
-
import org.apache.juneau.collections.*;
import org.apache.juneau.parser.*;
@@ -31,7 +30,7 @@ import org.apache.juneau.parser.*;
*
* @param <E> Element type.
*/
-public class SetBuilder<E> {
+public final class SetBuilder<E> {
private Set<E> set;
private boolean unmodifiable, sparse;
@@ -238,4 +237,17 @@ public class SetBuilder<E> {
}
return this;
}
+
+ /**
+ * Adds a value to this set if the specified flag is true.
+ *
+ * @param flag The flag.
+ * @param value The value.
+ * @return This object.
+ */
+ public SetBuilder<E> addIf(boolean flag, E value) {
+ if (flag)
+ add(value);
+ return this;
+ }
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/StringUtils.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/StringUtils.java
index fb827a1..49800ad 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/StringUtils.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/StringUtils.java
@@ -547,6 +547,16 @@ public final class StringUtils {
}
/**
+ * Same as {@link #split(String)} but consumes the tokens instead of creating an array.
+ *
+ * @param s The string to split.
+ * @param consumer The consumer of the tokens.
+ */
+ public static void split(String s, Consumer<String> consumer) {
+ split(s, ',', consumer);
+ }
+
+ /**
* Splits a character-delimited string into a string array.
*
* <p>
@@ -574,6 +584,41 @@ public final class StringUtils {
}
/**
+ * Same as {@link #split(String,char)} but consumes the tokens instead of creating an array.
+ *
+ * @param s The string to split.
+ * @param c The character to split on.
+ * @param consumer The consumer of the tokens.
+ */
+ public static void split(String s, char c, Consumer<String> consumer) {
+ AsciiSet escapeChars = getEscapeSet(c);
+
+ if (s == null)
+ return;
+ if (isEmpty(s))
+ return;
+ if (s.indexOf(c) == -1) {
+ consumer.accept(s);
+ return;
+ }
+
+ int x1 = 0, escapeCount = 0;
+ for (int i = 0; i < s.length(); i++) {
+ if (s.charAt(i) == '\\') escapeCount++;
+ else if (s.charAt(i)==c && escapeCount % 2 == 0) {
+ String s2 = s.substring(x1, i);
+ String s3 = unEscapeChars(s2, escapeChars);
+ consumer.accept(s3.trim());
+ x1 = i+1;
+ }
+ if (s.charAt(i) != '\\') escapeCount = 0;
+ }
+ String s2 = s.substring(x1);
+ String s3 = unEscapeChars(s2, escapeChars);
+ consumer.accept(s3.trim());
+ }
+
+ /**
* Same as {@link #split(String, char)} but limits the number of tokens returned.
*
* @param s The string to split. Can be <jk>null</jk>.
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/SystemEnv.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/SystemEnv.java
index 56d035d..76ab448 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/SystemEnv.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/SystemEnv.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.internal;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import java.nio.charset.*;
@@ -57,7 +58,7 @@ public class SystemEnv {
String s = System.getProperty(name);
if (s == null)
s = System.getenv(envName(name));
- return Optional.ofNullable(s);
+ return optional(s);
}
@SuppressWarnings({ "unchecked", "rawtypes" })
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserSession.java
index 7a232fd..03e44cf 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserSession.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.json;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.io.*;
@@ -284,7 +285,7 @@ public final class JsonParserSession extends ReaderParserSession {
sType = eType;
if (sType.isOptional())
- return (T)Optional.ofNullable(parseAnything(eType.getElementType(), r, outer, pMeta));
+ return (T)optional(parseAnything(eType.getElementType(), r, outer, pMeta));
setCurrentClass(sType);
String wrapperAttr = getJsonClassMeta(sType).getWrapperAttr();
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGenerator.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGenerator.java
index a7c3ed6..cbafc6f 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGenerator.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGenerator.java
@@ -880,9 +880,7 @@ public class JsonSchemaGenerator extends BeanTraverseContext implements JsonSche
ignoreTypes = builder.ignoreTypes == null ? emptySet() : new TreeSet<>(builder.ignoreTypes);
Set<Pattern> ignoreTypePatterns = new LinkedHashSet<>();
- for (String s : ignoreTypes)
- for (String s2 : split(s))
- ignoreTypePatterns.add(Pattern.compile(s2.replace(".", "\\.").replace("*", ".*")));
+ ignoreTypes.forEach(y -> split(y, x -> ignoreTypePatterns.add(Pattern.compile(x.replace(".", "\\.").replace("*", ".*")))));
this.ignoreTypePatterns = ignoreTypePatterns;
try {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/SchemaUtils.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/SchemaUtils.java
index e89e626..ce4d743 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/SchemaUtils.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/SchemaUtils.java
@@ -14,6 +14,7 @@ package org.apache.juneau.jsonschema;
import static org.apache.juneau.internal.ClassUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
@@ -89,7 +90,7 @@ public class SchemaUtils {
String s = joinnl(ss);
if (s.isEmpty())
return null;
- Set<String> set = ASet.of();
+ Set<String> set = set();
for (Object o : StringUtils.parseListOrCdl(s))
set.add(o.toString());
return set;
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/TypeCategory.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/TypeCategory.java
index 980cc9e..406284b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/TypeCategory.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/TypeCategory.java
@@ -12,10 +12,10 @@
// ***************************************************************************************************************************
package org.apache.juneau.jsonschema;
+import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.util.*;
-import org.apache.juneau.internal.*;
-
/**
* Represents possible values for JSONSCHEMA_addExamplesTo and JSONSCHEMA_addDescriptionsTo.
*
@@ -70,9 +70,8 @@ public enum TypeCategory {
public static Set<TypeCategory> parse(String s) {
if (s == null || s.isEmpty())
return Collections.emptySet();
- Set<TypeCategory> set = new LinkedHashSet<>();
- for (String ss : StringUtils.split(s))
- set.add(valueOf(ss.toUpperCase()));
+ Set<TypeCategory> set = set();
+ split(s, x -> set.add(valueOf(x.toUpperCase())));
return set;
}
@@ -85,9 +84,8 @@ public enum TypeCategory {
public static TypeCategory[] parseArray(String s) {
if (s == null || s.isEmpty())
return new TypeCategory[0];
- List<TypeCategory> x = new ArrayList<>();
- for (String ss : StringUtils.split(s))
- x.add(valueOf(ss.toUpperCase()));
- return x.toArray(new TypeCategory[x.size()]);
+ List<TypeCategory> list = list();
+ split(s, x -> list.add(valueOf(x.toUpperCase())));
+ return list.toArray(new TypeCategory[list.size()]);
}
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserSession.java
index ee50d86..342a529 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserSession.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.msgpack;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.msgpack.DataType.*;
import java.io.IOException;
@@ -216,7 +217,7 @@ public final class MsgPackParserSession extends InputStreamParserSession {
sType = eType;
if (sType.isOptional())
- return (T)Optional.ofNullable(parseAnything(eType.getElementType(), is, outer, pMeta));
+ return (T)optional(parseAnything(eType.getElementType(), is, outer, pMeta));
setCurrentClass(sType);
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserSession.java
index 83657ba..d386d1b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserSession.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.oapi;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.httppart.HttpPartCollectionFormat.*;
import static org.apache.juneau.httppart.HttpPartDataType.*;
@@ -252,7 +253,7 @@ public class OpenApiParserSession extends UonParserSession {
schema.validateOutput(t, ctx.getBeanContext());
if (isOptional)
- t = (T)Optional.ofNullable(t);
+ t = (T)optional(t);
return t;
}
@@ -282,7 +283,7 @@ public class OpenApiParserSession extends UonParserSession {
sType = type;
if (sType.isOptional())
- return (T)Optional.ofNullable(parseInner(partType, schema, in, sType.getElementType()));
+ return (T)optional(parseInner(partType, schema, in, sType.getElementType()));
HttpPartDataType t = schema.getType(sType);
if (partType == null)
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 8fd7b11..4f87446 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
@@ -12,8 +12,10 @@
// ***************************************************************************************************************************
package org.apache.juneau.parser;
-import static java.util.Optional.*;
import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
+
import java.io.*;
import java.lang.annotation.*;
import java.lang.reflect.*;
@@ -1019,7 +1021,7 @@ public class Parser extends BeanContextable {
unbuffered = builder.unbuffered;
listener = builder.listener;
- String[] _consumes = StringUtils.split(ofNullable(consumes).orElse(""), ',');
+ String[] _consumes = split(optional(consumes).orElse(""));
this.consumesArray = new MediaType[_consumes.length];
for (int i = 0; i < _consumes.length; i++) {
this.consumesArray[i] = MediaType.of(_consumes[i]);
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserSet.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserSet.java
index 42ddfe4..590f012 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserSet.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserSet.java
@@ -13,6 +13,7 @@
package org.apache.juneau.parser;
import static org.apache.juneau.http.HttpHeaders.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ObjectUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import static java.util.Arrays.*;
@@ -154,7 +155,7 @@ public final class ParserSet {
*/
protected Builder(BeanStore beanStore) {
super(ParserSet.class, beanStore);
- this.entries = AList.create();
+ this.entries = list();
}
/**
@@ -164,7 +165,7 @@ public final class ParserSet {
*/
protected Builder(ParserSet copyFrom) {
super(copyFrom.getClass(), BeanStore.INSTANCE);
- this.entries = AList.create().append(asList(copyFrom.entries));
+ this.entries = list((Object[])copyFrom.entries);
}
/**
@@ -178,7 +179,7 @@ public final class ParserSet {
protected Builder(Builder copyFrom) {
super(copyFrom);
bcBuilder = copyFrom.bcBuilder == null ? null : copyFrom.bcBuilder.copy();
- entries = AList.create();
+ entries = list();
copyFrom.entries.stream().map(x -> copyBuilder(x)).forEach(x -> entries.add(x));
}
@@ -498,8 +499,8 @@ public final class ParserSet {
this.entries = builder.entries.stream().map(x -> build(x)).toArray(Parser[]::new);
- AList<MediaType> lmt = AList.create();
- AList<Parser> l = AList.create();
+ List<MediaType> lmt = list();
+ List<Parser> l = list();
for (Parser e : entries) {
for (MediaType m: e.getMediaTypes()) {
lmt.add(m);
@@ -507,8 +508,8 @@ public final class ParserSet {
}
}
- this.mediaTypes = lmt.unmodifiable();
- this.mediaTypeParsers = l.unmodifiable();
+ this.mediaTypes = unmodifiable(lmt);
+ this.mediaTypeParsers = unmodifiable(l);
}
private Parser build(Object o) {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/pojotools/SearchArgs.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/pojotools/SearchArgs.java
index 03278d4..79d95b9 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/pojotools/SearchArgs.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/pojotools/SearchArgs.java
@@ -12,6 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.pojotools;
+import static org.apache.juneau.internal.StringUtils.*;
+
import java.util.*;
import org.apache.juneau.internal.*;
@@ -36,7 +38,7 @@ public class SearchArgs {
* @param searchArgs Search arguments.
*/
public SearchArgs(String searchArgs) {
- this(Arrays.asList(StringUtils.split(searchArgs, ',')));
+ this(Arrays.asList(split(searchArgs)));
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/AnnotationInfo.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/AnnotationInfo.java
index dd7f68d..f38b378 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/AnnotationInfo.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/AnnotationInfo.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.reflect;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConsumerUtils.*;
import java.lang.annotation.*;
@@ -314,11 +315,11 @@ public class AnnotationInfo<T extends Annotation> {
try {
V v = (V)m.invoke(a);
if (passes(test, v))
- return Optional.of(v);
+ return optional(v);
} catch (Exception e) {
e.printStackTrace(); // Shouldn't happen.
}
}
- return Optional.empty();
+ return empty();
}
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ClassInfo.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ClassInfo.java
index f8cf478..f7cef84 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ClassInfo.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ClassInfo.java
@@ -16,6 +16,7 @@ import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.assertions.Assertions.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import static org.apache.juneau.internal.ObjectUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConsumerUtils.*;
import java.lang.annotation.*;
@@ -463,7 +464,7 @@ public final class ClassInfo {
/**
* Returns all methods declared on this class.
- *
+ *
* @return
* All methods declared on this class.
* <br>Results are ordered alphabetically.
@@ -665,7 +666,7 @@ public final class ClassInfo {
/**
* Returns all the constructors defined on this class.
*
- * @return
+ * @return
* All constructors defined on this class.
* <br>List is unmodifiable.
*/
@@ -841,7 +842,7 @@ public final class ClassInfo {
* <p>
* Results are ordered parent-to-child, and then alphabetical per class.
*
- * @return
+ * @return
* All declared fields on this class.
* <br>List is unmodifiable.
*/
@@ -1606,25 +1607,26 @@ public final class ClassInfo {
pmap2.put(Double.class, double.class);
}
- private static final Map<Class<?>,Object> primitiveDefaultMap = Collections.unmodifiableMap(
- AMap.<Class<?>,Object>create()
- .a(Boolean.TYPE, false)
- .a(Character.TYPE, (char)0)
- .a(Short.TYPE, (short)0)
- .a(Integer.TYPE, 0)
- .a(Long.TYPE, 0l)
- .a(Float.TYPE, 0f)
- .a(Double.TYPE, 0d)
- .a(Byte.TYPE, (byte)0)
- .a(Boolean.class, false)
- .a(Character.class, (char)0)
- .a(Short.class, (short)0)
- .a(Integer.class, 0)
- .a(Long.class, 0l)
- .a(Float.class, 0f)
- .a(Double.class, 0d)
- .a(Byte.class, (byte)0)
- );
+ @SuppressWarnings("rawtypes")
+ private static final Map<Class,Object> primitiveDefaultMap =
+ mapBuilder(Class.class,Object.class).unmodifiable()
+ .add(Boolean.TYPE, false)
+ .add(Character.TYPE, (char)0)
+ .add(Short.TYPE, (short)0)
+ .add(Integer.TYPE, 0)
+ .add(Long.TYPE, 0l)
+ .add(Float.TYPE, 0f)
+ .add(Double.TYPE, 0d)
+ .add(Byte.TYPE, (byte)0)
+ .add(Boolean.class, false)
+ .add(Character.class, (char)0)
+ .add(Short.class, (short)0)
+ .add(Integer.class, 0)
+ .add(Long.class, 0l)
+ .add(Float.class, 0f)
+ .add(Double.class, 0d)
+ .add(Byte.class, (byte)0)
+ .build();
//-----------------------------------------------------------------------------------------------------------------
// Labels
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ParamInfo.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ParamInfo.java
index 4d7fa2e..7c33384 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ParamInfo.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ParamInfo.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.reflect;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ConsumerUtils.*;
import java.lang.annotation.*;
@@ -146,7 +147,7 @@ public final class ParamInfo {
public <A extends Annotation> A getAnnotation(Class<A> type) {
Optional<Annotation> o = annotationMap().get(type);
if (o == null) {
- o = Optional.ofNullable(findAnnotation(type));
+ o = optional(findAnnotation(type));
annotationMap().put(type, o);
}
return o.isPresent() ? (A)o.get() : null;
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 70536a8..8a8c246 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
@@ -12,8 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.serializer;
-import static java.util.Optional.*;
import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.io.*;
import java.lang.annotation.*;
@@ -1330,8 +1331,8 @@ public class Serializer extends BeanTraverseContext {
listener = builder.listener;
this.producesMediaType = MediaType.of(produces);
- this.acceptRanges = ofNullable(accept).map(MediaRanges::of).orElseGet(()->MediaRanges.of(produces));
- this.acceptMediaTypes = ofNullable(builder.accept).map(x -> StringUtils.split(x, ',')).map(MediaType::ofAll).orElseGet(()->new MediaType[] {this.producesMediaType});
+ this.acceptRanges = optional(accept).map(MediaRanges::of).orElseGet(()->MediaRanges.of(produces));
+ this.acceptMediaTypes = optional(builder.accept).map(x -> split(x)).map(MediaType::ofAll).orElseGet(()->new MediaType[] {this.producesMediaType});
}
@Override /* Context */
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerSet.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerSet.java
index bc0a954..5e10fbe 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerSet.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerSet.java
@@ -17,6 +17,7 @@ import static org.apache.juneau.internal.ThrowableUtils.*;
import static java.util.Arrays.*;
import static java.util.Collections.*;
import static java.util.stream.Collectors.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ObjectUtils.*;
import java.util.*;
@@ -153,7 +154,7 @@ public final class SerializerSet {
*/
protected Builder(BeanStore beanStore) {
super(SerializerSet.class, beanStore);
- this.entries = AList.create();
+ this.entries = list();
}
/**
@@ -163,7 +164,7 @@ public final class SerializerSet {
*/
protected Builder(SerializerSet copyFrom) {
super(copyFrom.getClass());
- this.entries = AList.create().append(asList(copyFrom.entries));
+ this.entries = list((Object[])copyFrom.entries);
}
/**
@@ -177,7 +178,7 @@ public final class SerializerSet {
protected Builder(Builder copyFrom) {
super(copyFrom);
bcBuilder = copyFrom.bcBuilder == null ? null : copyFrom.bcBuilder.copy();
- entries = AList.create();
+ entries = list();
copyFrom.entries.stream().map(x -> copyBuilder(x)).forEach(x -> entries.add(x));
}
@@ -499,9 +500,9 @@ public final class SerializerSet {
this.entries = builder.entries.stream().map(x -> build(x)).toArray(Serializer[]::new);
- AList<MediaRange> lmtr = AList.create();
- ASet<MediaType> lmt = ASet.of();
- AList<Serializer> l = AList.create();
+ List<MediaRange> lmtr = list();
+ Set<MediaType> lmt = set();
+ List<Serializer> l = list();
for (Serializer e : entries) {
for (MediaRange m: e.getMediaTypeRanges().getRanges()) {
lmtr.add(m);
@@ -511,9 +512,9 @@ public final class SerializerSet {
lmt.add(mt);
}
- this.mediaRanges = lmtr.unmodifiable();
- this.mediaTypesList = AList.of(lmt).unmodifiable();
- this.mediaTypeRangeSerializers = l.unmodifiable();
+ this.mediaRanges = unmodifiable(lmtr);
+ this.mediaTypesList = unmodifiable(listFrom(lmt));
+ this.mediaTypeRangeSerializers = unmodifiable(l);
}
private Serializer build(Object o) {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializer.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
index 738ce4d..231b1b4 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
@@ -12,9 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.serializer;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import static org.apache.juneau.collections.OMap.*;
-import static java.util.Optional.*;
import java.lang.annotation.*;
import java.lang.reflect.*;
@@ -1002,7 +1002,7 @@ public class WriterSerializer extends Serializer {
fileCharset = builder.fileCharset;
useWhitespace = builder.useWhitespace;
- quoteCharValue = ofNullable(quoteCharOverride).orElse(ofNullable(quoteChar).orElse('"'));
+ quoteCharValue = optional(quoteCharOverride).orElse(optional(quoteChar).orElse('"'));
}
@Override /* Context */
@@ -1110,7 +1110,7 @@ public class WriterSerializer extends Serializer {
* The character used for quoting attributes and values.
*/
protected Character quoteChar() {
- return ofNullable(quoteCharOverride).orElse(quoteChar);
+ return optional(quoteCharOverride).orElse(quoteChar);
}
/**
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerSession.java
index 66e7ce9..a4b93e8 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerSession.java
@@ -12,6 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.soap;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
import java.io.IOException;
import java.lang.reflect.*;
import java.nio.charset.*;
@@ -242,7 +244,7 @@ public class SoapXmlSerializerSession extends XmlSerializerSession {
@Override /* Serializer */
public Map<String,String> getResponseHeaders() {
- return AMap.of("SOAPAction",getSoapAction());
+ return map("SOAPAction",getSoapAction());
}
//-----------------------------------------------------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/VarResolver.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/VarResolver.java
index a159ac7..5737db3 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/VarResolver.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/VarResolver.java
@@ -12,6 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.svl;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
import java.io.*;
import java.util.*;
import java.util.concurrent.*;
@@ -258,7 +260,7 @@ public class VarResolver {
for (Var v : vars)
m.put(v.getName(), v);
- this.varMap = AMap.unmodifiable(m);
+ this.varMap = unmodifiable(m);
this.beanStore = BeanStore.of(builder.beanStore());
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/vars/SwitchVar.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/vars/SwitchVar.java
index 752ee2f..9170ec7 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/vars/SwitchVar.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/svl/vars/SwitchVar.java
@@ -13,9 +13,10 @@
package org.apache.juneau.svl.vars;
import static org.apache.juneau.assertions.Assertions.*;
+import static org.apache.juneau.internal.StringUtils.*;
+
import java.util.regex.*;
-import org.apache.juneau.internal.*;
import org.apache.juneau.svl.*;
/**
@@ -70,7 +71,7 @@ public class SwitchVar extends MultipartVar {
for (int i = 1; i < args.length; i++) {
String pattern = args[i];
- String[] parts = StringUtils.split(pattern, ':', 2);
+ String[] parts = split(pattern, ':', 2);
assertArg(parts.length >= 2, "Invalid arguments passed to $SW var. Each case statement must contains 'pattern:value'.");
Pattern p = Pattern.compile(parts[0].replace("*", ".*").replace("?", "."));
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoListSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoListSwap.java
index 0a2a3d3..0b46eb2 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoListSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoListSwap.java
@@ -13,13 +13,13 @@
package org.apache.juneau.swap;
import static org.apache.juneau.internal.ClassUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.lang.reflect.*;
import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
-import org.apache.juneau.internal.*;
import org.apache.juneau.parser.*;
import org.apache.juneau.reflect.*;
import org.apache.juneau.serializer.*;
@@ -81,8 +81,8 @@ import org.apache.juneau.serializer.*;
public class AutoListSwap<T> extends ObjectSwap<T,List<?>> {
private static final Set<String>
- SWAP_METHOD_NAMES = ASet.unmodifiable("toList", "toObjectList", "toOList"),
- UNSWAP_METHOD_NAMES = ASet.unmodifiable("fromList", "fromObjectList", "fromOList", "create", "valueOf");
+ SWAP_METHOD_NAMES = unmodifiableSet("toList", "toObjectList", "toOList"),
+ UNSWAP_METHOD_NAMES = unmodifiableSet("fromList", "fromObjectList", "fromOList", "create", "valueOf");
/**
* Look for constructors and methods on this class and construct a dynamic swap if it's possible to do so.
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoMapSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoMapSwap.java
index 4e753f6..155c2ed 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoMapSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoMapSwap.java
@@ -13,12 +13,13 @@
package org.apache.juneau.swap;
import static org.apache.juneau.internal.ClassUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
import java.lang.reflect.*;
import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
-import org.apache.juneau.internal.*;
import org.apache.juneau.parser.*;
import org.apache.juneau.reflect.*;
import org.apache.juneau.serializer.*;
@@ -80,8 +81,8 @@ import org.apache.juneau.serializer.*;
public class AutoMapSwap<T> extends ObjectSwap<T,Map<?,?>> {
private static final Set<String>
- SWAP_METHOD_NAMES = ASet.unmodifiable("toMap", "toObjectMap", "toOMap"),
- UNSWAP_METHOD_NAMES = ASet.unmodifiable("fromMap", "fromObjectMap", "fromOMap", "create", "valueOf");
+ SWAP_METHOD_NAMES = unmodifiableSet("toMap", "toObjectMap", "toOMap"),
+ UNSWAP_METHOD_NAMES = unmodifiableSet("fromMap", "fromObjectMap", "fromOMap", "create", "valueOf");
/**
* Look for constructors and methods on this class and construct a dynamic swap if it's possible to do so.
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoNumberSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoNumberSwap.java
index 7f6d4b6..d93b924 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoNumberSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoNumberSwap.java
@@ -13,6 +13,7 @@
package org.apache.juneau.swap;
import static org.apache.juneau.internal.ClassUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.lang.reflect.*;
import java.util.*;
@@ -103,8 +104,8 @@ import org.apache.juneau.serializer.*;
public class AutoNumberSwap<T> extends ObjectSwap<T,Number> {
private static final Set<String>
- SWAP_METHOD_NAMES = ASet.unmodifiable("toNumber", "toInteger", "toInt", "toLong", "toFloat", "toDouble", "toShort", "toByte"),
- UNSWAP_METHOD_NAMES = ASet.unmodifiable("fromInteger", "fromInt", "fromLong", "fromFloat", "fromDouble", "fromShort", "fromByte", "create", "valueOf");
+ SWAP_METHOD_NAMES = unmodifiableSet("toNumber", "toInteger", "toInt", "toLong", "toFloat", "toDouble", "toShort", "toByte"),
+ UNSWAP_METHOD_NAMES = unmodifiableSet("fromInteger", "fromInt", "fromLong", "fromFloat", "fromDouble", "fromShort", "fromByte", "create", "valueOf");
/**
* Look for constructors and methods on this class and construct a dynamic swap if it's possible to do so.
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoObjectSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoObjectSwap.java
index 924dbf9..15e65f3 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoObjectSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/AutoObjectSwap.java
@@ -13,13 +13,13 @@
package org.apache.juneau.swap;
import static org.apache.juneau.internal.ClassUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.lang.reflect.*;
import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.annotation.*;
-import org.apache.juneau.internal.*;
import org.apache.juneau.parser.*;
import org.apache.juneau.reflect.*;
import org.apache.juneau.serializer.*;
@@ -83,8 +83,8 @@ import org.apache.juneau.serializer.*;
public class AutoObjectSwap<T> extends ObjectSwap<T,Object> {
private static final Set<String>
- SWAP_METHOD_NAMES = ASet.unmodifiable("swap", "toObject"),
- UNSWAP_METHOD_NAMES = ASet.unmodifiable("unswap", "create", "fromObject", "of");
+ SWAP_METHOD_NAMES = unmodifiableSet("swap", "toObject"),
+ UNSWAP_METHOD_NAMES = unmodifiableSet("unswap", "create", "fromObject", "of");
/**
* Inspects the specified class and returns a swap of this type if possible.
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/SurrogateSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/SurrogateSwap.java
index 4f30797..cacb05e 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/SurrogateSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/swap/SurrogateSwap.java
@@ -13,7 +13,7 @@
package org.apache.juneau.swap;
import static org.apache.juneau.internal.ClassUtils.*;
-import static java.util.Optional.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.lang.reflect.*;
import java.util.*;
@@ -73,7 +73,7 @@ public class SurrogateSwap<T,F> extends ObjectSwap<T,F> {
Class<?> pt = cc.getRawParamType(0);
if (! pt.equals(c.getDeclaringClass())) {
// Find the unswap method if there is one.
- Method unswapMethod = ofNullable(
+ Method unswapMethod = optional(
ci.getPublicMethod(
x -> x.hasReturnType(pt)
)
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
index 1d604cc..7daeb7b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
@@ -13,6 +13,7 @@
package org.apache.juneau.uon;
import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.io.*;
@@ -312,7 +313,7 @@ public class UonParserSession extends ReaderParserSession implements HttpPartPar
sType = eType;
if (sType.isOptional())
- return (T)Optional.ofNullable(parseAnything(eType.getElementType(), r, outer, isUrlParamValue, pMeta));
+ return (T)optional(parseAnything(eType.getElementType(), r, outer, isUrlParamValue, pMeta));
setCurrentClass(sType);
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
index 08c5523..d1f382c 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
@@ -12,8 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.uon;
-import static java.util.Optional.*;
import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
import java.lang.annotation.*;
import java.lang.reflect.*;
import java.nio.charset.*;
@@ -1133,7 +1134,7 @@ public class UonSerializer extends WriterSerializer implements HttpPartSerialize
quoteCharUon = builder.quoteCharUon;
addBeanTypes = addBeanTypesUon || super.isAddBeanTypes();
- quoteChar = ofNullable(quoteCharUon).orElse(ofNullable(super.quoteChar()).orElse('\''));
+ quoteChar = optional(quoteCharUon).orElseGet(()->optional(super.quoteChar()).orElse('\''));
}
@Override /* Context */
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserSession.java
index 1231488..adb25be 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserSession.java
@@ -12,6 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.urlencoding;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
import java.io.IOException;
import java.lang.reflect.*;
import java.nio.charset.*;
@@ -261,7 +263,7 @@ public class UrlEncodingParserSession extends UonParserSession {
sType = eType;
if (sType.isOptional())
- return (T)Optional.ofNullable(parseAnything(eType.getElementType(), r, outer));
+ return (T)optional(parseAnything(eType.getElementType(), r, outer));
int c = r.peekSkipWs();
if (c == '?')
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/BeanDiff.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/BeanDiff.java
index 47a1cd8..d5f91ea 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/BeanDiff.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/BeanDiff.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.utils;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ObjectUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
@@ -20,7 +21,6 @@ import java.util.*;
import org.apache.juneau.*;
import org.apache.juneau.annotation.Bean;
import org.apache.juneau.collections.*;
-import org.apache.juneau.internal.*;
/**
* Utility class for comparing two versions of a POJO.
@@ -126,7 +126,7 @@ public class BeanDiff {
* @return This object.
*/
public Builder<T> include(String...properties) {
- include = ASet.of(properties);
+ include = set(properties);
return this;
}
@@ -151,7 +151,7 @@ public class BeanDiff {
* @return This object.
*/
public Builder<T> exclude(String...properties) {
- exclude = ASet.of(properties);
+ exclude = set(properties);
return this;
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/PojoQuery.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/PojoQuery.java
index a2029ea..5859dc0 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/PojoQuery.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/PojoQuery.java
@@ -567,7 +567,7 @@ public final class PojoQuery {
numberRanges = l.toArray(new NumberRange[l.size()]);
}
- private static List<String> breakUpTokens(String s) {
+ private static String[] breakUpTokens(String s) {
// Get rid of whitespace in "123 - 456"
s = s.replaceAll("(-?\\d+)\\s*-\\s*(-?\\d+)", "$1-$2");
// Get rid of whitespace in ">= 123"
@@ -586,7 +586,7 @@ public final class PojoQuery {
if (! startsWith(s2[i], '!'))
s2[i] = "^"+s2[i];
- return AList.of(s2);
+ return s2;
}
public boolean matches(Number number) {
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/ReflectionMap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/ReflectionMap.java
index ce35889..53d324d 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/ReflectionMap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/ReflectionMap.java
@@ -15,6 +15,7 @@ package org.apache.juneau.utils;
import static java.lang.Character.*;
import static org.apache.juneau.collections.OMap.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.lang.reflect.*;
@@ -299,8 +300,8 @@ public class ReflectionMap<V> {
for (ClassEntry<V> e : classEntries)
if (e.matches(c))
if (ofType == null || ofType.isInstance(e.value))
- return Optional.ofNullable(e.value);
- return Optional.empty();
+ return optional(e.value);
+ return empty();
}
/**
@@ -378,8 +379,8 @@ public class ReflectionMap<V> {
for (MethodEntry<V> e : methodEntries)
if (e.matches(m))
if (ofType == null || ofType.isInstance(e.value))
- return Optional.ofNullable(e.value);
- return Optional.empty();
+ return optional(e.value);
+ return empty();
}
/**
@@ -450,8 +451,8 @@ public class ReflectionMap<V> {
for (FieldEntry<V> e : fieldEntries)
if (e.matches(f))
if (ofType == null || ofType.isInstance(e.value))
- return Optional.ofNullable(e.value);
- return Optional.empty();
+ return optional(e.value);
+ return empty();
}
/**
@@ -522,8 +523,8 @@ public class ReflectionMap<V> {
for (ConstructorEntry<V> e : constructorEntries)
if (e.matches(c))
if (ofType == null || ofType.isInstance(e.value))
- return Optional.ofNullable(e.value);
- return Optional.empty();
+ return optional(e.value);
+ return empty();
}
/**
@@ -793,11 +794,11 @@ public class ReflectionMap<V> {
.a("constructorEntries", constructorEntries)
.asString();
}
-
+
//-----------------------------------------------------------------------------------------------------------------
// Utility methods
//-----------------------------------------------------------------------------------------------------------------
-
+
private static <V> List<V> lazyList(List<V> list) {
return list == null ? Collections.emptyList() : list;
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/SearchArgs.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/SearchArgs.java
index c57c948..5f616fb 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/SearchArgs.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/SearchArgs.java
@@ -92,15 +92,13 @@ public class SearchArgs {
* @return This object.
*/
public Builder search(String searchTerms) {
- if (searchTerms != null) {
- for (String s : StringUtils.split(searchTerms)) {
- int i = StringUtils.indexOf(s, '=', '>', '<');
- if (i == -1)
- throw runtimeException("Invalid search terms: ''{0}''", searchTerms);
- char c = s.charAt(i);
- search(s.substring(0, i).trim(), s.substring(c == '=' ? i+1 : i).trim());
- }
- }
+ split(searchTerms, x -> {
+ int i = indexOf(x, '=', '>', '<');
+ if (i == -1)
+ throw runtimeException("Invalid search terms: ''{0}''", searchTerms);
+ char c = x.charAt(i);
+ search(x.substring(0, i).trim(), x.substring(c == '=' ? i+1 : i).trim());
+ });
return this;
}
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlBeanMeta.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlBeanMeta.java
index 661256c..114b6a7 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlBeanMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlBeanMeta.java
@@ -12,12 +12,12 @@
// ***************************************************************************************************************************
package org.apache.juneau.xml;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
import java.util.*;
import org.apache.juneau.*;
-import org.apache.juneau.internal.*;
import org.apache.juneau.xml.annotation.*;
/**
@@ -51,10 +51,10 @@ public class XmlBeanMeta extends ExtendedBeanMeta {
Class<?> c = beanMeta.getClassMeta().getInnerClass();
XmlBeanMetaBuilder b = new XmlBeanMetaBuilder(beanMeta, mp);
- attrs = b.attrs.unmodifiable();
- elements = b.elements.unmodifiable();
+ attrs = unmodifiable(b.attrs);
+ elements = unmodifiable(b.elements);
attrsProperty = b.attrsProperty;
- collapsedProperties = b.collapsedProperties.unmodifiable();
+ collapsedProperties = unmodifiable(b.collapsedProperties);
contentProperty = b.contentProperty;
contentFormat = b.contentFormat;
@@ -73,10 +73,10 @@ public class XmlBeanMeta extends ExtendedBeanMeta {
}
private static class XmlBeanMetaBuilder {
- AMap<String,BeanPropertyMeta>
- attrs = AMap.create(),
- elements = AMap.create(),
- collapsedProperties = AMap.create();
+ Map<String,BeanPropertyMeta>
+ attrs = map(),
+ elements = map(),
+ collapsedProperties = map();
BeanPropertyMeta
attrsProperty,
contentProperty;
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParser.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParser.java
index a6fc689..e94a92f 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParser.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParser.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.xml;
-import static java.util.Optional.*;
import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import java.lang.annotation.*;
import java.lang.reflect.*;
@@ -798,9 +798,9 @@ public class XmlParser extends ReaderParser implements XmlMetaProvider {
resolver = builder.resolver;
eventAllocator = builder.eventAllocator;
- reporterImpl = ofNullable(reporter).map(x -> newInstance(x)).orElse(null);
- resolverImpl = ofNullable(resolver).map(x -> newInstance(x)).orElse(null);
- eventAllocatorImpl = ofNullable(eventAllocator).map(x -> newInstance(x)).orElse(null);
+ reporterImpl = optional(reporter).map(x -> newInstance(x)).orElse(null);
+ resolverImpl = optional(resolver).map(x -> newInstance(x)).orElse(null);
+ eventAllocatorImpl = optional(eventAllocator).map(x -> newInstance(x)).orElse(null);
}
@Override /* Context */
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserSession.java
index 4cded48..52a1e8e 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserSession.java
@@ -14,6 +14,7 @@ package org.apache.juneau.xml;
import static javax.xml.stream.XMLStreamConstants.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.xml.annotation.XmlFormat.*;
@@ -457,7 +458,7 @@ public class XmlParserSession extends ReaderParserSession {
sType = eType;
if (sType.isOptional())
- return (T)Optional.ofNullable(parseAnything(eType.getElementType(), currAttr, r, outer, isRoot, pMeta));
+ return (T)optional(parseAnything(eType.getElementType(), currAttr, r, outer, isRoot, pMeta));
setCurrentClass(sType);
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializer.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializer.java
index be765af..be07da0 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializer.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializer.java
@@ -12,8 +12,9 @@
// ***************************************************************************************************************************
package org.apache.juneau.xml;
-import static java.util.Optional.*;
import static org.apache.juneau.collections.OMap.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
+
import java.lang.annotation.*;
import java.lang.reflect.*;
import java.nio.charset.*;
@@ -281,7 +282,7 @@ public class XmlSerializer extends WriterSerializer implements XmlMetaProvider {
disableAutoDetectNamespaces = ! copyFrom.autoDetectNamespaces;
enableNamespaces = copyFrom.enableNamespaces;
defaultNamespace = copyFrom.defaultNamespace;
- namespaces = copyFrom.namespaces.length == 0 ? null : AList.of(copyFrom.namespaces);
+ namespaces = copyFrom.namespaces.length == 0 ? null : list(copyFrom.namespaces);
}
/**
@@ -296,7 +297,7 @@ public class XmlSerializer extends WriterSerializer implements XmlMetaProvider {
disableAutoDetectNamespaces = copyFrom.disableAutoDetectNamespaces;
enableNamespaces = copyFrom.enableNamespaces;
defaultNamespace = copyFrom.defaultNamespace;
- namespaces = copyFrom.namespaces == null ? null : AList.of(copyFrom.namespaces);
+ namespaces = copyOf(copyFrom.namespaces);
}
@Override /* Context.Builder */
@@ -1180,8 +1181,8 @@ public class XmlSerializer extends WriterSerializer implements XmlMetaProvider {
enableNamespaces = builder.enableNamespaces;
addNamespaceUrlsToRoot = builder.addNamespaceUrisToRoot;
addBeanTypesXml = builder.addBeanTypesXml;
- defaultNamespace = ofNullable(builder.defaultNamespace).orElse(DEFAULT_JUNEAU_NAMESPACE);
- namespaces = ofNullable(builder.namespaces).map(x -> x.toArray(new Namespace[0])).orElse(new Namespace[0]);
+ defaultNamespace = optional(builder.defaultNamespace).orElse(DEFAULT_JUNEAU_NAMESPACE);
+ namespaces = optional(builder.namespaces).map(x -> x.toArray(new Namespace[0])).orElse(new Namespace[0]);
addBeanTypes = addBeanTypesXml || super.isAddBeanTypes();
}
diff --git a/juneau-doc/src/main/java/org/apache/juneau/doc/internal/DocGenerator.java b/juneau-doc/src/main/java/org/apache/juneau/doc/internal/DocGenerator.java
index 2a5ad62..102a631 100644
--- a/juneau-doc/src/main/java/org/apache/juneau/doc/internal/DocGenerator.java
+++ b/juneau-doc/src/main/java/org/apache/juneau/doc/internal/DocGenerator.java
@@ -13,6 +13,7 @@
package org.apache.juneau.doc.internal;
import static org.apache.juneau.doc.internal.Console.*;
+import static org.apache.juneau.internal.CollectionUtils.*;
import java.io.*;
import java.nio.file.*;
@@ -265,7 +266,7 @@ public class DocGenerator {
title = s.substring(0, i);
if (title.startsWith("{")) {
titleMap = SimpleJson.DEFAULT.read(title, TitleMap.class);
- List<String> tags = AList.create();
+ List<String> tags = list();
if (titleMap.created != null)
tags.add("created: " + highlightCurrentVersion(titleMap.created));
if (titleMap.updated != null)
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/Microservice.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/Microservice.java
index d71c40f..6e493d6 100755
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/Microservice.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/Microservice.java
@@ -12,16 +12,16 @@
// ***************************************************************************************************************************
package org.apache.juneau.microservice;
-import static org.apache.juneau.internal.ClassUtils.className;
-import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.ClassUtils.*;
import static org.apache.juneau.internal.FileUtils.*;
import static org.apache.juneau.internal.IOUtils.*;
-import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.ObjectUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.ThrowableUtils.*;
import java.io.*;
import java.net.*;
-import java.nio.file.Paths;
+import java.nio.file.*;
import java.text.*;
import java.util.*;
import java.util.concurrent.*;
@@ -29,20 +29,21 @@ import java.util.jar.*;
import java.util.logging.*;
import java.util.logging.Formatter;
-import org.apache.juneau.ExecutableException;
+import org.apache.juneau.*;
import org.apache.juneau.collections.*;
import org.apache.juneau.config.*;
import org.apache.juneau.config.event.*;
import org.apache.juneau.config.store.*;
-import org.apache.juneau.config.vars.ConfigVar;
+import org.apache.juneau.config.store.FileStore;
+import org.apache.juneau.config.vars.*;
+import org.apache.juneau.cp.*;
import org.apache.juneau.internal.*;
import org.apache.juneau.microservice.console.*;
import org.apache.juneau.microservice.resources.*;
import org.apache.juneau.parser.ParseException;
import org.apache.juneau.svl.*;
-import org.apache.juneau.svl.vars.ManifestFileVar;
+import org.apache.juneau.svl.vars.*;
import org.apache.juneau.utils.*;
-import org.apache.juneau.cp.Messages;
/**
* Parent class for all microservices.
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/ConfigCommand.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/ConfigCommand.java
index 6e70e85..8afb5b8 100644
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/ConfigCommand.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/ConfigCommand.java
@@ -17,8 +17,8 @@ import java.util.*;
import org.apache.juneau.collections.*;
import org.apache.juneau.config.*;
-import org.apache.juneau.microservice.*;
import org.apache.juneau.cp.*;
+import org.apache.juneau.microservice.*;
/**
* Implements the 'config' console command to get or set configuration.
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/ExitCommand.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/ExitCommand.java
index 80ce2b6..f273c7b 100644
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/ExitCommand.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/ExitCommand.java
@@ -16,8 +16,8 @@ import java.io.*;
import java.util.*;
import org.apache.juneau.collections.*;
-import org.apache.juneau.microservice.*;
import org.apache.juneau.cp.*;
+import org.apache.juneau.microservice.*;
/**
* Implements the 'exit' console command to gracefully shut down the microservice and JVM.
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/HelpCommand.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/HelpCommand.java
index 078ec79..57b447c 100644
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/HelpCommand.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/HelpCommand.java
@@ -16,8 +16,8 @@ import java.io.*;
import java.util.*;
import org.apache.juneau.collections.*;
-import org.apache.juneau.microservice.*;
import org.apache.juneau.cp.*;
+import org.apache.juneau.microservice.*;
/**
* Implements the 'restart' console command to gracefully shut down and restart the microservice.
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/RestartCommand.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/RestartCommand.java
index 273b54c..62377df 100644
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/RestartCommand.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/console/RestartCommand.java
@@ -16,8 +16,8 @@ import java.io.*;
import java.util.*;
import org.apache.juneau.collections.*;
-import org.apache.juneau.microservice.*;
import org.apache.juneau.cp.*;
+import org.apache.juneau.microservice.*;
/**
* Implements the 'restart' console command to gracefully shut down and restart the microservice.
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/ConfigResource.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/ConfigResource.java
index 0fe54d1..d21c54f 100755
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/ConfigResource.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/ConfigResource.java
@@ -19,16 +19,13 @@ import java.util.Map;
import org.apache.juneau.collections.*;
import org.apache.juneau.dto.html5.*;
-import org.apache.juneau.html.annotation.HtmlDocConfig;
+import org.apache.juneau.html.annotation.*;
+import org.apache.juneau.http.annotation.*;
import org.apache.juneau.http.annotation.Body;
-import org.apache.juneau.http.annotation.FormData;
-import org.apache.juneau.http.annotation.Path;
-import org.apache.juneau.http.annotation.Response;
-import org.apache.juneau.http.annotation.Schema;
-import org.apache.juneau.rest.annotation.*;
-import org.apache.juneau.rest.config.BasicUniversalConfig;
-import org.apache.juneau.rest.servlet.BasicRestServlet;
import org.apache.juneau.http.response.*;
+import org.apache.juneau.rest.annotation.*;
+import org.apache.juneau.rest.config.*;
+import org.apache.juneau.rest.servlet.*;
/**
* Shows contents of the microservice configuration file.
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/DirectoryResource.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/DirectoryResource.java
index 545aea1..8f5a2a1 100755
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/DirectoryResource.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/DirectoryResource.java
@@ -12,8 +12,8 @@
// ***************************************************************************************************************************
package org.apache.juneau.microservice.resources;
-import static org.apache.juneau.internal.StringUtils.*;
import static org.apache.juneau.internal.IOUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
import java.io.*;
import java.util.*;
@@ -22,16 +22,13 @@ import org.apache.juneau.annotation.*;
import org.apache.juneau.config.*;
import org.apache.juneau.dto.*;
import org.apache.juneau.html.annotation.*;
-import org.apache.juneau.http.annotation.Body;
-import org.apache.juneau.http.annotation.Path;
-import org.apache.juneau.http.annotation.Response;
-import org.apache.juneau.http.annotation.Schema;
+import org.apache.juneau.http.annotation.*;
+import org.apache.juneau.http.response.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.beans.*;
-import org.apache.juneau.rest.config.BasicUniversalConfig;
-import org.apache.juneau.rest.servlet.BasicRestServlet;
-import org.apache.juneau.http.response.*;
+import org.apache.juneau.rest.config.*;
+import org.apache.juneau.rest.servlet.*;
/**
* REST resource that allows access to a file system directory.
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogEntryFormatter.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogEntryFormatter.java
index cf3d5dd..f68791d 100644
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogEntryFormatter.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogEntryFormatter.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.microservice.resources;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import java.text.*;
@@ -22,8 +23,6 @@ import java.util.logging.*;
import java.util.logging.Formatter;
import java.util.regex.*;
-import org.apache.juneau.internal.AMap;
-
/**
* Log entry formatter.
*
@@ -184,7 +183,7 @@ public class LogEntryFormatter extends Formatter {
sre = sre.replaceAll("\\\\%n", "\\\\n");
rePattern = Pattern.compile(sre);
- fieldIndexes = AMap.unmodifiable(fieldIndexes);
+ fieldIndexes = unmodifiable(fieldIndexes);
}
/**
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogParser.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogParser.java
index c10f94a..0f440cf 100644
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogParser.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogParser.java
@@ -12,6 +12,7 @@
// ***************************************************************************************************************************
package org.apache.juneau.microservice.resources;
+import static org.apache.juneau.internal.CollectionUtils.*;
import static org.apache.juneau.internal.ThrowableUtils.*;
import java.io.*;
@@ -20,8 +21,6 @@ import java.text.*;
import java.util.*;
import java.util.regex.*;
-import org.apache.juneau.internal.ASet;
-
/**
* Utility class for reading log files.
*
@@ -61,9 +60,9 @@ public final class LogParser implements Iterable<LogParser.Entry>, Iterator<LogP
this.end = end;
this.threadFilter = thread;
if (loggers != null)
- this.loggerFilter = ASet.of(loggers);
+ this.loggerFilter = set(loggers);
if (severity != null)
- this.severityFilter = ASet.of(severity);
+ this.severityFilter = set(severity);
// Find the first line.
String line;
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
index 298fa42..41b284b 100755
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
@@ -22,17 +22,14 @@ import org.apache.juneau.annotation.*;
import org.apache.juneau.config.*;
import org.apache.juneau.dto.*;
import org.apache.juneau.html.annotation.*;
-import org.apache.juneau.http.annotation.Path;
-import org.apache.juneau.http.annotation.Query;
-import org.apache.juneau.http.annotation.Response;
-import org.apache.juneau.http.annotation.Schema;
+import org.apache.juneau.http.annotation.*;
+import org.apache.juneau.http.response.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.beans.*;
-import org.apache.juneau.rest.config.BasicUniversalConfig;
+import org.apache.juneau.rest.config.*;
import org.apache.juneau.rest.converter.*;
-import org.apache.juneau.rest.servlet.BasicRestServlet;
-import org.apache.juneau.http.response.*;
+import org.apache.juneau.rest.servlet.*;
/**
* REST resource for viewing and accessing log files.
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/SampleRootResource.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/SampleRootResource.java
index 3510d53..46ceccf 100755
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/SampleRootResource.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/SampleRootResource.java
@@ -13,8 +13,8 @@
package org.apache.juneau.microservice.resources;
import org.apache.juneau.rest.annotation.*;
-import org.apache.juneau.rest.config.BasicUniversalConfig;
-import org.apache.juneau.rest.servlet.BasicRestServletGroup;
+import org.apache.juneau.rest.config.*;
+import org.apache.juneau.rest.servlet.*;
/**
* Sample root REST resource.
diff --git a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/ShutdownResource.java b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/ShutdownResource.java
index 2d804f0..d8aff7f 100755
--- a/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/ShutdownResource.java
+++ b/juneau-microservice/juneau-microservice-core/src/main/java/org/apache/juneau/microservice/resources/ShutdownResource.java
@@ -13,8 +13,8 @@
package org.apache.juneau.microservice.resources;
import org.apache.juneau.rest.annotation.*;
-import org.apache.juneau.rest.config.BasicUniversalConfig;
-import org.apache.juneau.rest.servlet.BasicRestServlet;
+import org.apache.juneau.rest.config.*;
+import org.apache.juneau.rest.servlet.*;
/**
* Provides the capability to shut down this REST microservice through a REST call.
diff --git a/juneau-microservice/juneau-microservice-ftest/src/test/java/org/apache/juneau/rest/test/ConfigResource.java b/juneau-microservice/juneau-microservice-ftest/src/test/java/org/apache/juneau/rest/test/ConfigResource.java
index 4d7f809..22da2fe 100644
--- a/juneau-microservice/juneau-microservice-ftest/src/test/java/org/apache/juneau/rest/test/ConfigResource.java
+++ b/juneau-microservice/juneau-microservice-ftest/src/test/java/org/apache/juneau/rest/test/ConfigResource.java
@@ -14,11 +14,11 @@ package org.apache.juneau.rest.test;
import static org.apache.juneau.http.HttpMethod.*;
-import org.apache.juneau.http.annotation.Path;
... 11097 lines suppressed ...