http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/main/java/org/apache/streams/facebook/serializer/FacebookActivityUtil.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/main/java/org/apache/streams/facebook/serializer/FacebookActivityUtil.java
 
b/streams-contrib/streams-provider-facebook/src/main/java/org/apache/streams/facebook/serializer/FacebookActivityUtil.java
index 2cf2a7c..93ac199 100644
--- 
a/streams-contrib/streams-provider-facebook/src/main/java/org/apache/streams/facebook/serializer/FacebookActivityUtil.java
+++ 
b/streams-contrib/streams-provider-facebook/src/main/java/org/apache/streams/facebook/serializer/FacebookActivityUtil.java
@@ -18,11 +18,6 @@
 
 package org.apache.streams.facebook.serializer;
 
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.node.ObjectNode;
-import com.google.common.base.Joiner;
-import com.google.common.base.Optional;
-import com.google.common.collect.Lists;
 import org.apache.streams.data.util.ActivityUtil;
 import org.apache.streams.exceptions.ActivitySerializerException;
 import org.apache.streams.facebook.Cover;
@@ -38,6 +33,13 @@ import org.apache.streams.pojo.json.Activity;
 import org.apache.streams.pojo.json.ActivityObject;
 import org.apache.streams.pojo.json.Image;
 import org.apache.streams.pojo.json.Provider;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.base.Joiner;
