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:43 UTC

[10/53] [abbrv] git commit: switch activity twitter and datasift pojos to use Joda DateTimes created StreamsJacksonModule many misc version bumps pom cleanup

switch activity twitter and datasift pojos to use Joda DateTimes
created StreamsJacksonModule
many misc version bumps
pom cleanup


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/68ab7543
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/68ab7543
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/68ab7543

Branch: refs/heads/master
Commit: 68ab7543bf64c0492efd0da787277e9b0c40a1a0
Parents: 7f543e5
Author: sblackmon <sb...@w2odigital.com>
Authored: Thu Mar 27 22:00:11 2014 -0500
Committer: sblackmon <sb...@w2odigital.com>
Committed: Thu Mar 27 22:00:11 2014 -0500

----------------------------------------------------------------------
 pom.xml                                         | 47 +++++++++---
 streams-config/pom.xml                          |  2 +-
 streams-contrib/pom.xml                         |  1 +
 .../model/CassandraActivityStreamsEntry.java    | 46 ++++--------
 .../streams-persist-elasticsearch/pom.xml       |  2 +-
 streams-contrib/streams-persist-hbase/pom.xml   |  2 +-
 streams-contrib/streams-persist-hdfs/pom.xml    |  2 +-
 streams-contrib/streams-persist-kafka/pom.xml   |  2 +-
 streams-contrib/streams-persist-mongo/pom.xml   |  2 +-
 .../streams-provider-datasift/pom.xml           |  2 +-
 .../serializer/DatasiftActivitySerializer.java  |  2 +-
 .../main/jsonschema/com/datasift/Datasift.json  |  9 ++-
 .../streams-provider-facebook/pom.xml           |  2 +-
 .../api/FacebookPostActivitySerializer.java     | 77 +++++++++++++++-----
 .../gnip-edc-facebook/pom.xml                   |  6 +-
 .../facebook/test/FacebookEDCSerDeTest.java     | 11 +++
 .../gnip-edc-flickr/pom.xml                     |  3 +-
 .../gnip-edc-googleplus/pom.xml                 | 15 +---
 .../gnip-edc-instagram/pom.xml                  |  3 +-
 .../gnip-edc-reddit/pom.xml                     |  8 +-
 .../gnip-powertrack/pom.xml                     |  2 +-
 .../google-gmail/pom.xml                        |  2 +-
 .../GMailMessageActivitySerializer.java         |  2 +-
 .../google-gplus/pom.xml                        |  2 +-
 .../gplus/provider/GPlusActivitySerializer.java |  3 +-
 .../streams-provider-moreover/pom.xml           |  2 +-
 .../apache/streams/data/util/MoreoverUtils.java |  4 +-
 streams-contrib/streams-provider-rss/pom.xml    |  2 +-
 .../streams-provider-sysomos/pom.xml            |  2 +-
 .../streams-provider-twitter/pom.xml            | 22 ++----
 .../TwitterJsonEventActivitySerializer.java     | 43 +++++++----
 .../TwitterJsonRetweetActivitySerializer.java   | 35 +++++----
 .../TwitterJsonTweetActivitySerializer.java     | 22 ++----
 .../src/main/jsonschema/com/twitter/tweet.json  |  6 +-
 streams-core/pom.xml                            |  8 --
 .../activity-consumer/pom.xml                   |  2 +-
 .../streams-components-all/pom.xml              |  4 +-
 streams-pojo/pom.xml                            | 20 +++--
 streams-runtimes/streams-runtime-local/pom.xml  |  2 +-
 .../local/builders/LocalStreamBuilderTest.java  | 10 +--
 streams-runtimes/streams-runtime-pig/pom.xml    |  2 +-
 streams-runtimes/streams-runtime-storm/pom.xml  | 19 ++---
 streams-runtimes/streams-runtime-webapp/pom.xml |  2 +-
 streams-web/pom.xml                             |  4 +-
 44 files changed, 253 insertions(+), 213 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 185ee79..083eb14 100644
--- a/pom.xml
+++ b/pom.xml
@@ -45,6 +45,10 @@
             </releases>
         </repository>
         <repository>
+            <id>central</id>
+            <url>http://repo1.maven.org/maven2</url>
+        </repository>
+        <repository>
           <id>clojars.org</id>
           <url>http://clojars.org/repo</url>
         </repository>
@@ -59,14 +63,15 @@
         <java.version>1.6</java.version>
         <org.osgi.service.http.port>8080</org.osgi.service.http.port>
         <org.osgi.service.http.port.secure>8443</org.osgi.service.http.port.secure>
-        <jackson.version>2.2.1</jackson.version>
-        <jackson-xml-databind.version>0.5.0</jackson-xml-databind.version>
+        <jackson.version>2.3.2</jackson.version>
+        <jackson-xml-databind.version>0.6.2</jackson-xml-databind.version>
         <aalto.version>0.9.9</aalto.version>
         <joda-time.version>2.2</joda-time.version>
         <rave.version>0.22</rave.version>
         <datastax.version>1.0.3</datastax.version>
-        <jsonschema2pojo.version>0.4.0</jsonschema2pojo.version>
+        <jsonschema2pojo.version>0.4.1</jsonschema2pojo.version>
         <jaxb2.version>0.8.3</jaxb2.version>
+        <jaxb2-basics.version>0.6.5</jaxb2-basics.version>
         <jaxbutil.version>1.2.6</jaxbutil.version>
         <junit.version>4.11</junit.version>
         <slf4j.version>1.7.6</slf4j.version>
@@ -74,6 +79,7 @@
         <commons-io.version>2.4</commons-io.version>
         <commons-lang3.version>3.1</commons-lang3.version>
         <typesafe.config.version>1.2.0</typesafe.config.version>
+        <orgjson.version>20140107</orgjson.version>
         <guava.version>16.0.1</guava.version>
         <scala.version>2.8.0</scala.version>
         <clojure.version>1.4.0</clojure.version>
@@ -82,6 +88,7 @@
         <zookeeper.version>3.4.5-cdh4.5.0</zookeeper.version>
         <netty.version>3.8.0.Final</netty.version>
         <json-path.version>0.9.0</json-path.version>
+        <build-helper.version>1.8</build-helper.version>
     </properties>
 
     <modules>
@@ -136,6 +143,11 @@
                     <artifactId>maven-jaxb2-plugin</artifactId>
                     <version>${jaxb2.version}</version>
                 </plugin>
+                <plugin>
+                    <groupId>org.codehaus.mojo</groupId>
+                    <artifactId>build-helper-maven-plugin</artifactId>
+                    <version>${build-helper.version}</version>
+                </plugin>
             </plugins>
         </pluginManagement>
     </build>
@@ -220,10 +232,20 @@
             </dependency>
             <dependency>
                 <groupId>com.fasterxml.jackson.core</groupId>
