Browse Source

migrating to new Jackson directory structure

pull/35/head
Konstantin Ignatyev 11 years ago
parent
commit
d5e2ae7083
  1. 7
      json-path/pom.xml
  2. 6
      json-path/src/main/java/com/jayway/jsonpath/spi/MappingProviderFactory.java
  3. 8
      json-path/src/main/java/com/jayway/jsonpath/spi/impl/JacksonProvider.java
  4. 6
      json-path/src/test/java/com/jayway/jsonpath/ExpressionEvalTest.java
  5. 10
      pom.xml

7
json-path/pom.xml

@ -14,7 +14,8 @@
~ See the License for the specific language governing permissions and ~ See the License for the specific language governing permissions and
~ limitations under the License. ~ limitations under the License.
--> -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>com.jayway.jsonpath</groupId> <groupId>com.jayway.jsonpath</groupId>
@ -31,8 +32,8 @@
<artifactId>json-smart</artifactId> <artifactId>json-smart</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.jackson</groupId> <groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-mapper-asl</artifactId> <artifactId>jackson-databind</artifactId>
<optional>true</optional> <optional>true</optional>
</dependency> </dependency>
</dependencies> </dependencies>

6
json-path/src/main/java/com/jayway/jsonpath/spi/MappingProviderFactory.java

@ -21,22 +21,24 @@ import com.jayway.jsonpath.spi.impl.JacksonProvider;
*/ */
public abstract class MappingProviderFactory { public abstract class MappingProviderFactory {
public static String objectMapperClassName = "com.fasterxml.jackson.databind.ObjectMapper";
public static MappingProviderFactory factory = new MappingProviderFactory() { public static MappingProviderFactory factory = new MappingProviderFactory() {
private MappingProvider provider = null; private MappingProvider provider = null;
@Override @Override
protected MappingProvider create() { protected MappingProvider create() {
if (this.provider == null) { if (this.provider == null) {
synchronized (MappingProviderFactory.class) { synchronized (MappingProviderFactory.class) {
try { try {
Class.forName("org.codehaus.jackson.map.ObjectMapper"); Class.forName(objectMapperClassName);
provider = new JacksonProvider(); provider = new JacksonProvider();
return provider; return provider;
} catch (ClassNotFoundException e) { } catch (ClassNotFoundException e) {
throw new RuntimeException("org.codehaus.jackson.map.ObjectMapper not found on classpath. This is an optional dependency needed for POJO conversions.", e); throw new RuntimeException( objectMapperClassName + " not found on classpath. This is an optional dependency needed for POJO conversions.", e);
} }
} }
} else { } else {

8
json-path/src/main/java/com/jayway/jsonpath/spi/impl/JacksonProvider.java

@ -14,12 +14,12 @@
*/ */
package com.jayway.jsonpath.spi.impl; package com.jayway.jsonpath.spi.impl;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.type.CollectionType;
import com.jayway.jsonpath.InvalidJsonException; import com.jayway.jsonpath.InvalidJsonException;
import com.jayway.jsonpath.spi.MappingProvider; import com.jayway.jsonpath.spi.MappingProvider;
import com.jayway.jsonpath.spi.Mode; import com.jayway.jsonpath.spi.Mode;
import org.codehaus.jackson.JsonGenerator;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.map.type.CollectionType;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
@ -27,6 +27,8 @@ import java.io.Reader;
import java.io.StringWriter; import java.io.StringWriter;
import java.util.*; import java.util.*;
/** /**
* @author Kalle Stenflo * @author Kalle Stenflo
*/ */

6
json-path/src/test/java/com/jayway/jsonpath/ExpressionEvalTest.java

@ -1,8 +1,6 @@
package com.jayway.jsonpath; package com.jayway.jsonpath;
import com.jayway.jsonpath.internal.filter.eval.ExpressionEvaluator; import com.jayway.jsonpath.internal.filter.eval.ExpressionEvaluator;
import org.codehaus.jackson.node.BigIntegerNode;
import org.junit.Ignore;
import org.junit.Test; import org.junit.Test;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -12,9 +10,7 @@ import java.util.Map;
import static com.jayway.jsonpath.Criteria.where; import static com.jayway.jsonpath.Criteria.where;
import static com.jayway.jsonpath.Filter.filter; import static com.jayway.jsonpath.Filter.filter;
import static org.junit.Assert.assertEquals; import static org.junit.Assert.*;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
/** /**
* Created by IntelliJ IDEA. * Created by IntelliJ IDEA.

10
pom.xml

@ -14,7 +14,8 @@
~ See the License for the specific language governing permissions and ~ See the License for the specific language governing permissions and
~ limitations under the License. ~ limitations under the License.
--> -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>org.sonatype.oss</groupId> <groupId>org.sonatype.oss</groupId>
@ -60,7 +61,8 @@
<junit.version>4.10</junit.version> <junit.version>4.10</junit.version>
<commons-io.version>2.4</commons-io.version> <commons-io.version>2.4</commons-io.version>
<hamcrest.version>1.3</hamcrest.version> <hamcrest.version>1.3</hamcrest.version>
<jackson.version>1.9.11</jackson.version> <!--<jackson.version>1.9.11</jackson.version>-->
<jackson.version>2.3.0</jackson.version>
<json-smart.version>1.2</json-smart.version> <json-smart.version>1.2</json-smart.version>
</properties> </properties>
<scm> <scm>
@ -203,8 +205,8 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.codehaus.jackson</groupId> <groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-mapper-asl</artifactId> <artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version> <version>${jackson.version}</version>
</dependency> </dependency>

Loading…
Cancel
Save