+import com.google.common.base.Optional;
+import com.google.common.collect.Lists;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -46,158 +48,163 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+/**
+ * FacebookActivityUtil helps convert facebook data to activity formats.
+ */
 public class FacebookActivityUtil {
-    private static final Logger LOGGER = 
LoggerFactory.getLogger(FacebookActivityUtil.class);
-
-    /**
-     * Updates the given Activity object with the values from the Page
-     * @param page the object to use as the source
-     * @param activity the target of the updates.  Will receive all values 
from the Page.
-     * @throws org.apache.streams.exceptions.ActivitySerializerException
-     */
-    public static void updateActivity(Page page, Activity activity) throws 
ActivitySerializerException {
-        activity.setActor(buildActor(page));
-        activity.setId(null);
-        activity.setProvider(getProvider());
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(FacebookActivityUtil.class);
+
+  /**
+   * Updates the given Activity object with the values from the Page.
+   * @param page the object to use as the source
+   * @param activity the target of the updates.  Will receive all values from 
the Page.
+   * @throws ActivitySerializerException
+   */
+  public static void updateActivity(Page page, Activity activity) throws 
ActivitySerializerException {
+    activity.setActor(buildActor(page));
+    activity.setId(null);
+    activity.setProvider(getProvider());
+  }
+
+  /**
+   * Updates the given Activity object with the values from the Post.
+   * @param post post
+   * @param activity activity
+   * @throws ActivitySerializerException
+   */
+  public static void updateActivity(Post post, Activity activity) throws 
ActivitySerializerException {
+    activity.setActor(buildActor(post));
+    activity.setId(formatId(post.getId()));
+    activity.setProvider(getProvider());
+    activity.setUpdated(post.getUpdatedTime());
+    activity.setPublished(post.getCreatedTime());
+
+    if (post.getLink() != null && post.getLink().length() > 0) {
+      List<String> links = new ArrayList<>();
+      links.add(post.getLink());
+      activity.setLinks(links);
     }
 
-    /**
-     * Updates the given Activity object with the values from the Post
-     * @param post
-     * @param activity
-     * @throws ActivitySerializerException
-     */
-    public static void updateActivity(Post post, Activity activity) throws 
ActivitySerializerException {
-        activity.setActor(buildActor(post));
-        activity.setId(formatId(post.getId()));
-        activity.setProvider(getProvider());
-        activity.setUpdated(post.getUpdatedTime());
-        activity.setPublished(post.getCreatedTime());
-
-        if(post.getLink() != null && post.getLink().length() > 0) {
-            List<String> links = new ArrayList<>();
-            links.add(post.getLink());
-            activity.setLinks(links);
-        }
-
-        activity.setContent(post.getMessage());
-
-        activity.setVerb("post");
-        activity.setObject(buildObject(post));
-        buildExtensions(activity, post);
+    activity.setContent(post.getMessage());
+
+    activity.setVerb("post");
+    activity.setObject(buildObject(post));
+    buildExtensions(activity, post);
+  }
+
+  /**
+   * Builds out the {@link org.apache.streams.pojo.json.ActivityObject} from 
the given {@link Post}.
+   * @param post
+   * @return {@link org.apache.streams.pojo.json.ActivityObject}
+   */
+  public static ActivityObject buildObject(Post post) {
+    ActivityObject activityObject = new ActivityObject();
+
+    try {
+      activityObject.setContent(post.getMessage());
+      activityObject.setPublished(post.getCreatedTime());
+      activityObject.setUpdated(post.getUpdatedTime());
+      activityObject.setDisplayName(post.getFrom().getName());
+      activityObject.setId(formatId(post.getId()));
+      activityObject.setObjectType(post.getType());
+      activityObject.setUrl(post.getLink());
+
+      if (activityObject.getObjectType().equals("photo")) {
+        Image image = new Image();
+        image.setUrl(activityObject.getUrl());
+        activityObject.setImage(image);
+      }
+    } catch (Exception ex) {
+      LOGGER.error("Exception while trying to build Activity object for post: 
{}, exception: {}", post, ex);
     }
 
-    /**
-     * Builds out the {@link org.apache.streams.pojo.json.ActivityObject} from 
the given {@link Post}
-     * @param post
-     * @return {@link org.apache.streams.pojo.json.ActivityObject}
-     */
-    public static ActivityObject buildObject(Post post) {
-        ActivityObject activityObject = new ActivityObject();
-
-        try {
-            activityObject.setContent(post.getMessage());
-            activityObject.setPublished(post.getCreatedTime());
-            activityObject.setUpdated(post.getUpdatedTime());
-            activityObject.setDisplayName(post.getFrom().getName());
-            activityObject.setId(formatId(post.getId()));
-            activityObject.setObjectType(post.getType());
-            activityObject.setUrl(post.getLink());
-
-            if(activityObject.getObjectType().equals("photo")) {
-                Image image = new Image();
-                image.setUrl(activityObject.getUrl());
-                activityObject.setImage(image);
-            }
-        } catch (Exception e) {
-            LOGGER.error("Exception while trying to build Activity object for 
post: {}, exception: {}", post, e);
-        }
-
-        return activityObject;
+    return activityObject;
+  }
+
+  /**
+   * Gets the common facebook {@link org.apache.streams.pojo.json.Provider} 
object.
+   * @return a provider object representing Facebook
+   */
+  public static Provider getProvider() {
+    Provider provider = new Provider();
+    provider.setId("id:providers:facebook");
+    provider.setDisplayName("Facebook");
+
+    return provider;
+  }
+
+  /**
+   * Builds the activity {@link org.apache.streams.pojo.json.ActivityObject} 
actor from the Page.
+   * @param page the object to use as the source
+   * @return a valid Actor populated from the Page
+   */
+  public static ActivityObject buildActor(Page page) {
+    ActivityObject actor = new ActivityObject();
+    actor.setId(formatId(
+        Optional.fromNullable(
+            page.getId())
+            .or(Optional.of(page.getId().toString()))
+            .orNull()
+    ));
+
+    actor.setDisplayName(page.getName());
+    actor.setAdditionalProperty("handle", page.getUsername());
+    actor.setSummary(page.getAbout());
+
+    if (page.getLink() != null) {
+      actor.setUrl(page.getLink());
     }
 
-    /**
-     * Gets the common facebook {@link org.apache.streams.pojo.json.Provider} 
object
-     * @return a provider object representing Facebook
-     */
-    public static Provider getProvider() {
-        Provider provider = new Provider();
-        provider.setId("id:providers:facebook");
-        provider.setDisplayName("Facebook");
+    Image profileImage = new Image();
+    Cover cover = page.getCover();
 
-        return provider;
+    if (cover != null) {
+      profileImage.setUrl(cover.getSource());
     }
-
-    /**
-     * Builds the activity {@link org.apache.streams.pojo.json.ActivityObject} 
actor from the Page
-     * @param page the object to use as the source
-     * @return a valid Actor populated from the Page
-     */
-    public static ActivityObject buildActor(Page page) {
-        ActivityObject actor = new ActivityObject();
-        actor.setId(formatId(
-                Optional.fromNullable(
-                        page.getId())
-                        .or(Optional.of(page.getId().toString()))
-                        .orNull()
-        ));
-
-        actor.setDisplayName(page.getName());
-        actor.setAdditionalProperty("handle", page.getUsername());
-        actor.setSummary(page.getAbout());
-
-        if (page.getLink()!=null){
-            actor.setUrl(page.getLink());
-        }
-
-        Image profileImage = new Image();
-        Cover cover = page.getCover();
-
-        if(cover != null)
-            profileImage.setUrl(cover.getSource());
-        actor.setImage(profileImage);
-
-        buildExtensions(actor, page);
-
-        return actor;
+    actor.setImage(profileImage);
+
+    buildExtensions(actor, page);
+
+    return actor;
+  }
+
+  /**
+   * Builds an {@link org.apache.streams.pojo.json.ActivityObject} object from 
the {@link Post}.
+   * @param post post
+   * @return {@link org.apache.streams.pojo.json.ActivityObject}
+   */
+  public static ActivityObject buildActor(Post post) {
+    ActivityObject actor = new ActivityObject();
+
+    try {
+      actor.setId(formatId(
+          Optional.fromNullable(
+              post.getFrom().getId())
+              .or(Optional.of(post.getFrom().getId()))
+              .orNull()
+      ));
+
+      actor.setDisplayName(post.getFrom().getName());
+      actor.setAdditionalProperty("handle", post.getFrom().getName());
+    } catch (Exception ex) {
+      LOGGER.error("Exception trying to build actor for Post: {}, {}", post, 
ex);
     }
 
-    /**
-     * Builds an {@link org.apache.streams.pojo.json.ActivityObject} object 
from the {@link Post}
-     * @param post
-     * @return {@link org.apache.streams.pojo.json.ActivityObject}
-     */
-    public static ActivityObject buildActor(Post post) {
-        ActivityObject actor = new ActivityObject();
-
-        try {
-            actor.setId(formatId(
-                    Optional.fromNullable(
-                            post.getFrom().getId())
-                            .or(Optional.of(post.getFrom().getId()))
-                            .orNull()
-            ));
-
-            actor.setDisplayName(post.getFrom().getName());
-            actor.setAdditionalProperty("handle", post.getFrom().getName());
-        } catch (Exception e) {
-            LOGGER.error("Exception trying to build actor for Post: {}, {}", 
post, e);
-        }
-
-        return actor;
-    }
+    return actor;
+  }
 
-    /**
-     * Builds the actor extensions given the page object
-     * @param actor
-     * @param page
-     */
-    public static void buildExtensions(ActivityObject actor, Page page) {
-        Map<String, Object> extensions = new HashMap<>();
-        Location location = page.getLocation();
+  /**
+   * Builds the actor extensions given the page object.
+   * @param actor actor
+   * @param page page
+   */
+  public static void buildExtensions(ActivityObject actor, Page page) {
+    Map<String, Object> extensions = new HashMap<>();
+    Location location = page.getLocation();
 
-        if(location != null)
-            extensions.put("location", page.getLocation().toString());
+    if (location != null) {
+      extensions.put("location", page.getLocation().toString());
+    }
 
         extensions.put("favorites", page.getTalkingAboutCount());
         extensions.put("followers", page.getFanCount());

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/main/java/org/apache/streams/facebook/serializer/FacebookStreamsPostSerializer.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/main/java/org/apache/streams/facebook/serializer/FacebookStreamsPostSerializer.java
 
b/streams-contrib/streams-provider-facebook/src/main/java/org/apache/streams/facebook/serializer/FacebookStreamsPostSerializer.java
index f829b08..772af83 100644
--- 
a/streams-contrib/streams-provider-facebook/src/main/java/org/apache/streams/facebook/serializer/FacebookStreamsPostSerializer.java
+++ 
b/streams-contrib/streams-provider-facebook/src/main/java/org/apache/streams/facebook/serializer/FacebookStreamsPostSerializer.java
@@ -27,52 +27,63 @@ import org.apache.streams.pojo.json.Provider;
 
 import java.util.List;
 
+
 /**
  * Converts {@link org.apache.streams.facebook.Post} to {@link 
org.apache.streams.pojo.json.Activity}
  */
 public class FacebookStreamsPostSerializer implements ActivitySerializer<Post> 
{
 
-    private static final String FACEBOOK_STREAMS_ID = "id:provider:facebook";
-    private static final String ID_PREFIX = "id:facebook:";
-    private static final String PROVIDER_DISPLAY = "Facebook";
+  private static final String FACEBOOK_STREAMS_ID = "id:provider:facebook";
+  private static final String ID_PREFIX = "id:facebook:";
+  private static final String PROVIDER_DISPLAY = "Facebook";
 
-    @Override
-    public String serializationFormat() {
-        return null;
-    }
+  @Override
+  public String serializationFormat() {
+    return null;
+  }
 
-    @Override
-    public Post serialize(Activity deserialized) throws 
ActivitySerializerException {
-        return null;
-    }
+  @Override
+  public Post serialize(Activity deserialized) throws 
ActivitySerializerException {
+    return null;
+  }
 
-    @Override
-    public Activity deserialize(Post post) throws ActivitySerializerException {
-        Activity activity = new Activity();
-        activity.setActor(createActor(post));
+  @Override
+  public Activity deserialize(Post post) throws ActivitySerializerException {
+    Activity activity = new Activity();
+    activity.setActor(createActor(post));
 
-        activity.setId(post.getId());
-        activity.setContent(post.getMessage());
-        return null;
-    }
+    activity.setId(post.getId());
+    activity.setContent(post.getMessage());
+    return null;
+  }
 
-    @Override
-    public List<Activity> deserializeAll(List<Post> serializedList) {
-        return null;
-    }
+  @Override
+  public List<Activity> deserializeAll(List<Post> serializedList) {
+    return null;
+  }
 
-    public ActivityObject createActor(Post post) {
-        ActivityObject actor = new ActivityObject();
-        actor.setDisplayName(post.getFrom().getName());
-        actor.setId(ID_PREFIX+post.getFrom().getId());
-        return actor;
-    }
+  /**
+   * createActor.
+   * @param post post
+   * @return ActivityObject
+   */
+  public ActivityObject createActor(Post post) {
+    ActivityObject actor = new ActivityObject();
+    actor.setDisplayName(post.getFrom().getName());
+    actor.setId(ID_PREFIX + post.getFrom().getId());
+    return actor;
+  }
 
-    public Provider createProvider(Post post) {
-        Provider provider = new Provider();
-        provider.setId(FACEBOOK_STREAMS_ID);
-        provider.setDisplayName(PROVIDER_DISPLAY);
-        return provider;
-    }
+  /**
+   * Provider.
+   * @param post post
+   * @return Provider
+   */
+  public Provider createProvider(Post post) {
+    Provider provider = new Provider();
+    provider.setId(FACEBOOK_STREAMS_ID);
+    provider.setDisplayName(PROVIDER_DISPLAY);
+    return provider;
+  }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/FacebookEventClassifierTest.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/FacebookEventClassifierTest.java
 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/FacebookEventClassifierTest.java
index 076aca9..9d7604a 100644
--- 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/FacebookEventClassifierTest.java
+++ 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/FacebookEventClassifierTest.java
@@ -21,37 +21,38 @@ package org.apache.streams.facebook.test;
 import org.apache.streams.facebook.Page;
 import org.apache.streams.facebook.Post;
 import org.apache.streams.facebook.provider.FacebookEventClassifier;
+
 import org.junit.Test;
 
 import static org.junit.Assert.assertEquals;
 
 public class FacebookEventClassifierTest {
-    private String empty = "";
-    private String def = "{}";
-    private String post = 
"{\"metadata\":null,\"id\":\"687664828_10153082499914829\",\"from\":{\"metadata\":null,\"id\":\"687664828\",\"name\":\"Steve
 
Blackmon\",\"category\":null,\"createdTime\":null},\"message\":null,\"picture\":\"https://fbexternal-a.akamaihd.net/app_full_proxy.php?app=184136951108&v=1&size=z&cksum=7f4094dff37cedd69072cd2c0b3728b7&src=https%3A%2F%2Fstatic.tripit.com%2Fimages%2Fplaces%2Fsantamonica.jpg%3Fv%3D2014-08-13\",\"link\":\"http://www.tripit.com/trip/show/id/130372979/traveler_fb_uid/687664828?us=fc&um=fa&un=fd\",\"name\":\"Steve
 is about to leave on a trip to Santa Monica, CA.\",\"caption\":\"Aug 2014 for 
3 days\",\"description\":\"TripIt - Free online trip planner and free travel 
itinerary website for organizing vacations, group trips or business 
travel\",\"source\":null,\"icon\":\"https://fbcdn-photos-d-a.akamaihd.net/hphotos-ak-xpa1/t39.2080-0/851580_10151367869221109_1073679965_n.gif\",\"actions\":[{\"name\":\"Comment\",\"link\":\"https://www.facebook
 
.com/687664828/posts/10153082499914829\"},{\"name\":\"Like\",\"link\":\"https://www.facebook.com/687664828/posts/10153082499914829\"},{\"name\":\"Plan
 a trip on 
TripIt\",\"link\":\"http://www.tripit.com/?us=fc&um=fa&un=fd\"}],\"privacy\":{\"value\":\"ALL_FRIENDS\",\"friends\":\"EMPTY\",\"description\":[\"Your
 
friends\"]},\"type\":\"link\",\"sharesCount\":null,\"place\":null,\"statusType\":\"app_created_story\",\"story\":null,\"objectId\":null,\"application\":{\"id\":\"184136951108\",\"name\":\"TripIt\",\"description\":null,\"category\":null,\"company\":null,\"iconUrl\":null,\"subcategory\":null,\"link\":null,\"logoUrl\":null,\"dailyActiveUsers\":null,\"weeklyActiveUsers\":null,\"monthlyActiveUsers\":null,\"namespace\":\"tripitcom\",\"authDialogDataHelpUrl\":null,\"authDialogDescription\":null,\"authDialogHeadline\":null,\"authDialogPermsExplanation\":null,\"authReferralDefaultActivityPrivacy\":null,\"authReferralResponseType\":null,\"canvasUrl\":null,\"contactEmail\":null,\"createdT
 
ime\":null,\"creatorUid\":null,\"deauthCallbackUrl\":null,\"iphoneAppStoreId\":null,\"hostingUrl\":null,\"mobileWebUrl\":null,\"pageTabDefaultName\":null,\"pageTabUrl\":null,\"privacyPolicyUrl\":null,\"secureCanvasUrl\":null,\"securePageTabUrl\":null,\"serverIpWhitelist\":null,\"termsOfServiceUrl\":null,\"userSupportEmail\":null,\"userSupportUrl\":null,\"websiteUrl\":null,\"canvasName\":null},\"createdTime\":\"2014-08-13T12:22:20.000+0000\",\"updatedTime\":\"2014-08-13T12:22:20.000+0000\",\"scheduledPublishTime\":null,\"targeting\":null,\"published\":null}";
-    private String page = 
"{\"metadata\":null,\"id\":\"142803045874943\",\"name\":\"Senator Angus S. 
King, Jr.\",\"category\":\"Government 
official\",\"createdTime\":null,\"link\":\"https://www.facebook.com/SenatorAngusSKingJr\",\"likes\":10246,\"location\":{\"street\":\"359
 Dirksen Senate Office Building\",\"city\":\"Washington, District of 
Columbia\",\"state\":\"DC\",\"country\":\"United 
States\",\"zip\":\"20510\",\"latitude\":null,\"longitude\":null,\"text\":null},\"phone\":\"202-224-5344\",\"checkins\":0,\"picture\":null,\"cover\":{\"id\":null,\"source\":\"https://fbcdn-sphotos-g-a.akamaihd.net/hphotos-ak-xpa1/v/t1.0-9/10288792_321537751334804_8200105519500362465_n.jpg?oh=fbcde9b3e1e011dfa3e699628629bc53&oe=546FB617&__gda__=1416717487_3fa5781d7d9c3d58f2bc798a36ac6fc0\",\"offsetY\":9},\"website\":\"http://www.king.senate.gov\",\"talkingAboutCount\":5034,\"accessToken\":null,\"wereHereCount\":0,\"about\":\"Welcome
 to the official Facebook page of Senator Angus S. King, Jr. (I-ME).
 
\\nhttp://king.senate.gov\\nhttps://twitter.com/SenAngusKing\\nhttps://www.youtube.com/SenatorAngusKing\",\"username\":\"SenatorAngusSKingJr\",\"published\":true,\"communityPage\":false}";;
-
-
-    @Test(expected=IllegalArgumentException.class)
-    public void emptyJSONTest() {
-        Class inClass = FacebookEventClassifier.detectClass(empty);
-    }
-
-    @Test
-    public void defaultDetectTest() {
-        Class inClass = FacebookEventClassifier.detectClass(post);
-        assertEquals(inClass, Post.class);
-    }
-
-    @Test
-    public void postDetectTest() {
-        Class inClass = FacebookEventClassifier.detectClass(post);
-        assertEquals(inClass, Post.class);
-    }
-
-    @Test
-    public void pageDetectTest() {
-        Class inClass = FacebookEventClassifier.detectClass(page);
-        assertEquals(inClass, Page.class);
-    }
+
+  private String empty = "";
+  private String def = "{}";
+  private String post = 
"{\"metadata\":null,\"id\":\"687664828_10153082499914829\",\"from\":{\"metadata\":null,\"id\":\"687664828\",\"name\":\"Steve
 
Blackmon\",\"category\":null,\"createdTime\":null},\"message\":null,\"picture\":\"https://fbexternal-a.akamaihd.net/app_full_proxy.php?app=184136951108&v=1&size=z&cksum=7f4094dff37cedd69072cd2c0b3728b7&src=https%3A%2F%2Fstatic.tripit.com%2Fimages%2Fplaces%2Fsantamonica.jpg%3Fv%3D2014-08-13\",\"link\":\"http://www.tripit.com/trip/show/id/130372979/traveler_fb_uid/687664828?us=fc&um=fa&un=fd\",\"name\":\"Steve
 is about to leave on a trip to Santa Monica, CA.\",\"caption\":\"Aug 2014 for 
3 days\",\"description\":\"TripIt - Free online trip planner and free travel 
itinerary website for organizing vacations, group trips or business 
travel\",\"source\":null,\"icon\":\"https://fbcdn-photos-d-a.akamaihd.net/hphotos-ak-xpa1/t39.2080-0/851580_10151367869221109_1073679965_n.gif\",\"actions\":[{\"name\":\"Comment\",\"link\":\"https://www.facebook.c
 
om/687664828/posts/10153082499914829\"},{\"name\":\"Like\",\"link\":\"https://www.facebook.com/687664828/posts/10153082499914829\"},{\"name\":\"Plan
 a trip on 
TripIt\",\"link\":\"http://www.tripit.com/?us=fc&um=fa&un=fd\"}],\"privacy\":{\"value\":\"ALL_FRIENDS\",\"friends\":\"EMPTY\",\"description\":[\"Your
 
friends\"]},\"type\":\"link\",\"sharesCount\":null,\"place\":null,\"statusType\":\"app_created_story\",\"story\":null,\"objectId\":null,\"application\":{\"id\":\"184136951108\",\"name\":\"TripIt\",\"description\":null,\"category\":null,\"company\":null,\"iconUrl\":null,\"subcategory\":null,\"link\":null,\"logoUrl\":null,\"dailyActiveUsers\":null,\"weeklyActiveUsers\":null,\"monthlyActiveUsers\":null,\"namespace\":\"tripitcom\",\"authDialogDataHelpUrl\":null,\"authDialogDescription\":null,\"authDialogHeadline\":null,\"authDialogPermsExplanation\":null,\"authReferralDefaultActivityPrivacy\":null,\"authReferralResponseType\":null,\"canvasUrl\":null,\"contactEmail\":null,\"createdTim
 
e\":null,\"creatorUid\":null,\"deauthCallbackUrl\":null,\"iphoneAppStoreId\":null,\"hostingUrl\":null,\"mobileWebUrl\":null,\"pageTabDefaultName\":null,\"pageTabUrl\":null,\"privacyPolicyUrl\":null,\"secureCanvasUrl\":null,\"securePageTabUrl\":null,\"serverIpWhitelist\":null,\"termsOfServiceUrl\":null,\"userSupportEmail\":null,\"userSupportUrl\":null,\"websiteUrl\":null,\"canvasName\":null},\"createdTime\":\"2014-08-13T12:22:20.000+0000\",\"updatedTime\":\"2014-08-13T12:22:20.000+0000\",\"scheduledPublishTime\":null,\"targeting\":null,\"published\":null}";
+  private String page = 
"{\"metadata\":null,\"id\":\"142803045874943\",\"name\":\"Senator Angus S. 
King, Jr.\",\"category\":\"Government 
official\",\"createdTime\":null,\"link\":\"https://www.facebook.com/SenatorAngusSKingJr\",\"likes\":10246,\"location\":{\"street\":\"359
 Dirksen Senate Office Building\",\"city\":\"Washington, District of 
Columbia\",\"state\":\"DC\",\"country\":\"United 
States\",\"zip\":\"20510\",\"latitude\":null,\"longitude\":null,\"text\":null},\"phone\":\"202-224-5344\",\"checkins\":0,\"picture\":null,\"cover\":{\"id\":null,\"source\":\"https://fbcdn-sphotos-g-a.akamaihd.net/hphotos-ak-xpa1/v/t1.0-9/10288792_321537751334804_8200105519500362465_n.jpg?oh=fbcde9b3e1e011dfa3e699628629bc53&oe=546FB617&__gda__=1416717487_3fa5781d7d9c3d58f2bc798a36ac6fc0\",\"offsetY\":9},\"website\":\"http://www.king.senate.gov\",\"talkingAboutCount\":5034,\"accessToken\":null,\"wereHereCount\":0,\"about\":\"Welcome
 to the official Facebook page of Senator Angus S. King, Jr. (I-ME).\\
 
nhttp://king.senate.gov\\nhttps://twitter.com/SenAngusKing\\nhttps://www.youtube.com/SenatorAngusKing\",\"username\":\"SenatorAngusSKingJr\",\"published\":true,\"communityPage\":false}";;
+
+  @Test(expected=IllegalArgumentException.class)
+  public void emptyJSONTest() {
+    Class inClass = FacebookEventClassifier.detectClass(empty);
+  }
+
+  @Test
+  public void defaultDetectTest() {
+    Class inClass = FacebookEventClassifier.detectClass(post);
+    assertEquals(inClass, Post.class);
+  }
+
+  @Test
+  public void postDetectTest() {
+    Class inClass = FacebookEventClassifier.detectClass(post);
+    assertEquals(inClass, Post.class);
+  }
+
+  @Test
+  public void pageDetectTest() {
+    Class inClass = FacebookEventClassifier.detectClass(page);
+    assertEquals(inClass, Page.class);
+  }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/SimplePageTest.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/SimplePageTest.java
 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/SimplePageTest.java
index 45864ef..36d3b16 100644
--- 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/SimplePageTest.java
+++ 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/SimplePageTest.java
@@ -18,15 +18,17 @@
 
 package org.apache.streams.facebook.test;
 
-import com.fasterxml.jackson.databind.DeserializationFeature;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.node.ObjectNode;
 import org.apache.streams.core.StreamsDatum;
 import org.apache.streams.facebook.Page;
 import org.apache.streams.facebook.api.FacebookPageActivitySerializer;
 import org.apache.streams.facebook.processor.FacebookTypeConverter;
 import org.apache.streams.jackson.StreamsJacksonMapper;
 import org.apache.streams.pojo.json.Activity;
+
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.node.ObjectNode;
+
 import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
@@ -37,7 +39,9 @@ import java.io.BufferedReader;
 import java.io.InputStream;
 import java.io.InputStreamReader;
 
-import static org.hamcrest.CoreMatchers.*;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.not;
+import static org.hamcrest.CoreMatchers.nullValue;
 import static org.junit.Assert.assertThat;
 
 /**
@@ -45,33 +49,33 @@ import static org.junit.Assert.assertThat;
  */
 @Ignore("ignore until test resources are available.")
 public class SimplePageTest {
-    private final static Logger LOGGER = 
LoggerFactory.getLogger(SimplePageTest.class);
-    private ObjectMapper mapper = StreamsJacksonMapper.getInstance();
-    private ObjectNode event;
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(SimplePageTest.class);
+  private ObjectMapper mapper = StreamsJacksonMapper.getInstance();
+  private ObjectNode event;
 
     private static final String FACEBOOK_JSON= "{\"about\":\"The Facebook Page 
celebrates how our friends inspire us, support us, and help us discover the 
world when we 
connect.\",\"username\":\"facebook\",\"birthday\":\"02/04/2004\",\"category\":\"Product/Service\",\"can_checkin\":true,\"can_post\":false,\"checkins\":12,\"cover\":{\"id\":\"10154345508521729\",\"source\":\"https://scontent.xx.fbcdn.net/v/t1.0-9/s720x720/12573693_10154345508521729_8347370496501004621_n.png?oh=b75f9ec17e7e8d6c84658f5a1eb1f724&oe=58BFB505\",\"cover_id\":\"10154345508521729\",\"offset_x\":0,\"offset_y\":0},\"display_subtext\":\"12
 people checked in 
here\",\"displayed_message_response_time\":\"AUTOMATIC\",\"engagement\":{\"count\":174813083,\"social_sentence\":\"You
 and 174M others like this.\"},\"fan_count\":174813083,\"founded\":\"February 
4, 2004\",\"general_info\":\"Your ideas and suggestions help us to constantly 
improve Facebook’s features. Let us know how we can improve your experience.  
\\n \\n
 
www.facebook.com/help/feedback\\n\",\"global_brand_root_id\":\"1499730620315598\",\"id\":\"20531316728\",\"is_community_page\":false,\"is_always_open\":false,\"is_permanently_closed\":false,\"is_published\":true,\"is_unclaimed\":false,\"is_webhooks_subscribed\":false,\"leadgen_tos_accepted\":false,\"link\":\"https://www.facebook.com/facebook/\",\"mission\":\"Founded
 in 2004, Facebook’s mission is to give people the power to share and make 
the world more open and connected. People use Facebook to stay connected with 
friends and family, to discover what’s going on in the world, and to share 
and express what matters to 
them.\",\"parking\":{\"lot\":0,\"street\":0,\"valet\":0},\"name\":\"Facebook\",\"name_with_location_descriptor\":\"Facebook\",\"overall_star_rating\":0,\"rating_count\":0,\"talking_about_count\":367210,\"voip_info\":{\"has_mobile_app\":false,\"has_permission\":false,\"is_callable\":false,\"is_callable_webrtc\":false,\"is_pushable\":false,\"reason_code\":1356044,\"rea
 son_description\":\"This person isn't available right 
now.\"},\"verification_status\":\"blue_verified\",\"website\":\"http://www.facebook.com\",\"were_here_count\":0,\"app_links\":{\"android\":[{\"app_name\":\"Facebook\",\"package\":\"com.facebook.katana\",\"url\":\"fb://page/20531316728\"}],\"ios\":[{\"app_name\":\"Facebook\",\"app_store_id\":\"284882215\",\"url\":\"fb://page/?id=20531316728\"}]},\"featured_video\":{\"updated_time\":\"2016-05-17T15:57:33+0000\",\"description\":\"Explore
 Grand Central Terminal and the stories that unfold there in the first film 
shot with the new Facebook Surround 360 camera. Watch the film in standard 
monoscopic 360 here, or find it in the Oculus Video app to watch in full 3D-360 
with Gear 
VR.\",\"id\":\"10154659446236729\"},\"context\":{\"friends_who_like\":{\"summary\":{\"total_count\":0,\"social_sentence\":\"0
 of your friends like 
this.\"},\"data\":[]},\"id\":\"b3Blbl9ncmFwaF9jb250ZAXh0OjIwNTMxMzE2NzI4\"},\"global_brand_page_name\":\"Facebook\",\
 "has_added_app\":false,\"is_verified\":true}\n";
 
-    private FacebookPageActivitySerializer facebookPageActivitySerializer = 
new FacebookPageActivitySerializer();
+  private FacebookPageActivitySerializer facebookPageActivitySerializer = new 
FacebookPageActivitySerializer();
 
-    @Before
-    public void setUp() throws Exception {
-        mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, 
Boolean.TRUE);
-        mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, 
Boolean.TRUE);
-        
mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, 
Boolean.TRUE);
+  @Before
+  public void setUp() throws Exception {
+    mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, 
Boolean.TRUE);
+    mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, 
Boolean.TRUE);
+    
mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, 
Boolean.TRUE);
 
-        InputStream is = 
SimplePageTest.class.getResourceAsStream("/testpage.json");
-        InputStreamReader isr = new InputStreamReader(is);
-        BufferedReader br = new BufferedReader(isr);
+    InputStream is = 
SimplePageTest.class.getResourceAsStream("/testpage.json");
+    InputStreamReader isr = new InputStreamReader(is);
+    BufferedReader br = new BufferedReader(isr);
 
-        event = null;
-        event = (ObjectNode) mapper.readTree(FACEBOOK_JSON);
-    }
+    event = null;
+    event = (ObjectNode) mapper.readTree(FACEBOOK_JSON);
+  }
 
-    @Test
-    public void TestSerialization() {
-        assertThat(event, is(not(nullValue())));
+  @Test
+  public void TestSerialization() {
+    assertThat(event, is(not(nullValue())));
 
-        Page page = mapper.convertValue(event, Page.class);
+    Page page = mapper.convertValue(event, Page.class);
 
         assertThat(page, is(not(nullValue())));
         assertThat(page.getAbout(), is(not(nullValue())));
@@ -79,25 +83,25 @@ public class SimplePageTest {
         assertThat(page.getTalkingAboutCount(), is(not(nullValue())));
     }
 
-    @Test
-    public void TestDeserialization() throws Exception {
-        Page page = mapper.convertValue(event, Page.class);
+  @Test
+  public void TestDeserialization() throws Exception {
+    Page page = mapper.convertValue(event, Page.class);
 
-        Activity activity = null;
-        activity = facebookPageActivitySerializer.deserialize(page);
+    Activity activity = null;
+    activity = facebookPageActivitySerializer.deserialize(page);
 
-        assertThat(activity, is(not(nullValue())));
+    assertThat(activity, is(not(nullValue())));
 
-        assertThat(activity.getActor(), is(not(nullValue())));
-        assertThat(activity.getActor().getId(), is(not(nullValue())));
-        assertThat(activity.getVerb(), is(not(nullValue())));
-        assertThat(activity.getProvider(), is(not(nullValue())));
-    }
+    assertThat(activity.getActor(), is(not(nullValue())));
+    assertThat(activity.getActor().getId(), is(not(nullValue())));
+    assertThat(activity.getVerb(), is(not(nullValue())));
+    assertThat(activity.getProvider(), is(not(nullValue())));
+  }
 
-    @Test
-    public void TestConverter() throws Exception {
-        FacebookTypeConverter converter = new 
FacebookTypeConverter(String.class, Activity.class);
-        converter.prepare(null);
-        converter.process(new StreamsDatum(FACEBOOK_JSON));
-    }
+  @Test
+  public void TestConverter() throws Exception {
+    FacebookTypeConverter converter = new FacebookTypeConverter(String.class, 
Activity.class);
+    converter.prepare(null);
+    converter.process(new StreamsDatum(FACEBOOK_JSON));
+  }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/TestPage.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/TestPage.java
 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/TestPage.java
index d3a00b6..620f31f 100644
--- 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/TestPage.java
+++ 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/TestPage.java
@@ -17,129 +17,129 @@
  */
 package org.apache.streams.facebook.test;
 
+import java.net.URL;
+import java.util.Date;
+
 import facebook4j.Cover;
 import facebook4j.Page;
 import facebook4j.Place;
 
-import java.net.URL;
-import java.util.Date;
-
 public class TestPage implements Page {
-    private String id;
-    private String name;
-
-    public TestPage(String id, String name) {
-        this.id = id;
-        this.name = name;
-    }
-
-    @Override
-    public String getId() {
-        return id;
-    }
-
-    @Override
-    public String getName() {
-        return name;
-    }
-
-    @Override
-    public URL getLink() {
-        return null;
-    }
-
-    @Override
-    public String getCategory() {
-        return null;
-    }
-
-    @Override
-    public Boolean isPublished() {
-        return null;
-    }
-
-    @Override
-    public Boolean canPost() {
-        return null;
-    }
-
-    @Override
-    public Integer getLikes() {
-        return null;
-    }
-
-    @Override
-    public Place.Location getLocation() {
-        return null;
-    }
-
-    @Override
-    public String getPhone() {
-        return null;
-    }
-
-    @Override
-    public Integer getCheckins() {
-        return null;
-    }
-
-    @Override
-    public URL getPicture() {
-        return null;
-    }
-
-    @Override
-    public Cover getCover() {
-        return null;
-    }
-
-    @Override
-    public String getWebsite() {
-        return null;
-    }
-
-    @Override
-    public String getCompanyOverview() {
-        return null;
-    }
-
-    @Override
-    public Integer getTalkingAboutCount() {
-        return null;
-    }
-
-    @Override
-    public String getAccessToken() {
-        return null;
-    }
-
-    @Override
-    public Boolean isCommunityPage() {
-        return null;
-    }
-
-    @Override
-    public Integer getWereHereCount() {
-        return null;
-    }
-
-    @Override
-    public Integer getFanCount() {
-        return null;
-    }
-
-    @Override
-    public Date getCreatedTime() {
-        return null;
-    }
-
-    @Override
-    public String getAbout() {
-        return null;
-    }
-
-    @Override
-    public String getUsername() {
-        return null;
-    }
+  private String id;
+  private String name;
+
+  public TestPage(String id, String name) {
+    this.id = id;
+    this.name = name;
+  }
+
+  @Override
+  public String getId() {
+    return id;
+  }
+
+  @Override
+  public String getName() {
+    return name;
+  }
+
+  @Override
+  public URL getLink() {
+    return null;
+  }
+
+  @Override
+  public String getCategory() {
+    return null;
+  }
+
+  @Override
+  public Boolean isPublished() {
+    return null;
+  }
+
+  @Override
+  public Boolean canPost() {
+    return null;
+  }
+
+  @Override
+  public Integer getLikes() {
+    return null;
+  }
+
+  @Override
+  public Place.Location getLocation() {
+    return null;
+  }
+
+  @Override
+  public String getPhone() {
+    return null;
+  }
+
+  @Override
+  public Integer getCheckins() {
+    return null;
+  }
+
+  @Override
+  public URL getPicture() {
+    return null;
+  }
+
+  @Override
+  public Cover getCover() {
+    return null;
+  }
+
+  @Override
+  public String getWebsite() {
+    return null;
+  }
+
+  @Override
+  public String getCompanyOverview() {
+    return null;
+  }
+
+  @Override
+  public Integer getTalkingAboutCount() {
+    return null;
+  }
+
+  @Override
+  public String getAccessToken() {
+    return null;
+  }
+
+  @Override
+  public Boolean isCommunityPage() {
+    return null;
+  }
+
+  @Override
+  public Integer getWereHereCount() {
+    return null;
+  }
+
+  @Override
+  public Integer getFanCount() {
+    return null;
+  }
+
+  @Override
+  public Date getCreatedTime() {
+    return null;
+  }
+
+  @Override
+  public String getAbout() {
+    return null;
+  }
+
+  @Override
+  public String getUsername() {
+    return null;
+  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookActivityActorSerDeIT.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookActivityActorSerDeIT.java
 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookActivityActorSerDeIT.java
index fff060a..7b50535 100644
--- 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookActivityActorSerDeIT.java
+++ 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookActivityActorSerDeIT.java
@@ -18,15 +18,17 @@
 
 package org.apache.streams.facebook.test.data;
 
+import org.apache.streams.facebook.Page;
+import org.apache.streams.facebook.api.FacebookPageActivitySerializer;
+import org.apache.streams.jackson.StreamsJacksonMapper;
+import org.apache.streams.pojo.json.Activity;
+
 import com.fasterxml.jackson.databind.DeserializationFeature;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.common.base.Joiner;
+
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.input.BoundedInputStream;
-import org.apache.streams.facebook.Page;
-import org.apache.streams.facebook.api.FacebookPageActivitySerializer;
-import org.apache.streams.jackson.StreamsJacksonMapper;
-import org.apache.streams.pojo.json.Activity;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -38,29 +40,29 @@ import java.io.InputStream;
  */
 public class FacebookActivityActorSerDeIT {
 
-    private final static Logger LOGGER = 
LoggerFactory.getLogger(FacebookActivityActorSerDeIT.class);
-    private FacebookPageActivitySerializer serializer = new 
FacebookPageActivitySerializer();
-    private ObjectMapper mapper = StreamsJacksonMapper.getInstance();
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(FacebookActivityActorSerDeIT.class);
+  private FacebookPageActivitySerializer serializer = new 
FacebookPageActivitySerializer();
+  private ObjectMapper mapper = StreamsJacksonMapper.getInstance();
 
-    @Test
-    public void Tests() throws Exception
-    {
-        mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, 
Boolean.TRUE);
-        mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, 
Boolean.TRUE);
-        
mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, 
Boolean.TRUE);
+  @Test
+  public void Tests() throws Exception
+  {
+    mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, 
Boolean.TRUE);
+    mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, 
Boolean.TRUE);
+    
mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, 
Boolean.TRUE);
 
-        InputStream is = 
FacebookActivityActorSerDeIT.class.getResourceAsStream("/testpage.json");
-        Joiner joiner = Joiner.on(" ").skipNulls();
-        is = new BoundedInputStream(is, 10000);
-        String json;
+    InputStream is = 
FacebookActivityActorSerDeIT.class.getResourceAsStream("/testpage.json");
+    Joiner joiner = Joiner.on(" ").skipNulls();
+    is = new BoundedInputStream(is, 10000);
+    String json;
 
-        json = joiner.join(IOUtils.readLines(is));
-        LOGGER.debug(json);
+    json = joiner.join(IOUtils.readLines(is));
+    LOGGER.debug(json);
 
-        Page page = mapper.readValue(json, Page.class);
+    Page page = mapper.readValue(json, Page.class);
 
-        Activity activity = serializer.deserialize(page);
+    Activity activity = serializer.deserialize(page);
 
-        LOGGER.debug(mapper.writeValueAsString(activity));
-    }
+    LOGGER.debug(mapper.writeValueAsString(activity));
+  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookActivitySerDeIT.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookActivitySerDeIT.java
 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookActivitySerDeIT.java
index 3d9e3e1..8112d59 100644
--- 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookActivitySerDeIT.java
+++ 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookActivitySerDeIT.java
@@ -18,15 +18,17 @@
 
 package org.apache.streams.facebook.test.data;
 
+import org.apache.streams.facebook.Post;
 import org.apache.streams.facebook.api.FacebookPostActivitySerializer;
+import org.apache.streams.jackson.StreamsJacksonMapper;
+import org.apache.streams.pojo.json.Activity;
+
 import com.fasterxml.jackson.databind.DeserializationFeature;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.common.base.Joiner;
+
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.input.BoundedInputStream;
-import org.apache.streams.facebook.Post;
-import org.apache.streams.jackson.StreamsJacksonMapper;
-import org.apache.streams.pojo.json.Activity;
 import org.junit.Assert;
 import org.junit.Test;
 import org.slf4j.Logger;
@@ -39,35 +41,35 @@ import java.io.InputStream;
  */
 public class FacebookActivitySerDeIT {
 
-    private final static Logger LOGGER = 
LoggerFactory.getLogger(FacebookActivitySerDeIT.class);
-    private FacebookPostActivitySerializer serializer = new 
FacebookPostActivitySerializer();
-    private ObjectMapper mapper = StreamsJacksonMapper.getInstance();
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(FacebookActivitySerDeIT.class);
+  private FacebookPostActivitySerializer serializer = new 
FacebookPostActivitySerializer();
+  private ObjectMapper mapper = StreamsJacksonMapper.getInstance();
 
-    @Test
-    public void Tests()
-    {
-        mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, 
Boolean.TRUE);
-        mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, 
Boolean.TRUE);
-        
mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, 
Boolean.TRUE);
+  @Test
+  public void Tests()
+  {
+    mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, 
Boolean.TRUE);
+    mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, 
Boolean.TRUE);
+    
mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, 
Boolean.TRUE);
 
-        InputStream is = 
FacebookActivitySerDeIT.class.getResourceAsStream("/testpost.json");
-        Joiner joiner = Joiner.on(" ").skipNulls();
-        is = new BoundedInputStream(is, 10000);
-        String json;
+    InputStream is = 
FacebookActivitySerDeIT.class.getResourceAsStream("/testpost.json");
+    Joiner joiner = Joiner.on(" ").skipNulls();
+    is = new BoundedInputStream(is, 10000);
+    String json;
 
-        try {
-            json = joiner.join(IOUtils.readLines(is));
-            LOGGER.debug(json);
+    try {
+      json = joiner.join(IOUtils.readLines(is));
+      LOGGER.debug(json);
 
-            Post post = mapper.readValue(json, Post.class);
+      Post post = mapper.readValue(json, Post.class);
 
-            Activity activity = serializer.deserialize(post);
+      Activity activity = serializer.deserialize(post);
 
-            LOGGER.debug(mapper.writeValueAsString(activity));
+      LOGGER.debug(mapper.writeValueAsString(activity));
 
-        } catch( Exception e ) {
-            LOGGER.error("Exception: ", e);
-            Assert.fail();
-        }
+    } catch( Exception e ) {
+      LOGGER.error("Exception: ", e);
+      Assert.fail();
     }
+  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookPageSerDeIT.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookPageSerDeIT.java
 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookPageSerDeIT.java
index 3499a67..2a2ef6e 100644
--- 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookPageSerDeIT.java
+++ 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookPageSerDeIT.java
@@ -18,13 +18,15 @@
 
 package org.apache.streams.facebook.test.data;
 
+import org.apache.streams.facebook.Page;
+import org.apache.streams.jackson.StreamsJacksonMapper;
+
 import com.fasterxml.jackson.databind.DeserializationFeature;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.common.base.Joiner;
+
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.input.BoundedInputStream;
-import org.apache.streams.facebook.Page;
-import org.apache.streams.jackson.StreamsJacksonMapper;
 import org.junit.Assert;
 import org.junit.Test;
 import org.slf4j.Logger;
@@ -37,40 +39,40 @@ import java.io.InputStream;
  */
 public class FacebookPageSerDeIT {
 
-    private final static Logger LOGGER = 
LoggerFactory.getLogger(FacebookPageSerDeIT.class);
-    private ObjectMapper mapper = StreamsJacksonMapper.getInstance();
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(FacebookPageSerDeIT.class);
+  private ObjectMapper mapper = StreamsJacksonMapper.getInstance();
 
-    @Test
-    public void Tests()
-    {
-        mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, 
Boolean.TRUE);
-        mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, 
Boolean.TRUE);
-        
mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, 
Boolean.TRUE);
+  @Test
+  public void Tests()
+  {
+    mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, 
Boolean.TRUE);
+    mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, 
Boolean.TRUE);
+    
mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, 
Boolean.TRUE);
 
-        InputStream is = 
FacebookPageSerDeIT.class.getResourceAsStream("/testpage.json");
-        Joiner joiner = Joiner.on(" ").skipNulls();
-        is = new BoundedInputStream(is, 10000);
-        String json;
+    InputStream is = 
FacebookPageSerDeIT.class.getResourceAsStream("/testpage.json");
+    Joiner joiner = Joiner.on(" ").skipNulls();
+    is = new BoundedInputStream(is, 10000);
+    String json;
 
-        try {
-            json = joiner.join(IOUtils.readLines(is));
-            LOGGER.debug(json);
+    try {
+      json = joiner.join(IOUtils.readLines(is));
+      LOGGER.debug(json);
 
-            Page ser = mapper.readValue(json, Page.class);
+      Page ser = mapper.readValue(json, Page.class);
 
-            String de = mapper.writeValueAsString(ser);
+      String de = mapper.writeValueAsString(ser);
 
-            LOGGER.debug(de);
+      LOGGER.debug(de);
 
-            Page serde = mapper.readValue(de, Page.class);
+      Page serde = mapper.readValue(de, Page.class);
 
-            Assert.assertEquals(ser, serde);
+      Assert.assertEquals(ser, serde);
 
-            LOGGER.debug(mapper.writeValueAsString(serde));
+      LOGGER.debug(mapper.writeValueAsString(serde));
 
-        } catch( Exception e ) {
-            LOGGER.error("Exception: ", e);
-            Assert.fail();
-        }
+    } catch( Exception e ) {
+      LOGGER.error("Exception: ", e);
+      Assert.fail();
     }
+  }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookPostSerDeIT.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookPostSerDeIT.java
 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookPostSerDeIT.java
