Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

convert gson to jackson2 for JSON handling #780

Merged
merged 1 commit into from Apr 21, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 2 additions & 3 deletions fcrepo-http-api/pom.xml
Expand Up @@ -68,9 +68,8 @@
</dependency>

<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.3</version>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>

<dependency>
Expand Down
Expand Up @@ -15,8 +15,9 @@
*/
package org.fcrepo.http.api;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.google.common.annotations.VisibleForTesting;
import com.google.gson.JsonObject;
import com.hp.hpl.jena.rdf.model.Resource;
import org.apache.commons.lang.StringUtils;
import org.fcrepo.http.commons.AbstractResource;
Expand Down Expand Up @@ -84,12 +85,13 @@ protected void setUpJMSInfo(final UriInfo uriInfo, final HttpHeaders headers) {
}
LOGGER.debug("setting baseURL = " + baseURL);
final ObservationManager obs = session().getWorkspace().getObservationManager();
final JsonObject json = new JsonObject();
json.addProperty("baseURL", baseURL);
final ObjectMapper mapper = new ObjectMapper();
final ObjectNode json = mapper.createObjectNode();
json.put("baseURL", baseURL);
if (!StringUtils.isBlank(headers.getHeaderString("user-agent"))) {
json.addProperty("userAgent",headers.getHeaderString("user-agent"));
json.put("userAgent", headers.getHeaderString("user-agent"));
}
obs.setUserData(json.toString());
obs.setUserData(mapper.writeValueAsString(json));
} catch ( final Exception ex ) {
LOGGER.warn("Error setting baseURL", ex);
}
Expand Down
26 changes: 4 additions & 22 deletions fcrepo-http-commons/pom.xml
Expand Up @@ -91,10 +91,6 @@
<groupId>org.modeshape</groupId>
<artifactId>modeshape-jcr-api</artifactId>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
Expand Down Expand Up @@ -166,33 +162,19 @@
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>${jersey.version}</version>
<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</exclusion>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</exclusion>

<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.3.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.3.3</version>
</dependency>

<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
</dependency>

<dependency>
<groupId>org.apache.httpcomponents</groupId>
Expand Down
Expand Up @@ -21,7 +21,7 @@
import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;

import org.codehaus.jackson.JsonParseException;
import com.fasterxml.jackson.core.JsonParseException;

/**
* If an injected JSON resource fails to parse, return an HTTP 400 Bad Request.
Expand Down
7 changes: 4 additions & 3 deletions fcrepo-jms/pom.xml
Expand Up @@ -73,11 +73,12 @@
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>

<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.3</version>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
Expand Down
Expand Up @@ -19,6 +19,7 @@
import static org.modeshape.jcr.api.JcrConstants.JCR_CONTENT;
import static org.slf4j.LoggerFactory.getLogger;

import java.io.IOException;
import java.util.Set;

import javax.jcr.RepositoryException;
Expand All @@ -31,11 +32,11 @@
import org.fcrepo.kernel.utils.EventType;
import org.slf4j.Logger;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.JsonNode;
import com.google.common.base.Function;
import com.google.common.base.Joiner;
import com.google.common.collect.Iterables;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;

/**
* Generates JMS {@link Message}s composed entirely of headers, based entirely
Expand Down Expand Up @@ -86,20 +87,21 @@ public Message getMessage(final FedoraEvent jcrEvent,
try {
final String userdata = jcrEvent.getUserData();
if (!StringUtils.isBlank(userdata)) {
final JsonObject json = new JsonParser().parse(userdata).getAsJsonObject();
String url = json.get("baseURL").getAsString();
final ObjectMapper mapper = new ObjectMapper();
final JsonNode json = mapper.readTree(userdata);
String url = json.get("baseURL").asText();
while (url.endsWith("/")) {
url = url.substring(0, url.length() - 1);
}
this.baseURL = url;
this.userAgent = json.get("userAgent").getAsString();
this.userAgent = json.get("userAgent").asText();
LOGGER.debug("MessageFactory baseURL: {}, userAgent: {}", baseURL, userAgent);

} else {
LOGGER.warn("MessageFactory event UserData is empty!");
}

} catch ( final RuntimeException ex ) {
} catch ( final IOException ex ) {
LOGGER.warn("Error setting baseURL or userAgent", ex);
}

Expand Down
11 changes: 0 additions & 11 deletions fcrepo-metrics/pom.xml
Expand Up @@ -38,17 +38,6 @@
<groupId>io.dropwizard.metrics</groupId>
<artifactId>metrics-servlets</artifactId>
<version>${metrics.version}</version>

<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</exclusion>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
Expand Down
21 changes: 0 additions & 21 deletions fcrepo-transform/pom.xml
Expand Up @@ -147,31 +147,10 @@
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>${jersey.version}</version>
<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</exclusion>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</exclusion>

<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.3.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.3.3</version>
</dependency>

<!-- This dependency is for compile-time: it keeps this module independent
Expand Down
11 changes: 0 additions & 11 deletions fcrepo-webapp/pom.xml
Expand Up @@ -114,17 +114,6 @@
<groupId>io.dropwizard.metrics</groupId>
<artifactId>metrics-servlets</artifactId>
<version>${metrics.version}</version>

<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</exclusion>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</exclusion>
</exclusions>
</dependency>

<dependency>
Expand Down
18 changes: 14 additions & 4 deletions pom.xml
Expand Up @@ -34,7 +34,7 @@
<httpclient.version>4.3.3</httpclient.version>
<infinispan.version>6.0.2.Final</infinispan.version>
<javax.servlet-api.version>3.0.1</javax.servlet-api.version>
<jackson.version>1.9.11</jackson.version>
<jackson2.version>2.3.2</jackson2.version>
<jaxb.version>2.2.7</jaxb.version>
<jersey.version>2.13</jersey.version>
<jgroups.version>3.5.0.Final</jgroups.version>
Expand Down Expand Up @@ -224,9 +224,19 @@
<!-- <scope>provided</scope> -->
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>${jackson.version}</version>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson2.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson2.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson2.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
Expand Down