From 446c1d9a587233d9c2c1da3ed2151247db2bc7cf Mon Sep 17 00:00:00 2001 From: Mike Lovelace Date: Fri, 11 Sep 2015 11:09:28 -0400 Subject: [PATCH] bug(Configuration.java) configuration builder gets defaults when not needed - Configuration builder forces a dependency on json-smart when defaults are gotten, even when they are not needed. fixes #121 --- .../java/com/jayway/jsonpath/Configuration.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/json-path/src/main/java/com/jayway/jsonpath/Configuration.java b/json-path/src/main/java/com/jayway/jsonpath/Configuration.java index a27ab09f2..87622228b 100644 --- a/json-path/src/main/java/com/jayway/jsonpath/Configuration.java +++ b/json-path/src/main/java/com/jayway/jsonpath/Configuration.java @@ -230,12 +230,14 @@ public ConfigurationBuilder evaluationListener(Collection li } public Configuration build() { - Defaults defaults = getEffectiveDefaults(); - if (jsonProvider == null) { - jsonProvider = defaults.jsonProvider(); - } - if(mappingProvider == null){ - mappingProvider = defaults.mappingProvider(); + if(null==jsonProvider || null== mappingProvider) { + Defaults defaults = getEffectiveDefaults(); + if (jsonProvider == null) { + jsonProvider = defaults.jsonProvider(); + } + if (mappingProvider == null) { + mappingProvider = defaults.mappingProvider(); + } } return new Configuration(jsonProvider, mappingProvider, options, evaluationListener); }