+                <artifactId>jackson-databind</artifactId>
+                <version>${jackson.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>com.fasterxml.jackson.core</groupId>
                 <artifactId>jackson-annotations</artifactId>
                 <version>${jackson.version}</version>
             </dependency>
             <dependency>
+                <groupId>com.fasterxml.jackson.datatype</groupId>
+                <artifactId>jackson-datatype-joda</artifactId>
+                <version>${jackson.version}</version>
+            </dependency>
+            <dependency>
                 <groupId>com.fasterxml.jackson.dataformat</groupId>
                 <artifactId>jackson-dataformat-xml</artifactId>
                 <version>${jackson.version}</version>
@@ -254,6 +276,11 @@
                 <version>${jaxbutil.version}</version>
             </dependency>
             <dependency>
+                <groupId>org.json</groupId>
+                <artifactId>json</artifactId>
+                <version>${orgjson.version}</version>
+            </dependency>
+            <dependency>
                 <groupId>org.clojure</groupId>
                 <artifactId>clojure</artifactId>
                 <version>${clojure.version}</version>
@@ -264,17 +291,17 @@
                 <version>${clojure.version}</version>
             </dependency>
             <dependency>
-                <groupId>storm</groupId>
+                <groupId>org.apache.storm</groupId>
                 <artifactId>storm-core</artifactId>
                 <version>${storm.version}</version>
                 <scope>provided</scope>
             </dependency>
-            <dependency>
-                <groupId>storm</groupId>
-                <artifactId>storm-netty</artifactId>
-                <version>${storm.version}</version>
-                <scope>provided</scope>
-            </dependency>
+            <!--<dependency>-->
+                <!--<groupId>storm</groupId>-->
+                <!--<artifactId>storm-netty</artifactId>-->
+                <!--<version>${storm.version}</version>-->
+                <!--<scope>provided</scope>-->
+            <!--</dependency>-->
             <!-- JsonPath -->
             <dependency>
                 <groupId>com.jayway.jsonpath</groupId>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-config/pom.xml
----------------------------------------------------------------------
diff --git a/streams-config/pom.xml b/streams-config/pom.xml
index a8cdd9a..2e6af26 100644
--- a/streams-config/pom.xml
+++ b/streams-config/pom.xml
@@ -114,7 +114,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.config</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/pom.xml b/streams-contrib/pom.xml
index a5ed004..c4efa83 100644
--- a/streams-contrib/pom.xml
+++ b/streams-contrib/pom.xml
@@ -36,6 +36,7 @@
     </properties>
 
     <modules>
+        <module>streams-persist-cassandra</module>
         <module>streams-persist-console</module>
         <module>streams-persist-elasticsearch</module>
         <module>streams-persist-hbase</module>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-persist-cassandra/src/main/java/org/apache/streams/cassandra/model/CassandraActivityStreamsEntry.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-persist-cassandra/src/main/java/org/apache/streams/cassandra/model/CassandraActivityStreamsEntry.java b/streams-contrib/streams-persist-cassandra/src/main/java/org/apache/streams/cassandra/model/CassandraActivityStreamsEntry.java
index c97fb82..733a132 100644
--- a/streams-contrib/streams-persist-cassandra/src/main/java/org/apache/streams/cassandra/model/CassandraActivityStreamsEntry.java
+++ b/streams-contrib/streams-persist-cassandra/src/main/java/org/apache/streams/cassandra/model/CassandraActivityStreamsEntry.java
@@ -1,43 +1,27 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
 package org.apache.streams.cassandra.model;
 
-import org.apache.streams.pojo.json.Activity;
-import org.apache.streams.pojo.json.ActivityObject;
-import org.apache.streams.pojo.json.Actor;
+import org.apache.rave.model.ActivityStreamsObject;
+import org.apache.rave.portal.model.impl.ActivityStreamsEntryImpl;
+import org.apache.rave.portal.model.impl.ActivityStreamsObjectImpl;
 import org.codehaus.jackson.map.annotate.JsonDeserialize;
 
-public class CassandraActivityStreamsEntry extends Activity implements Comparable<CassandraActivityStreamsEntry>{
+import java.util.Date;
+
+public class CassandraActivityStreamsEntry extends ActivityStreamsEntryImpl implements Comparable<CassandraActivityStreamsEntry>{
 
-    @JsonDeserialize(as=ActivityObject.class)
-    private ActivityObject object;
+    @JsonDeserialize(as=ActivityStreamsObjectImpl.class)
+    private ActivityStreamsObject object;
 
-    @JsonDeserialize(as=ActivityObject.class)
-    private ActivityObject target;
+    @JsonDeserialize(as=ActivityStreamsObjectImpl.class)
+    private ActivityStreamsObject target;
 
-    @JsonDeserialize(as=Actor.class)
-    private Actor actor;
+    @JsonDeserialize(as=ActivityStreamsObjectImpl.class)
+    private ActivityStreamsObject actor;
 
-    @JsonDeserialize(as=String.class)
-    private String provider;
+    @JsonDeserialize(as=ActivityStreamsObjectImpl.class)
+    private ActivityStreamsObject provider;
 
     public int compareTo(CassandraActivityStreamsEntry entry){
         return (this.getPublished()).compareTo(entry.getPublished());
     }
-}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-persist-elasticsearch/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-persist-elasticsearch/pom.xml b/streams-contrib/streams-persist-elasticsearch/pom.xml
index a7a4979..60932c8 100644
--- a/streams-contrib/streams-persist-elasticsearch/pom.xml
+++ b/streams-contrib/streams-persist-elasticsearch/pom.xml
@@ -80,7 +80,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.elasticsearch.pojo</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-persist-hbase/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-persist-hbase/pom.xml b/streams-contrib/streams-persist-hbase/pom.xml
index 8dc9618..5b92591 100644
--- a/streams-contrib/streams-persist-hbase/pom.xml
+++ b/streams-contrib/streams-persist-hbase/pom.xml
@@ -94,7 +94,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.hbase.pojo</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-persist-hdfs/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-persist-hdfs/pom.xml b/streams-contrib/streams-persist-hdfs/pom.xml
index e1d2d36..6819ada 100644
--- a/streams-contrib/streams-persist-hdfs/pom.xml
+++ b/streams-contrib/streams-persist-hdfs/pom.xml
@@ -96,7 +96,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.hdfs.pojo</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-persist-kafka/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-persist-kafka/pom.xml b/streams-contrib/streams-persist-kafka/pom.xml
index f4fcaea..4cb494e 100644
--- a/streams-contrib/streams-persist-kafka/pom.xml
+++ b/streams-contrib/streams-persist-kafka/pom.xml
@@ -123,7 +123,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.kafka.pojo</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-persist-mongo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-persist-mongo/pom.xml b/streams-contrib/streams-persist-mongo/pom.xml
index a209acb..72a8043 100644
--- a/streams-contrib/streams-persist-mongo/pom.xml
+++ b/streams-contrib/streams-persist-mongo/pom.xml
@@ -77,7 +77,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.mongo.pojo</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-datasift/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-datasift/pom.xml b/streams-contrib/streams-provider-datasift/pom.xml
index 3e84adc..2d1794c 100644
--- a/streams-contrib/streams-provider-datasift/pom.xml
+++ b/streams-contrib/streams-provider-datasift/pom.xml
@@ -114,7 +114,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>com.datasift</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftActivitySerializer.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftActivitySerializer.java b/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftActivitySerializer.java
index c73abd7..455a579 100644
--- a/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftActivitySerializer.java
+++ b/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftActivitySerializer.java
@@ -125,7 +125,7 @@ public class DatasiftActivitySerializer implements ActivitySerializer<Datasift>,
         activity.setObject(buildActivityObject(event.getInteraction()));
         activity.setId(formatId(activity.getVerb(), event.getInteraction().getId()));
         activity.setTarget(buildTarget(event.getInteraction()));
-        activity.setPublished(parse(event.getInteraction().getCreatedAt()));
+        activity.setPublished(event.getInteraction().getCreatedAt());
         activity.setGenerator(buildGenerator(event.getInteraction()));
         activity.setIcon(getIcon(event.getInteraction()));
         activity.setProvider(buildProvider(event.getInteraction()));

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-datasift/src/main/jsonschema/com/datasift/Datasift.json
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-datasift/src/main/jsonschema/com/datasift/Datasift.json b/streams-contrib/streams-provider-datasift/src/main/jsonschema/com/datasift/Datasift.json
index 87b1ac3..14653ba 100644
--- a/streams-contrib/streams-provider-datasift/src/main/jsonschema/com/datasift/Datasift.json
+++ b/streams-contrib/streams-provider-datasift/src/main/jsonschema/com/datasift/Datasift.json
@@ -28,7 +28,8 @@
                     "type": "string"
                 },
                 "created_at": {
-                    "type": "string"
+                    "type": "string",
+                    "format": "date-time"
                 },
                 "domain": {
                     "type": "string"
@@ -83,7 +84,8 @@
                     }
                 },
                 "created_at": {
-                    "type": "string"
+                    "type": "string",
+                    "format": "date-time"
                 },
                 "id": {
                     "type": "string"
@@ -172,7 +174,8 @@
                     "type": "string"
                 },
                 "created_at": {
-                    "type": "string"
+                    "type": "string",
+                    "format": "date-time"
                 },
                 "geo": {
                     "javaType": "org.apache.streams.datasift.interaction.Geo",

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-facebook/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-facebook/pom.xml b/streams-contrib/streams-provider-facebook/pom.xml
index bda986b..0d54255 100644
--- a/streams-contrib/streams-provider-facebook/pom.xml
+++ b/streams-contrib/streams-provider-facebook/pom.xml
@@ -89,7 +89,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>com.facebook</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-facebook/src/main/java/com/facebook/api/FacebookPostActivitySerializer.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-facebook/src/main/java/com/facebook/api/FacebookPostActivitySerializer.java b/streams-contrib/streams-provider-facebook/src/main/java/com/facebook/api/FacebookPostActivitySerializer.java
index 73de52b..2d53d48 100644
--- a/streams-contrib/streams-provider-facebook/src/main/java/com/facebook/api/FacebookPostActivitySerializer.java
+++ b/streams-contrib/streams-provider-facebook/src/main/java/com/facebook/api/FacebookPostActivitySerializer.java
@@ -19,11 +19,28 @@
 package com.facebook.api;
 
 
+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.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
+import com.fasterxml.jackson.databind.module.SimpleModule;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
+import com.fasterxml.jackson.datatype.joda.JodaModule;
 import org.apache.commons.lang.NotImplementedException;
 import org.apache.streams.data.ActivitySerializer;
+import org.apache.streams.exceptions.ActivitySerializerException;
 import org.apache.streams.pojo.json.*;
+import org.joda.time.DateTime;
+import org.joda.time.format.DateTimeFormat;
+import org.joda.time.format.DateTimeFormatter;
+import org.joda.time.format.ISODateTimeFormat;
 
+import java.io.IOException;
 import java.text.DateFormat;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
@@ -35,12 +52,38 @@ import static org.apache.streams.data.util.JsonUtil.jsonToJsonNode;
 
 /**
  * Serializes activity posts
+ *   sblackmon: This class needs a rewrite
  */
 public class FacebookPostActivitySerializer implements ActivitySerializer<String> {
 
-    public static final String DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ssZ";
+    public static final DateTimeFormatter FACEBOOK_FORMAT = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ssZ");
+    public static final DateTimeFormatter ACTIVITY_FORMAT = ISODateTimeFormat.basicDateTime();
+
     public static final String PROVIDER_NAME = "facebook";
 
+    public static ObjectMapper mapper;
+    static {
+        mapper = new ObjectMapper();
+        mapper.registerModule(new JodaModule());
+        mapper.disable(com.fasterxml.jackson.databind.SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
+        mapper.registerModule(new SimpleModule() {
+            {
+                addSerializer(DateTime.class, new StdSerializer<DateTime>(DateTime.class) {
+                    @Override
+                    public void serialize(DateTime value, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonGenerationException {
+                        jgen.writeString(ACTIVITY_FORMAT.print(value));
+                    }
+                });
+                addDeserializer(DateTime.class, new StdDeserializer<DateTime>(DateTime.class) {
+                    @Override
+                    public DateTime deserialize(JsonParser jpar, DeserializationContext context) throws IOException, JsonProcessingException {
+                        return FACEBOOK_FORMAT.parseDateTime(jpar.getValueAsString());
+                    }
+                });
+            }
+        });
+    }
+
     @Override
     public String serializationFormat() {
         return "facebook_post_json_v1";
@@ -52,7 +95,7 @@ public class FacebookPostActivitySerializer implements ActivitySerializer<String
     }
 
     @Override
-    public Activity deserialize(String serialized) {
+    public Activity deserialize(String serialized) throws ActivitySerializerException {
         //Deserialize the JSON string into a Jackson JsonNode
         JsonNode node = jsonToJsonNode(serialized);
         Map.Entry<String, JsonNode> field = getObjectType(node);
@@ -107,7 +150,7 @@ public class FacebookPostActivitySerializer implements ActivitySerializer<String
         return field;
     }
 
-    private void parseObject(Activity activity, JsonNode jsonNode) {
+    private void parseObject(Activity activity, JsonNode jsonNode) throws ActivitySerializerException {
         for(Iterator<Map.Entry<String, JsonNode>> fields = jsonNode.fields(); fields.hasNext();) {
             Map.Entry<String, JsonNode> field = fields.next();
             String key = field.getKey();
@@ -116,15 +159,15 @@ public class FacebookPostActivitySerializer implements ActivitySerializer<String
         }
     }
 
-    private void mapField(Activity activity, String name, JsonNode value) {
-        if("application".equals(name)) {
+    private void mapField(Activity activity, String name, JsonNode value) throws ActivitySerializerException {
+        if ("created_time".equals(name)) {
+            activity.setPublished(parseDate(value));
+        } else if("application".equals(name)) {
             addGenerator(activity, value);
         } else if ("caption".equals(name)) {
             addSummary(activity, value);
         } else if ("comments".equals(name)) {
             addAttachments(activity, value);
-        } else if ("created_time".equals(name)) {
-            addDate(activity, value);
         } else if ("description".equals(name)) {
             addObjectSummary(activity, value);
         } else if ("from".equals(name)) {
@@ -161,7 +204,11 @@ public class FacebookPostActivitySerializer implements ActivitySerializer<String
     }
 
     private void addObjectUpdated(Activity activity, JsonNode value) {
-        activity.getObject().setUpdated(parseDate(value));
+        try {
+            activity.getObject().setUpdated(parseDate(value));
+        } catch( ActivitySerializerException e ) {
+            // losing this field is ok
+        }
     }
 
     private void addSummary(Activity activity, JsonNode value) {
@@ -248,10 +295,6 @@ public class FacebookPostActivitySerializer implements ActivitySerializer<String
         activity.getObject().setSummary(value.asText());
     }
 
-    private void addDate(Activity activity, JsonNode value) {
-        activity.setPublished(parseDate(value));
-    }
-
     private void addGenerator(Activity activity, JsonNode value) {
         Generator generator = new Generator();
         if(value.has("id")) {
@@ -281,13 +324,11 @@ public class FacebookPostActivitySerializer implements ActivitySerializer<String
         }
     }
 
-    private static Date parseDate(JsonNode value) {
-        DateFormat fmt = new SimpleDateFormat(DATE_FORMAT);
+    private static DateTime parseDate(JsonNode value) throws ActivitySerializerException {
         try {
-            return
-                    fmt.parse(value.asText());
-        } catch (ParseException e) {
-            throw new RuntimeException("Unable to parse date " + value.asText());
+            return FACEBOOK_FORMAT.parseDateTime(value.asText());
+        } catch (Exception e) {
+            throw new ActivitySerializerException("Unable to parse date " + value.asText());
         }
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-gnip/gnip-edc-facebook/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-gnip/gnip-edc-facebook/pom.xml b/streams-contrib/streams-provider-gnip/gnip-edc-facebook/pom.xml
index 39befa4..088ba7a 100644
--- a/streams-contrib/streams-provider-gnip/gnip-edc-facebook/pom.xml
+++ b/streams-contrib/streams-provider-gnip/gnip-edc-facebook/pom.xml
@@ -46,6 +46,10 @@
             <artifactId>streams-pojo</artifactId>
         </dependency>
         <dependency>
+            <groupId>com.fasterxml.jackson.datatype</groupId>
+            <artifactId>jackson-datatype-joda</artifactId>
+        </dependency>
+        <dependency>
             <groupId>org.apache.streams</groupId>
             <artifactId>streams-provider-facebook</artifactId>
             <version>0.1-SNAPSHOT</version>
@@ -110,7 +114,7 @@
                         <plugin>
                             <groupId>org.jvnet.jaxb2_commons</groupId>
                             <artifactId>jaxb2-basics</artifactId>
-                            <version>0.6.5</version>
+                            <version>${jaxb2-basics.version}</version>
                         </plugin>
                     </plugins>
                 </configuration>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-gnip/gnip-edc-facebook/src/test/java/org/apache/streams/gnip/facebook/test/FacebookEDCSerDeTest.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-gnip/gnip-edc-facebook/src/test/java/org/apache/streams/gnip/facebook/test/FacebookEDCSerDeTest.java b/streams-contrib/streams-provider-gnip/gnip-edc-facebook/src/test/java/org/apache/streams/gnip/facebook/test/FacebookEDCSerDeTest.java
index df58820..1ab9663 100644
--- a/streams-contrib/streams-provider-gnip/gnip-edc-facebook/src/test/java/org/apache/streams/gnip/facebook/test/FacebookEDCSerDeTest.java
+++ b/streams-contrib/streams-provider-gnip/gnip-edc-facebook/src/test/java/org/apache/streams/gnip/facebook/test/FacebookEDCSerDeTest.java
@@ -1,15 +1,26 @@
 package org.apache.streams.gnip.facebook.test;
 
+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.DeserializationFeature;
 import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
+import com.fasterxml.jackson.databind.module.SimpleModule;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
 import com.fasterxml.jackson.dataformat.xml.XmlMapper;
 import com.gnip.api.Entry;
+import org.joda.time.DateTime;
 import org.junit.Assert;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.BufferedReader;
+import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-gnip/gnip-edc-flickr/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-gnip/gnip-edc-flickr/pom.xml b/streams-contrib/streams-provider-gnip/gnip-edc-flickr/pom.xml
index f56f9cc..0395cb8 100644
--- a/streams-contrib/streams-provider-gnip/gnip-edc-flickr/pom.xml
+++ b/streams-contrib/streams-provider-gnip/gnip-edc-flickr/pom.xml
@@ -69,7 +69,6 @@
             <plugin>
                 <groupId>org.codehaus.mojo</groupId>
                 <artifactId>build-helper-maven-plugin</artifactId>
-                <version>1.8</version>
                 <executions>
                     <execution>
                         <id>add-source-jaxb2</id>
@@ -101,7 +100,7 @@
                         <plugin>
                             <groupId>org.jvnet.jaxb2_commons</groupId>
                             <artifactId>jaxb2-basics</artifactId>
-                            <version>0.6.5</version>
+                            <version>${jaxb2-basics.version}</version>
                         </plugin>
                     </plugins>
                 </configuration>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/pom.xml b/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/pom.xml
index 9933f57..88822f9 100644
--- a/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/pom.xml
+++ b/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/pom.xml
@@ -16,7 +16,6 @@
         <dependency>
             <groupId>org.jsonschema2pojo</groupId>
             <artifactId>jsonschema2pojo-core</artifactId>
-
             <type>jar</type>
             <scope>compile</scope>
         </dependency>
@@ -24,44 +23,32 @@
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-core</artifactId>
-            <version>2.1.1</version>
         </dependency>
 
         <dependency>
             <groupId>com.fasterxml.jackson.dataformat</groupId>
             <artifactId>jackson-dataformat-xml</artifactId>
-            <version>${jackson.version}</version>
         </dependency>
 
         <dependency>
             <groupId>com.fasterxml</groupId>
             <artifactId>jackson-xml-databind</artifactId>
-            <version>0.5.0</version>
         </dependency>
 
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>4.11</version>
             <scope>test</scope>
         </dependency>
 
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-api</artifactId>
-            <version>1.6.1</version>
-        </dependency>
-
-        <dependency>
-            <groupId>ch.qos.logback</groupId>
-            <artifactId>logback-classic</artifactId>
-            <version>1.0.9</version>
         </dependency>
 
         <dependency>
             <groupId>org.json</groupId>
             <artifactId>json</artifactId>
-            <version>20090211</version>
         </dependency>
 
         <dependency>
@@ -118,7 +105,7 @@
             <!--<outputDirectory>src/main/java</outputDirectory>-->
             <!--<targetPackage>org.apache.streams</targetPackage>-->
             <!--<useLongIntegers>true</useLongIntegers>-->
-            <!--<useJodaDates>false</useJodaDates>-->
+            <!--<useJodaDates>true</useJodaDates>-->
             <!--</configuration>-->
             <!--<executions>-->
             <!--<execution>-->

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-gnip/gnip-edc-instagram/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-gnip/gnip-edc-instagram/pom.xml b/streams-contrib/streams-provider-gnip/gnip-edc-instagram/pom.xml
index fd50125..1c450b6 100644
--- a/streams-contrib/streams-provider-gnip/gnip-edc-instagram/pom.xml
+++ b/streams-contrib/streams-provider-gnip/gnip-edc-instagram/pom.xml
@@ -52,7 +52,6 @@
             <plugin>
                 <groupId>org.codehaus.mojo</groupId>
                 <artifactId>build-helper-maven-plugin</artifactId>
-                <version>1.8</version>
                 <executions>
                     <execution>
                         <id>add-source</id>
@@ -80,7 +79,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>com.instagram</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-gnip/gnip-edc-reddit/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-gnip/gnip-edc-reddit/pom.xml b/streams-contrib/streams-provider-gnip/gnip-edc-reddit/pom.xml
index d74def2..b6535af 100644
--- a/streams-contrib/streams-provider-gnip/gnip-edc-reddit/pom.xml
+++ b/streams-contrib/streams-provider-gnip/gnip-edc-reddit/pom.xml
@@ -34,32 +34,27 @@
         <dependency>
             <groupId>com.fasterxml</groupId>
             <artifactId>jackson-xml-databind</artifactId>
-            <version>0.5.0</version>
         </dependency>
 
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>4.11</version>
             <scope>test</scope>
         </dependency>
 
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-api</artifactId>
-            <version>1.6.1</version>
         </dependency>
 
         <dependency>
             <groupId>ch.qos.logback</groupId>
             <artifactId>logback-classic</artifactId>
-            <version>1.0.9</version>
         </dependency>
 
         <dependency>
             <groupId>org.json</groupId>
             <artifactId>json</artifactId>
-            <version>20090211</version>
         </dependency>
 
         <dependency>
@@ -92,7 +87,6 @@
         <plugins>
             <plugin>
                 <artifactId>maven-clean-plugin</artifactId>
-                <version>2.5</version>
                 <configuration>
                     <filesets>
                         <fileset>
@@ -123,7 +117,7 @@
                     <!--<outputDirectory>src/main/java</outputDirectory>-->
                     <!--<targetPackage>org.apache.streams</targetPackage>-->
             <!--<useLongIntegers>true</useLongIntegers>-->
-            <!--<useJodaDates>false</useJodaDates>-->
+            <!--<useJodaDates>true</useJodaDates>-->
                 <!--</configuration>-->
                 <!--<executions>-->
                     <!--<execution>-->

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-gnip/gnip-powertrack/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-gnip/gnip-powertrack/pom.xml b/streams-contrib/streams-provider-gnip/gnip-powertrack/pom.xml
index 57578f0..0cd2029 100644
--- a/streams-contrib/streams-provider-gnip/gnip-powertrack/pom.xml
+++ b/streams-contrib/streams-provider-gnip/gnip-powertrack/pom.xml
@@ -121,7 +121,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>com.gnip</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-google/google-gmail/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gmail/pom.xml b/streams-contrib/streams-provider-google/google-gmail/pom.xml
index f035202..487d6be 100644
--- a/streams-contrib/streams-provider-google/google-gmail/pom.xml
+++ b/streams-contrib/streams-provider-google/google-gmail/pom.xml
@@ -123,7 +123,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.google.gmail.pojo</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-google/google-gmail/src/main/java/com/google/gmail/provider/GMailMessageActivitySerializer.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gmail/src/main/java/com/google/gmail/provider/GMailMessageActivitySerializer.java b/streams-contrib/streams-provider-google/google-gmail/src/main/java/com/google/gmail/provider/GMailMessageActivitySerializer.java
index 6c49bda..03e8f49 100644
--- a/streams-contrib/streams-provider-google/google-gmail/src/main/java/com/google/gmail/provider/GMailMessageActivitySerializer.java
+++ b/streams-contrib/streams-provider-google/google-gmail/src/main/java/com/google/gmail/provider/GMailMessageActivitySerializer.java
@@ -85,7 +85,7 @@ public class GMailMessageActivitySerializer implements ActivitySerializer<GmailM
 
         Activity activity = new Activity();
         activity.setId(formatId(this.provider.getConfig().getUserName(), String.valueOf(gmailMessage.getMessageNumber())));
-        activity.setPublished(gmailMessage.getSendDate());
+        activity.setPublished(new DateTime(gmailMessage.getSendDate()));
         Provider provider = new Provider();
         provider.setId("http://gmail.com");
         provider.setDisplayName("GMail");

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-google/google-gplus/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/pom.xml b/streams-contrib/streams-provider-google/google-gplus/pom.xml
index ffb792c..35acf03 100644
--- a/streams-contrib/streams-provider-google/google-gplus/pom.xml
+++ b/streams-contrib/streams-provider-google/google-gplus/pom.xml
@@ -130,7 +130,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.google.gplus.pojo</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusActivitySerializer.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusActivitySerializer.java b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusActivitySerializer.java
index 9bb6350..0446c61 100644
--- a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusActivitySerializer.java
+++ b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/provider/GPlusActivitySerializer.java
@@ -8,6 +8,7 @@ import com.google.common.collect.Lists;
 import org.apache.commons.lang.NotImplementedException;
 import org.apache.streams.data.ActivitySerializer;
 import org.apache.streams.pojo.json.*;
+import org.joda.time.DateTime;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -61,7 +62,7 @@ public class GPlusActivitySerializer implements ActivitySerializer<com.google.ap
 
         Activity activity = new Activity();
         activity.setId(formatId(gplusActivity.getId()));
-        activity.setPublished(new Date(gplusActivity.getPublished().getValue()));
+        activity.setPublished(new DateTime(gplusActivity.getPublished().getValue()));
         Provider provider = new Provider();
         provider.setId("http://plus.google.com");
         provider.setDisplayName("GPlus");

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-moreover/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-moreover/pom.xml b/streams-contrib/streams-provider-moreover/pom.xml
index 521a865..e6a7359 100644
--- a/streams-contrib/streams-provider-moreover/pom.xml
+++ b/streams-contrib/streams-provider-moreover/pom.xml
@@ -125,7 +125,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>com.moreover</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-moreover/src/main/java/org/apache/streams/data/util/MoreoverUtils.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-moreover/src/main/java/org/apache/streams/data/util/MoreoverUtils.java b/streams-contrib/streams-provider-moreover/src/main/java/org/apache/streams/data/util/MoreoverUtils.java
index 6f11b52..9ee2f25 100644
--- a/streams-contrib/streams-provider-moreover/src/main/java/org/apache/streams/data/util/MoreoverUtils.java
+++ b/streams-contrib/streams-provider-moreover/src/main/java/org/apache/streams/data/util/MoreoverUtils.java
@@ -30,7 +30,7 @@ public class MoreoverUtils {
         activity.setProvider(convert(source));
         activity.setTarget(convertTarget(source));
         activity.setObject(convertObject(article));
-        activity.setPublished(DateTime.parse(article.getPublishedDate()).toDate());
+        activity.setPublished(DateTime.parse(article.getPublishedDate()));
         activity.setContent(article.getContent());
         activity.setTitle(article.getTitle());
         activity.setVerb("posted");
@@ -73,7 +73,7 @@ public class MoreoverUtils {
         object.setObjectType(article.getDataFormat());
         String type = article.getDataFormat().equals("text") ? "article" : article.getDataFormat();
         object.setId(getObjectId(getProviderID(article.getSource().getFeed()), type, article.getId()));
-        object.setPublished(DateTime.parse(article.getPublishedDate()).toDate());
+        object.setPublished(DateTime.parse(article.getPublishedDate()));
         return object;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-rss/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-rss/pom.xml b/streams-contrib/streams-provider-rss/pom.xml
index ae2d00f..6778de8 100644
--- a/streams-contrib/streams-provider-rss/pom.xml
+++ b/streams-contrib/streams-provider-rss/pom.xml
@@ -118,7 +118,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.rss.pojo</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-sysomos/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-sysomos/pom.xml b/streams-contrib/streams-provider-sysomos/pom.xml
index 5a42b17..9313a99 100644
--- a/streams-contrib/streams-provider-sysomos/pom.xml
+++ b/streams-contrib/streams-provider-sysomos/pom.xml
@@ -137,7 +137,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>com.sysomos</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-twitter/pom.xml
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-twitter/pom.xml b/streams-contrib/streams-provider-twitter/pom.xml
index aec397b..592f1b7 100644
--- a/streams-contrib/streams-provider-twitter/pom.xml
+++ b/streams-contrib/streams-provider-twitter/pom.xml
@@ -25,6 +25,10 @@
             <artifactId>jackson-annotations</artifactId>
         </dependency>
         <dependency>
+            <groupId>com.fasterxml.jackson.datatype</groupId>
+            <artifactId>jackson-datatype-joda</artifactId>
+        </dependency>
+        <dependency>
             <groupId>org.jsonschema2pojo</groupId>
             <artifactId>jsonschema2pojo-core</artifactId>
         </dependency>
@@ -70,21 +74,7 @@
             <artifactId>twitter4j-core</artifactId>
             <version>3.0.5</version>
         </dependency>
-        <!--<dependency>-->
-            <!--<groupId>com.twitter</groupId>-->
-            <!--<artifactId>finagle-core_2.10</artifactId>-->
-            <!--<version>6.9.0</version>-->
-        <!--</dependency>-->
-        <!--<dependency>-->
-            <!--<groupId>com.twitter</groupId>-->
-            <!--<artifactId>finagle-http_2.10</artifactId>-->
-            <!--<version>6.9.0</version>-->
-        <!--</dependency>-->
-        <!--<dependency>-->
-            <!--<groupId>com.twitter</groupId>-->
-            <!--<artifactId>finagle-stream_2.10</artifactId>-->
-            <!--<version>6.9.0</version>-->
-        <!--</dependency>-->
+
     </dependencies>
 
     <build>
@@ -135,7 +125,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.twitter.pojo</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonEventActivitySerializer.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonEventActivitySerializer.java b/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonEventActivitySerializer.java
index 004791c..bc52359 100644
--- a/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonEventActivitySerializer.java
+++ b/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonEventActivitySerializer.java
@@ -1,15 +1,22 @@
 package org.apache.streams.twitter.serializer;
 
-import com.fasterxml.jackson.databind.AnnotationIntrospector;
-import com.fasterxml.jackson.databind.DeserializationFeature;
-import com.fasterxml.jackson.databind.ObjectMapper;
+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.*;
+import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
+import com.fasterxml.jackson.databind.module.SimpleModule;
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
+import com.fasterxml.jackson.datatype.joda.JodaModule;
 import com.fasterxml.jackson.module.jaxb.JaxbAnnotationIntrospector;
 import com.google.common.base.Joiner;
 import com.google.common.collect.Lists;
 import org.apache.commons.lang.NotImplementedException;
 import org.apache.streams.data.ActivitySerializer;
 import org.apache.streams.exceptions.ActivitySerializerException;
+import org.apache.streams.jackson.StreamsJacksonModule;
 import org.apache.streams.pojo.json.Activity;
 import org.apache.streams.pojo.json.Generator;
 import org.apache.streams.pojo.json.Icon;
@@ -17,6 +24,7 @@ import org.apache.streams.pojo.json.Provider;
 import org.joda.time.DateTime;
 import org.joda.time.format.DateTimeFormat;
 import org.joda.time.format.DateTimeFormatter;
+import org.joda.time.format.ISODateTimeFormat;
 
 import java.io.IOException;
 import java.io.Serializable;
@@ -35,9 +43,24 @@ import java.util.Map;
 public abstract class TwitterJsonEventActivitySerializer implements ActivitySerializer<String>, Serializable {
 
     public static final DateTimeFormatter TWITTER_FORMAT = DateTimeFormat.forPattern("EEE MMM dd HH:mm:ss Z yyyy");
-    public static final DateTimeFormatter ACTIVITY_FORMAT = DateTimeFormat.forPattern("EEE MMM dd HH:mm:ss Z yyyy");
-
-    public static final ObjectMapper mapper = new ObjectMapper();
+    public static final DateTimeFormatter ACTIVITY_FORMAT = ISODateTimeFormat.basicDateTime();
+
+    public static ObjectMapper mapper;
+    static {
+        mapper = new ObjectMapper();
+        //mapper.registerModule(new JodaModule());
+        mapper.disable(com.fasterxml.jackson.databind.SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
+        mapper.registerModule(new StreamsJacksonModule() {
+            {
+                addDeserializer(DateTime.class, new StdDeserializer<DateTime>(DateTime.class) {
+                    @Override
+                    public DateTime deserialize(JsonParser jpar, DeserializationContext context) throws IOException, JsonProcessingException {
+                        return TWITTER_FORMAT.parseDateTime(jpar.getValueAsString());
+                    }
+                });
+            }
+        });
+    }
 
     @Override
     public String serializationFormat() {
@@ -87,14 +110,6 @@ public abstract class TwitterJsonEventActivitySerializer implements ActivitySeri
         throw new NotImplementedException("Not currently implemented");
     }
 
-    public static Date parse(String str) throws ParseException {
-        DateTime dateTime;
-        String dstr;
-        dateTime = TWITTER_FORMAT.parseDateTime(str);
-        dstr = ACTIVITY_FORMAT.print(dateTime);
-        return ACTIVITY_FORMAT.parseDateTime(dstr).toDate();
-    }
-
     public static Generator buildGenerator(ObjectNode event) {
         return null;
     }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonRetweetActivitySerializer.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonRetweetActivitySerializer.java b/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonRetweetActivitySerializer.java
index de96742..dc1f0ab 100644
--- a/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonRetweetActivitySerializer.java
+++ b/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonRetweetActivitySerializer.java
@@ -2,6 +2,7 @@ package org.apache.streams.twitter.serializer;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.base.Optional;
 import com.google.common.base.Strings;
 import com.google.common.collect.Lists;
 import org.apache.streams.data.ActivitySerializer;
@@ -41,12 +42,13 @@ public class TwitterJsonRetweetActivitySerializer extends TwitterJsonEventActivi
         Activity activity = new Activity();
         activity.setActor(buildActor(retweet));
         activity.setVerb("share");
-        activity.setObject(buildActivityObject(retweet.getRetweetedStatus()));
+        if( retweet.getRetweetedStatus() != null )
+            activity.setObject(buildActivityObject(retweet.getRetweetedStatus()));
         activity.setId(formatId(activity.getVerb(), retweet.getIdStr()));
         if(Strings.isNullOrEmpty(activity.getId()))
             throw new ActivitySerializerException("Unable to determine activity id");
         try {
-            activity.setPublished(parse(retweet.getCreatedAt()));
+            activity.setPublished(retweet.getCreatedAt());
         } catch( Exception e ) {
             throw new ActivitySerializerException("Unable to determine publishedDate", e);
         }
@@ -56,18 +58,22 @@ public class TwitterJsonRetweetActivitySerializer extends TwitterJsonEventActivi
         activity.setTitle("");
         activity.setContent(retweet.getRetweetedStatus().getText());
         activity.setUrl(getUrls(event));
-        activity.setLinks(getLinks(retweet));
+        activity.setLinks(TwitterJsonTweetActivitySerializer.getLinks(retweet));
         addTwitterExtension(activity, event);
         addLocationExtension(activity, retweet);
         return activity;
     }
 
-    public static Actor buildActor(Tweet tweet) {
+    public static Actor buildActor(Retweet retweet) {
         Actor actor = new Actor();
-        User user = tweet.getUser();
-        actor.setId(formatId(user.getIdStr(), tweet.getIdStr()));
+        User user = retweet.getUser();
+        actor.setId(formatId(
+                Optional.fromNullable(
+                        user.getIdStr())
+                        .or(Optional.of(user.getId().toString()))
+                        .orNull()
+        ));
         actor.setDisplayName(user.getScreenName());
-        actor.setId(user.getIdStr());
         if (user.getUrl()!=null){
             actor.setUrl(user.getUrl());
         }
@@ -76,19 +82,16 @@ public class TwitterJsonRetweetActivitySerializer extends TwitterJsonEventActivi
 
     public static ActivityObject buildActivityObject(Tweet tweet) {
         ActivityObject actObj = new ActivityObject();
-        actObj.setId(formatId(tweet.getIdStr()));
+        String id =  Optional.fromNullable(
+                tweet.getIdStr())
+                .or(Optional.of(tweet.getId().toString()))
+                .orNull();
+        if( id != null )
+            actObj.setId(id);
         actObj.setObjectType("tweet");
         return actObj;
     }
 
-    public static List<Object> getLinks(Retweet retweet) {
-        List<Object> links = Lists.newArrayList();
-        for( Url url : retweet.getRetweetedStatus().getEntities().getUrls() ) {
-            links.add(url.getExpandedUrl());
-        }
-        return links;
-    }
-
     public static void addLocationExtension(Activity activity, Retweet retweet) {
         Map<String, Object> extensions = ensureExtensions(activity);
         Map<String, Object> location = new HashMap<String, Object>();

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonTweetActivitySerializer.java
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonTweetActivitySerializer.java b/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonTweetActivitySerializer.java
index 25943b5..dd40cd9 100644
--- a/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonTweetActivitySerializer.java
+++ b/streams-contrib/streams-provider-twitter/src/main/java/org/apache/streams/twitter/serializer/TwitterJsonTweetActivitySerializer.java
@@ -50,7 +50,6 @@ public class TwitterJsonTweetActivitySerializer extends TwitterJsonEventActivity
 
         activity.setActor(buildActor(tweet));
         activity.setVerb("post");
-        activity.setObject(buildActivityObject(tweet));
         activity.setId(formatId(activity.getVerb(),
                 Optional.fromNullable(
                         tweet.getIdStr())
@@ -59,7 +58,7 @@ public class TwitterJsonTweetActivitySerializer extends TwitterJsonEventActivity
         if(Strings.isNullOrEmpty(activity.getId()))
             throw new ActivitySerializerException("Unable to determine activity id");
         try {
-            activity.setPublished(parse(tweet.getCreatedAt()));
+            activity.setPublished(tweet.getCreatedAt());
         } catch( Exception e ) {
             throw new ActivitySerializerException("Unable to determine publishedDate", e);
         }
@@ -95,23 +94,12 @@ public class TwitterJsonTweetActivitySerializer extends TwitterJsonEventActivity
         return actor;
     }
 
-    public static ActivityObject buildActivityObject(Tweet tweet) {
-        ActivityObject actObj = new ActivityObject();
-        actObj.setObjectType("tweet");
-        actObj.setId(formatId(
-                Optional.fromNullable(
-                        tweet.getIdStr())
-                        .or(Optional.of(tweet.getId().toString()))
-                        .orNull()
-        ));
-        return actObj;
-    }
-
     public static List<Object> getLinks(Tweet tweet) {
         List<Object> links = Lists.newArrayList();
-        for( Url url : tweet.getEntities().getUrls() ) {
-            links.add(url.getExpandedUrl());
-        }
+        if( tweet.getEntities().getUrls() != null )
+            for( Url url : tweet.getEntities().getUrls() ) {
+                links.add(url.getExpandedUrl());
+            }
         return links;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-contrib/streams-provider-twitter/src/main/jsonschema/com/twitter/tweet.json
----------------------------------------------------------------------
diff --git a/streams-contrib/streams-provider-twitter/src/main/jsonschema/com/twitter/tweet.json b/streams-contrib/streams-provider-twitter/src/main/jsonschema/com/twitter/tweet.json
index dcde108..32c93bb 100644
--- a/streams-contrib/streams-provider-twitter/src/main/jsonschema/com/twitter/tweet.json
+++ b/streams-contrib/streams-provider-twitter/src/main/jsonschema/com/twitter/tweet.json
@@ -153,7 +153,8 @@
             "type": "integer"
         },
         "created_at": {
-            "type": "string"
+            "type" : "string",
+            "format" : "date-time"
         },
         "in_reply_to_user_id": {
             "ignore_malformed": false,
@@ -224,7 +225,8 @@
                     "type": "string"
                 },
                 "created_at": {
-                    "type": "string"
+                    "type": "string",
+                    "format": "date-time"
                 },
                 "default_profile_image": {
                     "type": "boolean"

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-core/pom.xml
----------------------------------------------------------------------
diff --git a/streams-core/pom.xml b/streams-core/pom.xml
index 7f22cb1..9546b5f 100644
--- a/streams-core/pom.xml
+++ b/streams-core/pom.xml
@@ -31,19 +31,11 @@
 
     <dependencies>
         <dependency>
-            <groupId>joda-time</groupId>
-            <artifactId>joda-time</artifactId>
-        </dependency>
-        <dependency>
             <groupId>org.apache.streams</groupId>
             <artifactId>streams-util</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.streams</groupId>
-            <artifactId>streams-pojo</artifactId>
-        </dependency>
-        <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-core</artifactId>
         </dependency>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-osgi-components/activity-consumer/pom.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/activity-consumer/pom.xml b/streams-osgi-components/activity-consumer/pom.xml
index aa03c47..f4964d5 100644
--- a/streams-osgi-components/activity-consumer/pom.xml
+++ b/streams-osgi-components/activity-consumer/pom.xml
@@ -141,7 +141,7 @@
 
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-cassandra</artifactId>
+            <artifactId>streams-persist-cassandra</artifactId>
             <version>0.1-SNAPSHOT</version>
         </dependency>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-osgi-components/streams-components-all/pom.xml
----------------------------------------------------------------------
diff --git a/streams-osgi-components/streams-components-all/pom.xml b/streams-osgi-components/streams-components-all/pom.xml
index 7fb055c..448f1a4 100644
--- a/streams-osgi-components/streams-components-all/pom.xml
+++ b/streams-osgi-components/streams-components-all/pom.xml
@@ -52,13 +52,13 @@
 
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-eip-routes</artifactId>
+            <artifactId>streams-runtime-webapp</artifactId>
           <version>${project.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-cassandra</artifactId>
+            <artifactId>streams-persist-cassandra</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-pojo/pom.xml
----------------------------------------------------------------------
diff --git a/streams-pojo/pom.xml b/streams-pojo/pom.xml
index 082e481..f990e52 100644
--- a/streams-pojo/pom.xml
+++ b/streams-pojo/pom.xml
@@ -46,6 +46,16 @@
         </dependency>
 
         <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-databind</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>com.fasterxml.jackson.datatype</groupId>
+            <artifactId>jackson-datatype-joda</artifactId>
+        </dependency>
+
+        <dependency>
             <groupId>com.fasterxml.jackson.dataformat</groupId>
             <artifactId>jackson-dataformat-xml</artifactId>
         </dependency>
@@ -53,6 +63,7 @@
         <dependency>
             <groupId>com.fasterxml</groupId>
             <artifactId>jackson-xml-databind</artifactId>
+            <version>0.6.2</version>
         </dependency>
 
         <dependency>
@@ -78,7 +89,6 @@
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>4.11</version>
             <scope>test</scope>
         </dependency>
 
@@ -87,11 +97,6 @@
             <artifactId>slf4j-api</artifactId>
         </dependency>
 
-        <dependency>
-            <groupId>ch.qos.logback</groupId>
-            <artifactId>logback-classic</artifactId>
-        </dependency>
-
     </dependencies>
 
     <build>
@@ -142,7 +147,6 @@
             <plugin>
                 <groupId>org.jsonschema2pojo</groupId>
                 <artifactId>jsonschema2pojo-maven-plugin</artifactId>
-                <version>0.4.0</version>
                 <configuration>
                     <addCompileSourceRoot>true</addCompileSourceRoot>
                     <generateBuilders>true</generateBuilders>
@@ -191,7 +195,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.pojo.json</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-runtimes/streams-runtime-local/pom.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-local/pom.xml b/streams-runtimes/streams-runtime-local/pom.xml
index d9f6d51..51be8c4 100644
--- a/streams-runtimes/streams-runtime-local/pom.xml
+++ b/streams-runtimes/streams-runtime-local/pom.xml
@@ -105,7 +105,7 @@
                     <outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
                     <targetPackage>org.apache.streams.local</targetPackage>
                     <useLongIntegers>true</useLongIntegers>
-                    <useJodaDates>false</useJodaDates>
+                    <useJodaDates>true</useJodaDates>
                 </configuration>
                 <executions>
                     <execution>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-runtimes/streams-runtime-local/src/test/java/org/apache/streams/local/builders/LocalStreamBuilderTest.java
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-local/src/test/java/org/apache/streams/local/builders/LocalStreamBuilderTest.java b/streams-runtimes/streams-runtime-local/src/test/java/org/apache/streams/local/builders/LocalStreamBuilderTest.java
index ac4fb5e..f627e15 100644
--- a/streams-runtimes/streams-runtime-local/src/test/java/org/apache/streams/local/builders/LocalStreamBuilderTest.java
+++ b/streams-runtimes/streams-runtime-local/src/test/java/org/apache/streams/local/builders/LocalStreamBuilderTest.java
@@ -71,7 +71,7 @@ public class LocalStreamBuilderTest {
             ++count;
             scanner.nextLine();
         }
-        assertEquals(numDatums+2, count);
+        assertEquals(numDatums+1, count);
     }
 
     @Test
@@ -90,7 +90,7 @@ public class LocalStreamBuilderTest {
             ++count;
             scanner.nextLine();
         }
-        assertEquals(numDatums+2, count);
+        assertEquals(numDatums+1, count);
     }
 
     @Test
@@ -112,7 +112,7 @@ public class LocalStreamBuilderTest {
             ++count;
             scanner.nextLine();
         }
-        assertEquals(numDatums+2, count); //+1 is to make sure cleanup is called on the writer
+        assertEquals(numDatums+1, count); //+1 is to make sure cleanup is called on the writer
         assertEquals(parallelHint, PassthroughDatumCounterProcessor.claimedNumber.size()); //test 40 were initialized
         assertTrue(PassthroughDatumCounterProcessor.sawData.size() > 1 && PassthroughDatumCounterProcessor.sawData.size() <= parallelHint); //test more than one processor got data
     }
@@ -137,7 +137,7 @@ public class LocalStreamBuilderTest {
             ++count;
             scanner.nextLine();
         }
-        assertEquals(numDatums1+numDatums2+2, count);
+        assertEquals(numDatums1+numDatums2+1, count);
     }
 
     @Test
@@ -155,7 +155,7 @@ public class LocalStreamBuilderTest {
             ++count;
             scanner.nextLine();
         }
-        assertEquals((numDatums*2)+2, count);
+        assertEquals((numDatums*2)+1, count);
     }
 
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-runtimes/streams-runtime-pig/pom.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-pig/pom.xml b/streams-runtimes/streams-runtime-pig/pom.xml
index 7a3b3dc..4ceaf1d 100644
--- a/streams-runtimes/streams-runtime-pig/pom.xml
+++ b/streams-runtimes/streams-runtime-pig/pom.xml
@@ -21,7 +21,7 @@
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
-        <artifactId>streams-project</artifactId>
+        <artifactId>streams-runtimes</artifactId>
         <groupId>org.apache.streams</groupId>
         <version>0.1-SNAPSHOT</version>
     </parent>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-runtimes/streams-runtime-storm/pom.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-storm/pom.xml b/streams-runtimes/streams-runtime-storm/pom.xml
index 810d277..6be2acb 100644
--- a/streams-runtimes/streams-runtime-storm/pom.xml
+++ b/streams-runtimes/streams-runtime-storm/pom.xml
@@ -21,7 +21,7 @@
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <parent>
-        <artifactId>streams-project</artifactId>
+        <artifactId>streams-runtimes</artifactId>
         <groupId>org.apache.streams</groupId>
         <version>0.1-SNAPSHOT</version>
     </parent>
@@ -41,11 +41,6 @@
         </dependency>
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-config-graph</artifactId>
-            <version>0.1-SNAPSHOT</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.streams</groupId>
             <artifactId>streams-util</artifactId>
             <version>0.1-SNAPSHOT</version>
         </dependency>
@@ -59,15 +54,15 @@
             <version>4.0</version>
         </dependency>
         <dependency>
-            <groupId>storm</groupId>
+            <groupId>org.apache.storm</groupId>
             <artifactId>storm-core</artifactId>
             <scope>provided</scope>
         </dependency>
-        <dependency>
-            <groupId>storm</groupId>
-            <artifactId>storm-netty</artifactId>
-            <scope>provided</scope>
-        </dependency>
+        <!--<dependency>-->
+            <!--<groupId>org.apache.storm</groupId>-->
+            <!--<artifactId>storm-netty</artifactId>-->
+            <!--<scope>provided</scope>-->
+        <!--</dependency>-->
         <dependency>
             <groupId>org.scala-lang</groupId>
             <artifactId>scala-library</artifactId>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-runtimes/streams-runtime-webapp/pom.xml
----------------------------------------------------------------------
diff --git a/streams-runtimes/streams-runtime-webapp/pom.xml b/streams-runtimes/streams-runtime-webapp/pom.xml
index 8753bb7..23b00f3 100644
--- a/streams-runtimes/streams-runtime-webapp/pom.xml
+++ b/streams-runtimes/streams-runtime-webapp/pom.xml
@@ -177,7 +177,7 @@
 
         <dependency>
             <groupId>org.apache.streams</groupId>
-            <artifactId>streams-cassandra</artifactId>
+            <artifactId>streams-persist-cassandra</artifactId>
             <version>${project.version}</version>
         </dependency>
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/68ab7543/streams-web/pom.xml
----------------------------------------------------------------------
diff --git a/streams-web/pom.xml b/streams-web/pom.xml
index 2a44e43..7cab192 100644
--- a/streams-web/pom.xml
+++ b/streams-web/pom.xml
@@ -45,7 +45,7 @@
 
      <dependency>
          <groupId>org.apache.streams</groupId>
-         <artifactId>streams-eip-routes</artifactId>
+         <artifactId>streams-runtime-webapp</artifactId>
          <version>${project.version}</version>
      </dependency>
 
@@ -57,7 +57,7 @@
 
       <dependency>
           <groupId>org.apache.streams</groupId>
-          <artifactId>streams-cassandra</artifactId>
+          <artifactId>streams-persist-cassandra</artifactId>
           <version>${project.version}</version>
       </dependency>