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": [