You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streams.apache.org by sb...@apache.org on 2014/04/17 22:27:47 UTC
[14/53] [abbrv] making activity.links an array of strings,
so it's useful adding processor-urls, still debugging
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/9e757aed/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsDateTimeDeserializer.java
----------------------------------------------------------------------
diff --git a/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsDateTimeDeserializer.java b/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsDateTimeDeserializer.java
new file mode 100644
index 0000000..4b3c4d1
--- /dev/null
+++ b/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsDateTimeDeserializer.java
@@ -0,0 +1,32 @@
+package org.apache.streams.jackson;
+
+import com.fasterxml.jackson.core.JsonGenerationException;
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
+import org.joda.time.DateTime;
+import org.joda.time.format.DateTimeFormatter;
+import org.joda.time.format.ISODateTimeFormat;
+
+import java.io.IOException;
+
+/**
+ * Created by sblackmon on 3/27/14.
+ */
+public class StreamsDateTimeDeserializer extends StdDeserializer<DateTime> {
+
+ public static final DateTimeFormatter ACTIVITY_FORMAT = ISODateTimeFormat.basicDateTime();
+
+ protected StreamsDateTimeDeserializer(Class<DateTime> dateTimeClass) {
+ super(dateTimeClass);
+ }
+
+ @Override
+ public DateTime deserialize(JsonParser jpar, DeserializationContext context) throws IOException, JsonProcessingException {
+ return ACTIVITY_FORMAT.parseDateTime(jpar.getValueAsString());
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/9e757aed/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsDateTimeSerializer.java
----------------------------------------------------------------------
diff --git a/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsDateTimeSerializer.java b/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsDateTimeSerializer.java
new file mode 100644
index 0000000..b905bf4
--- /dev/null
+++ b/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsDateTimeSerializer.java
@@ -0,0 +1,28 @@
+package org.apache.streams.jackson;
+
+import com.fasterxml.jackson.core.JsonGenerationException;
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
+import org.joda.time.DateTime;
+import org.joda.time.format.DateTimeFormatter;
+import org.joda.time.format.ISODateTimeFormat;
+
+import java.io.IOException;
+
+/**
+ * Created by sblackmon on 3/27/14.
+ */
+public class StreamsDateTimeSerializer extends StdSerializer<DateTime> {
+
+ public static final DateTimeFormatter ACTIVITY_FORMAT = ISODateTimeFormat.basicDateTime();
+
+ protected StreamsDateTimeSerializer(Class<DateTime> dateTimeClass) {
+ super(dateTimeClass);
+ }
+
+ @Override
+ public void serialize(DateTime value, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonGenerationException {
+ jgen.writeString(ACTIVITY_FORMAT.print(value));
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/9e757aed/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsJacksonModule.java
----------------------------------------------------------------------
diff --git a/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsJacksonModule.java b/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsJacksonModule.java
new file mode 100644
index 0000000..8edd963
--- /dev/null
+++ b/streams-pojo/src/main/java/org/apache/streams/jackson/StreamsJacksonModule.java
@@ -0,0 +1,16 @@
+package org.apache.streams.jackson;
+
+import com.fasterxml.jackson.databind.module.SimpleModule;
+import org.joda.time.DateTime;
+
+/**
+ * Created by sblackmon on 3/27/14.
+ */
+public class StreamsJacksonModule extends SimpleModule {
+
+ public StreamsJacksonModule() {
+ super();
+ addSerializer(DateTime.class, new StreamsDateTimeSerializer(DateTime.class));
+ addDeserializer(DateTime.class, new StreamsDateTimeDeserializer(DateTime.class));
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/9e757aed/streams-pojo/src/main/jsonschema/org/apache/streams/pojo/json/activity.json
----------------------------------------------------------------------
diff --git a/streams-pojo/src/main/jsonschema/org/apache/streams/pojo/json/activity.json b/streams-pojo/src/main/jsonschema/org/apache/streams/pojo/json/activity.json
index 2cdd233..fa74486 100644
--- a/streams-pojo/src/main/jsonschema/org/apache/streams/pojo/json/activity.json
+++ b/streams-pojo/src/main/jsonschema/org/apache/streams/pojo/json/activity.json
@@ -79,7 +79,9 @@
"type" : "array",
"description" :"Links between this object and other resources as defined in Web Linking",
"note": "Tell JSON schema team to not put links inside http://json-schema.org/hyper-schema#properties",
- "properties" : {"$ref" : "http://json-schema.org/links#properties"}
+ "items": {
+ "type" : "string"
+ }
}
},
"links": [