index 1c9a620..3ae6749 100644
--- 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookPostSerDeIT.java
+++ 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/data/FacebookPostSerDeIT.java
@@ -40,60 +40,60 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
 /**
- * Tests serialization of Facebook Post inputs.
+ * Tests serialization of Facebook Post inputs
  */
 public class FacebookPostSerDeIT {
 
-  private static final Logger LOGGER = 
LoggerFactory.getLogger(FacebookPostSerDeIT.class);
-  private ObjectMapper mapper = StreamsJacksonMapper.getInstance();
+    private final static Logger LOGGER = 
LoggerFactory.getLogger(FacebookPostSerDeIT.class);
+    private ObjectMapper mapper = StreamsJacksonMapper.getInstance();
 
-  @Test
-  public void Tests()
-  {
-    mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, 
Boolean.TRUE);
-    mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, 
Boolean.TRUE);
-    
mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, 
Boolean.TRUE);
+    @Test
+    public void Tests()
+    {
+        mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, 
Boolean.TRUE);
+        mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, 
Boolean.TRUE);
+        
mapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, 
Boolean.TRUE);
 
-    InputStream is = 
FacebookPostSerDeIT.class.getResourceAsStream("/testpost.json");
-    Joiner joiner = Joiner.on(" ").skipNulls();
-    is = new BoundedInputStream(is, 10000);
-    String json;
+        InputStream is = 
FacebookPostSerDeIT.class.getResourceAsStream("/testpost.json");
+        Joiner joiner = Joiner.on(" ").skipNulls();
+        is = new BoundedInputStream(is, 10000);
+        String json;
 
-    try {
-      json = joiner.join(IOUtils.readLines(is));
-      LOGGER.debug(json);
+        try {
+            json = joiner.join(IOUtils.readLines(is));
+            LOGGER.debug(json);
 
-      Post ser = mapper.readValue(json, Post.class);
+            Post ser = mapper.readValue(json, Post.class);
 
-      String de = mapper.writeValueAsString(ser);
+            String de = mapper.writeValueAsString(ser);
 
-      LOGGER.debug(de);
+            LOGGER.debug(de);
 
-      Post serde = mapper.readValue(de, Post.class);
+            Post serde = mapper.readValue(de, Post.class);
 
-      assertEquals(ser, serde);
+            assertEquals(ser, serde);
 
-      LOGGER.debug(mapper.writeValueAsString(serde));
+            LOGGER.debug(mapper.writeValueAsString(serde));
 
-      Activity activity = new Activity();
-      FacebookActivityUtil.updateActivity(ser, activity);
+            Activity activity = new Activity();
+            FacebookActivityUtil.updateActivity(ser, activity);
 
-      assertNotNull(activity);
-      assertNotNull(activity.getActor().getId());
-      assertNotNull(activity.getActor().getDisplayName());
-      assertNotNull(activity.getId());
-      assert(activity.getVerb().equals("post"));
-      assertNotNull(activity.getObject());
-      assertNotNull(activity.getUpdated());
-      assertNotNull(activity.getPublished());
-      assertEquals(activity.getProvider().getId(), "id:providers:facebook");
-      assertEquals(activity.getProvider().getDisplayName(), "Facebook");
-      assertEquals(activity.getLinks().size(), 1);
-      assertNotNull(activity.getAdditionalProperties().get("facebook"));
+            assertNotNull(activity);
+            assertNotNull(activity.getActor().getId());
+            assertNotNull(activity.getActor().getDisplayName());
+            assertNotNull(activity.getId());
+            assert(activity.getVerb().equals("post"));
+            assertNotNull(activity.getObject());
+            assertNotNull(activity.getUpdated());
+            assertNotNull(activity.getPublished());
+            assertEquals(activity.getProvider().getId(), 
"id:providers:facebook");
+            assertEquals(activity.getProvider().getDisplayName(), "Facebook");
+            assertEquals(activity.getLinks().size(), 1);
+            assertNotNull(activity.getAdditionalProperties().get("facebook"));
 
-    } catch( Exception e ) {
-      LOGGER.error("Exception: ", e);
-      Assert.fail();
+        } catch( Exception e ) {
+            LOGGER.error("Exception: ", e);
+            Assert.fail();
+        }
     }
-  }
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/TestFacebookProvider.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/TestFacebookProvider.java
 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/TestFacebookProvider.java
index 8416186..929366d 100644
--- 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/TestFacebookProvider.java
+++ 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/TestFacebookProvider.java
@@ -22,74 +22,78 @@ import org.apache.streams.facebook.FacebookConfiguration;
 import org.apache.streams.facebook.IdConfig;
 import org.apache.streams.facebook.provider.FacebookDataCollector;
 import org.apache.streams.facebook.provider.FacebookProvider;
+
 import org.junit.Test;
 
 import java.util.concurrent.BlockingQueue;
 import java.util.concurrent.BrokenBarrierException;
 import java.util.concurrent.CyclicBarrier;
 
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
 
 /**
  * Unit Tests For {@link org.apache.streams.facebook.provider.FacebookProvider}
  */
 public class TestFacebookProvider {
 
-    @Test
-    public void testFacebookProvider() throws Exception {
-        //Test that streams starts and shut downs.
-        final CyclicBarrier barrier = new CyclicBarrier(2);
-        FacebookProvider provider = new FacebookProvider(new 
FacebookConfiguration()) {
-            @Override
-            protected FacebookDataCollector getDataCollector() {
-                return new TestFacebookDataCollector(barrier, 
super.configuration, super.datums);
-            }
-        };
-        provider.prepare(null);
-        provider.startStream();
-        assertTrue(provider.isRunning());
-        barrier.await();
-        assertTrue(provider.isRunning());
-        assertEquals(5, provider.readCurrent().size());
-        barrier.await();
-        assertEquals(0, provider.readCurrent().size());
-        assertFalse(provider.isRunning());
-        provider.cleanUp();
-    }
+  @Test
+  public void testFacebookProvider() throws Exception {
+    //Test that streams starts and shut downs.
+    final CyclicBarrier barrier = new CyclicBarrier(2);
+    FacebookProvider provider = new FacebookProvider(new 
FacebookConfiguration()) {
+      @Override
+      protected FacebookDataCollector getDataCollector() {
+        return new TestFacebookDataCollector(barrier, super.configuration, 
super.datums);
+      }
+    };
+    provider.prepare(null);
+    provider.startStream();
+    assertTrue(provider.isRunning());
+    barrier.await();
+    assertTrue(provider.isRunning());
+    assertEquals(5, provider.readCurrent().size());
+    barrier.await();
+    assertEquals(0, provider.readCurrent().size());
+    assertFalse(provider.isRunning());
+    provider.cleanUp();
+  }
 
-    private class TestFacebookDataCollector extends FacebookDataCollector {
+  private class TestFacebookDataCollector extends FacebookDataCollector {
 
-        private CyclicBarrier barrier;
-        private BlockingQueue<StreamsDatum> queue;
+    private CyclicBarrier barrier;
+    private BlockingQueue<StreamsDatum> queue;
 
-        public TestFacebookDataCollector(CyclicBarrier barrier, 
FacebookConfiguration config, BlockingQueue<StreamsDatum> queue) {
-            super(config, queue);
-            this.barrier = barrier;
-            this.queue = queue;
+    public TestFacebookDataCollector(CyclicBarrier barrier, 
FacebookConfiguration config, BlockingQueue<StreamsDatum> queue) {
+      super(config, queue);
+      this.barrier = barrier;
+      this.queue = queue;
 
-        }
+    }
 
-        @Override
-        protected void getData(IdConfig id) throws Exception {
+    @Override
+    protected void getData(IdConfig id) throws Exception {
 
-        }
+    }
 
-        @Override
-        public void run() {
-            try {
-                for(int i=0; i < 5; ++i) {
-                    super.outputData(new Integer(i), ""+i);
-                }
-                this.barrier.await();
-                super.isComplete.set(true);
-                this.barrier.await();
-            } catch (InterruptedException e) {
-                Thread.currentThread().interrupt();
-            } catch (BrokenBarrierException bbe) {
-                fail();
-            }
+    @Override
+    public void run() {
+      try {
+        for(int i=0; i < 5; ++i) {
+          super.outputData(new Integer(i), ""+i);
         }
+        this.barrier.await();
+        super.isComplete.set(true);
+        this.barrier.await();
+      } catch (InterruptedException e) {
+        Thread.currentThread().interrupt();
+      } catch (BrokenBarrierException bbe) {
+        fail();
+      }
     }
+  }
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/page/FacebookPageProviderIT.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/page/FacebookPageProviderIT.java
 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/page/FacebookPageProviderIT.java
index 43dcb1f..f78f2e5 100644
--- 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/page/FacebookPageProviderIT.java
+++ 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/page/FacebookPageProviderIT.java
@@ -18,8 +18,10 @@
 
 package org.apache.streams.facebook.test.providers.page;
 
-import com.google.common.collect.Lists;
 import org.apache.streams.facebook.provider.page.FacebookPageProvider;
+
+import com.google.common.collect.Lists;
+
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -30,43 +32,43 @@ import java.io.LineNumberReader;
 
 public class FacebookPageProviderIT {
 
-    private static final Logger LOGGER = 
LoggerFactory.getLogger(FacebookPageProviderIT.class);
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(FacebookPageProviderIT.class);
 
-    @Test
-    public void testFacebookPageProvider() throws Exception {
+  @Test
+  public void testFacebookPageProvider() throws Exception {
 
-        String configfile = 
"./target/test-classes/FacebookPageProviderIT.conf";
-        String outfile = 
"./target/test-classes/FacebookPageProviderIT.stdout.txt";
+    String configfile = "./target/test-classes/FacebookPageProviderIT.conf";
+    String outfile = "./target/test-classes/FacebookPageProviderIT.stdout.txt";
 
-        String[] args = new String[2];
-        args[0] = configfile;
-        args[1] = outfile;
+    String[] args = new String[2];
+    args[0] = configfile;
+    args[1] = outfile;
 
-        Thread testThread = new Thread((Runnable) () -> {
-            try {
-                FacebookPageProvider.main(args);
-            } catch( Exception e ) {
-                LOGGER.error("Test Exception!", e);
-            }
-        });
-        testThread.start();
-        testThread.join(60000);
+    Thread testThread = new Thread((Runnable) () -> {
+      try {
+        FacebookPageProvider.main(args);
+      } catch( Exception e ) {
+        LOGGER.error("Test Exception!", e);
+      }
+    });
+    testThread.start();
+    testThread.join(60000);
 
-        FacebookPageProvider.main(Lists.newArrayList(configfile, 
outfile).toArray(new String[2]));
+    FacebookPageProvider.main(Lists.newArrayList(configfile, 
outfile).toArray(new String[2]));
 
-        File out = new File(outfile);
-        assert (out.exists());
-        assert (out.canRead());
-        assert (out.isFile());
+    File out = new File(outfile);
+    assert (out.exists());
+    assert (out.canRead());
+    assert (out.isFile());
 
-        FileReader outReader = new FileReader(out);
-        LineNumberReader outCounter = new LineNumberReader(outReader);
+    FileReader outReader = new FileReader(out);
+    LineNumberReader outCounter = new LineNumberReader(outReader);
 
-        while(outCounter.readLine() != null) {}
+    while(outCounter.readLine() != null) {}
 
-        assert (outCounter.getLineNumber() >= 1);
+    assert (outCounter.getLineNumber() >= 1);
 
-    }
+  }
 }
 
 

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/pagefeed/FacebookPageFeedProviderIT.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/pagefeed/FacebookPageFeedProviderIT.java
 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/pagefeed/FacebookPageFeedProviderIT.java
index 4ddb83b..0aa4ad3 100644
--- 
a/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/pagefeed/FacebookPageFeedProviderIT.java
+++ 
b/streams-contrib/streams-provider-facebook/src/test/java/org/apache/streams/facebook/test/providers/pagefeed/FacebookPageFeedProviderIT.java
@@ -19,6 +19,7 @@
 package org.apache.streams.facebook.test.providers.pagefeed;
 
 import org.apache.streams.facebook.provider.pagefeed.FacebookPageFeedProvider;
+
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -29,39 +30,39 @@ import java.io.LineNumberReader;
 
 public class FacebookPageFeedProviderIT {
 
-    private static final Logger LOGGER = 
LoggerFactory.getLogger(FacebookPageFeedProviderIT.class);
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(FacebookPageFeedProviderIT.class);
 
-    @Test
-    public void testFacebookPageFeedProvider() throws Exception {
+  @Test
+  public void testFacebookPageFeedProvider() throws Exception {
 
-        String configfile = 
"./target/test-classes/FacebookPageFeedProviderIT.conf";
-        String outfile = 
"./target/test-classes/FacebookPageFeedProviderIT.stdout.txt";
+    String configfile = 
"./target/test-classes/FacebookPageFeedProviderIT.conf";
+    String outfile = 
"./target/test-classes/FacebookPageFeedProviderIT.stdout.txt";
 
-        String[] args = new String[2];
-        args[0] = configfile;
-        args[1] = outfile;
+    String[] args = new String[2];
+    args[0] = configfile;
+    args[1] = outfile;
 
-        Thread testThread = new Thread((Runnable) () -> {
-            try {
-                FacebookPageFeedProvider.main(args);
-            } catch( Exception e ) {
-                LOGGER.error("Test Exception!", e);
-            }
-        });
-        testThread.start();
-        testThread.join(60000);
+    Thread testThread = new Thread((Runnable) () -> {
+      try {
+        FacebookPageFeedProvider.main(args);
+      } catch( Exception e ) {
+        LOGGER.error("Test Exception!", e);
+      }
+    });
+    testThread.start();
+    testThread.join(60000);
 
-        File out = new File(outfile);
-        assert (out.exists());
-        assert (out.canRead());
-        assert (out.isFile());
+    File out = new File(outfile);
+    assert (out.exists());
+    assert (out.canRead());
+    assert (out.isFile());
 
-        FileReader outReader = new FileReader(out);
-        LineNumberReader outCounter = new LineNumberReader(outReader);
+    FileReader outReader = new FileReader(out);
+    LineNumberReader outCounter = new LineNumberReader(outReader);
 
-        while(outCounter.readLine() != null) {}
+    while(outCounter.readLine() != null) {}
 
-        assert (outCounter.getLineNumber() >= 1000);
+    assert (outCounter.getLineNumber() >= 1000);
 
-    }
+  }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/streams-contrib/streams-provider-google/google-gmail/src/main/java/com/google/gmail/provider/GMailImapProviderTask.java
----------------------------------------------------------------------
diff --git 
a/streams-contrib/streams-provider-google/google-gmail/src/main/java/com/google/gmail/provider/GMailImapProviderTask.java
 
b/streams-contrib/streams-provider-google/google-gmail/src/main/java/com/google/gmail/provider/GMailImapProviderTask.java
index 2beeb88..a0aac9b 100644
--- 
a/streams-contrib/streams-provider-google/google-gmail/src/main/java/com/google/gmail/provider/GMailImapProviderTask.java
+++ 
b/streams-contrib/streams-provider-google/google-gmail/src/main/java/com/google/gmail/provider/GMailImapProviderTask.java
@@ -18,47 +18,46 @@
 
 package com.google.gmail.provider;
 
-import com.googlecode.gmail4j.GmailClient;
-import com.googlecode.gmail4j.GmailMessage;
 import org.apache.streams.core.StreamsDatum;
 import org.apache.streams.pojo.json.Activity;
 import org.apache.streams.util.ComponentUtils;
+
+import com.googlecode.gmail4j.GmailMessage;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.Calendar;
-import java.util.GregorianCalendar;
 import java.util.List;
 
 /**
- * Created by sblackmon on 12/10/13.
+ * GMailImapProviderTask collects Gmail via IMAP driver.
  */
 public class GMailImapProviderTask implements Runnable {
 
-    private final static Logger LOGGER = 
LoggerFactory.getLogger(GMailImapProviderTask.class);
+  private final static Logger LOGGER = 
LoggerFactory.getLogger(GMailImapProviderTask.class);
 
-    private GMailProvider provider;
+  private GMailProvider provider;
 
-    public GMailImapProviderTask(GMailProvider provider) {
-        this.provider = provider;
-    }
-
-    @Override
-    public void run() {
+  public GMailImapProviderTask(GMailProvider provider) {
+    this.provider = provider;
+  }
 
-        final List<GmailMessage> messages = 
this.provider.imapClient.getUnreadMessages();
+  @Override
+  public void run() {
 
-        for (GmailMessage message : messages) {
+    final List<GmailMessage> messages = 
this.provider.imapClient.getUnreadMessages();
 
-            Activity activity;
-            GMailMessageActivitySerializer serializer = new 
GMailMessageActivitySerializer( this.provider );
-            activity = serializer.deserialize(message);
-            StreamsDatum entry = new StreamsDatum(activity);
-            ComponentUtils.offerUntilSuccess(entry, 
this.provider.providerQueue);
+    for (GmailMessage message : messages) {
 
-        }
+      Activity activity;
+      GMailMessageActivitySerializer serializer = new 
GMailMessageActivitySerializer( this.provider );
+      activity = serializer.deserialize(message);
+      StreamsDatum entry = new StreamsDatum(activity);
+      ComponentUtils.offerUntilSuccess(entry, this.provider.providerQueue);
 
     }
 
+  }
+
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/5dffd5c3/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 e2b5501..acc745d 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
@@ -18,6 +18,14 @@
 
 package com.google.gmail.provider;
 
+import org.apache.streams.data.ActivitySerializer;
+import org.apache.streams.pojo.extensions.ExtensionUtil;
+import org.apache.streams.pojo.json.Activity;
+import org.apache.streams.pojo.json.ActivityObject;
+import org.apache.streams.pojo.json.Generator;
+import org.apache.streams.pojo.json.Icon;
+import org.apache.streams.pojo.json.Provider;
+
 import com.fasterxml.jackson.annotation.JsonBackReference;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonManagedReference;
@@ -33,85 +41,83 @@ import com.googlecode.gmail4j.javamail.JavaMailGmailMessage;
 import com.sun.mail.imap.IMAPFolder;
 import com.sun.mail.imap.IMAPMessage;
 import com.sun.mail.imap.IMAPSSLStore;
+
 import org.apache.commons.lang.NotImplementedException;
-import org.apache.streams.data.ActivitySerializer;
-import org.apache.streams.pojo.extensions.ExtensionUtil;
-import org.apache.streams.pojo.json.Activity;
-import org.apache.streams.pojo.json.ActivityObject;
-import org.apache.streams.pojo.json.Generator;
-import org.apache.streams.pojo.json.Icon;
-import org.apache.streams.pojo.json.Provider;
 import org.joda.time.DateTime;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.mail.internet.MimeMultipart;
 import java.util.List;
 import java.util.Map;
 
-public class GMailMessageActivitySerializer implements 
ActivitySerializer<GmailMessage> {
-
-    private static final Logger LOGGER = 
LoggerFactory.getLogger(GMailMessageActivitySerializer.class);
-
-    private GMailProvider provider;
-
-    public GMailMessageActivitySerializer(GMailProvider provider) {
-
-        this.provider = provider;
-
-        ObjectMapper mapper = new ObjectMapper();
-        mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, 
Boolean.FALSE);
-
-        mapper.addMixInAnnotations(IMAPSSLStore.class, MessageMixIn.class);
-        mapper.addMixInAnnotations(IMAPFolder.class, MessageMixIn.class);
-        mapper.addMixInAnnotations(IMAPMessage.class, MessageMixIn.class);
-        mapper.addMixInAnnotations(MimeMultipart.class, MessageMixIn.class);
-        mapper.addMixInAnnotations(JavaMailGmailMessage.class, 
MessageMixIn.class);
-
-    }
+import javax.mail.internet.MimeMultipart;
 
-    public GMailMessageActivitySerializer() {
-    }
+/**
+ * GMailMessageActivitySerializer converts a GMail message to Activity.
+ */
+public class GMailMessageActivitySerializer implements 
ActivitySerializer<GmailMessage> {
 
-    @Override
-    public String serializationFormat() {
-        return "gmail.v1";
+  private static final Logger LOGGER = 
LoggerFactory.getLogger(GMailMessageActivitySerializer.class);
+
+  private GMailProvider provider;
+
+  public GMailMessageActivitySerializer(GMailProvider provider) {
+
+    this.provider = provider;
+
+    ObjectMapper mapper = new ObjectMapper();
+    mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, Boolean.FALSE);
+
+    mapper.addMixInAnnotations(IMAPSSLStore.class, MessageMixIn.class);
+    mapper.addMixInAnnotations(IMAPFolder.class, MessageMixIn.class);
+    mapper.addMixInAnnotations(IMAPMessage.class, MessageMixIn.class);
+    mapper.addMixInAnnotations(MimeMultipart.class, MessageMixIn.class);
+    mapper.addMixInAnnotations(JavaMailGmailMessage.class, MessageMixIn.class);
+
+  }
+
+  public GMailMessageActivitySerializer() {
+  }
+
+  @Override
+  public String serializationFormat() {
+    return "gmail.v1";
+  }
+
+  @Override
+  public GmailMessage serialize(Activity activity) {
+    return null;
+  }
+
+  @Override
+  public Activity deserialize(GmailMessage gmailMessage) {
+
+    Activity activity = new Activity();
+    activity.setId(formatId(this.provider.getConfig().getUserName(), 
String.valueOf(gmailMessage.getMessageNumber())));
+    activity.setPublished(new DateTime(gmailMessage.getSendDate()));
+    Provider provider = new Provider();
+    provider.setId("http://gmail.com";);
+    provider.setDisplayName("GMail");
+    activity.setProvider(provider);
+    ActivityObject actor = new ActivityObject();
+    actor.setId(gmailMessage.getFrom().getEmail());
+    actor.setDisplayName(gmailMessage.getFrom().getName());
+    activity.setActor(actor);
+    activity.setVerb("email");
+    ActivityObject object = new ActivityObject();
+    try {
+      object.setId(gmailMessage.getTo().get(0).getEmail());
+      object.setDisplayName(gmailMessage.getTo().get(0).getName());
+    } catch( GmailException e ) {
+      LOGGER.warn(e.getMessage());
     }
-
-    @Override
-    public GmailMessage serialize(Activity activity) {
-        return null;
+    activity.setTitle(gmailMessage.getSubject());
+    try {
+      activity.setContent(gmailMessage.getContentText());
+    } catch( GmailException e ) {
+      LOGGER.warn(e.getMessage());
     }
-
-    @Override
-    public Activity deserialize(GmailMessage gmailMessage) {
-
-        Activity activity = new Activity();
-        activity.setId(formatId(this.provider.getConfig().getUserName(), 
String.valueOf(gmailMessage.getMessageNumber())));
-        activity.setPublished(new DateTime(gmailMessage.getSendDate()));
-        Provider provider = new Provider();
-        provider.setId("http://gmail.com";);
-        provider.setDisplayName("GMail");
-        activity.setProvider(provider);
-        ActivityObject actor = new ActivityObject();
-        actor.setId(gmailMessage.getFrom().getEmail());
-        actor.setDisplayName(gmailMessage.getFrom().getName());
-        activity.setActor(actor);
-        activity.setVerb("email");
-        ActivityObject object = new ActivityObject();
-        try {
-            object.setId(gmailMessage.getTo().get(0).getEmail());
-            object.setDisplayName(gmailMessage.getTo().get(0).getName());
-        } catch( GmailException e ) {
-            LOGGER.warn(e.getMessage());
-        }
-        activity.setTitle(gmailMessage.getSubject());
-        try {
-            activity.setContent(gmailMessage.getContentText());
-        } catch( GmailException e ) {
-            LOGGER.warn(e.getMessage());
-        }
-        activity.setObject(object);
+    activity.setObject(object);
 
 //        try {
 //            // if jackson can't serialize the object, find out now
@@ -126,72 +132,72 @@ public class GMailMessageActivitySerializer implements 
ActivitySerializer<GmailM
 //            e.printStackTrace();
 //        }
 
-        return activity;
-    }
-
-    @Override
-    public List<Activity> deserializeAll(List<GmailMessage> serializedList) {
-        throw new NotImplementedException("Not currently implemented");
-    }
-
-    public Activity convert(ObjectNode event) {
-        return null;
-    }
-
-    public static Generator buildGenerator(ObjectNode event) {
-        return null;
-    }
-
-    public static Icon getIcon(ObjectNode event) {
-        return null;
-    }
-
-    public static Provider buildProvider(ObjectNode event) {
-        Provider provider = new Provider();
-        provider.setId("id:providers:gmail");
-        return provider;
-    }
-
-    public static List<Object> getLinks(ObjectNode event) {
-        return null;
-    }
-
-    public static String getUrls(ObjectNode event) {
-        return null;
-    }
-
-    public static void addGMailExtension(Activity activity, GmailMessage 
gmailMessage) {
-        Map<String, Object> extensions = 
ExtensionUtil.getInstance().ensureExtensions(activity);
-        extensions.put("gmail", gmailMessage);
-    }
-
-    public static String formatId(String... idparts) {
-        return Joiner.on(":").join(Lists.asList("id:gmail", idparts));
-    }
-
-    interface MessageMixIn {
-        @JsonManagedReference
-        @JsonIgnore
-        IMAPSSLStore getDefaultFolder(); // we don't need it!
-        @JsonManagedReference
-        @JsonIgnore
-        IMAPSSLStore getPersonalNamespaces(); // we don't need it!
-        @JsonManagedReference
-        @JsonIgnore
-        IMAPFolder getStore(); // we don't need it!
-        //        @JsonManagedReference
+    return activity;
+  }
+
+  @Override
+  public List<Activity> deserializeAll(List<GmailMessage> serializedList) {
+    throw new NotImplementedException("Not currently implemented");
+  }
+
+  public Activity convert(ObjectNode event) {
+    return null;
+  }
+
+  public static Generator buildGenerator(ObjectNode event) {
+    return null;
+  }
+
+  public static Icon getIcon(ObjectNode event) {
+    return null;
+  }
+
+  public static Provider buildProvider(ObjectNode event) {
+    Provider provider = new Provider();
+    provider.setId("id:providers:gmail");
+    return provider;
+  }
+
+  public static List<Object> getLinks(ObjectNode event) {
+    return null;
+  }
+
+  public static String getUrls(ObjectNode event) {
+    return null;
+  }
+
+  public static void addGMailExtension(Activity activity, GmailMessage 
gmailMessage) {
+    Map<String, Object> extensions = 
ExtensionUtil.getInstance().ensureExtensions(activity);
+    extensions.put("gmail", gmailMessage);
+  }
+
+  public static String formatId(String... idparts) {
+    return Joiner.on(":").join(Lists.asList("id:gmail", idparts));
+  }
+
+  interface MessageMixIn {
+    @JsonManagedReference
+    @JsonIgnore
+    IMAPSSLStore getDefaultFolder(); // we don't need it!
+    @JsonManagedReference
+    @JsonIgnore
+    IMAPSSLStore getPersonalNamespaces(); // we don't need it!
+    @JsonManagedReference
+    @JsonIgnore
+    IMAPFolder getStore(); // we don't need it!
+    //        @JsonManagedReference
 //        @JsonIgnore
 //        @JsonBackReference
-        //IMAPFolder getParent(); // we don't need it!
-        @JsonManagedReference
-        @JsonIgnore
-        @JsonBackReference
-        IMAPMessage getFolder(); // we don't need it!
-        @JsonManagedReference
-        @JsonIgnore
-        @JsonProperty("parent")
-        @JsonBackReference
-        MimeMultipart getParent();
-    }
+    //IMAPFolder getParent(); // we don't need it!
+    @JsonManagedReference
+    @JsonIgnore
+    @JsonBackReference
+    IMAPMessage getFolder(); // we don't need it!
+    @JsonManagedReference
+    @JsonIgnore
+    @JsonProperty("parent")
+    @JsonBackReference
+    MimeMultipart getParent();
+  }
 
 }

Reply via email to