removed all usage of ActivityUtil.ensureExtensions
Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/e046c76c Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/e046c76c Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/e046c76c Branch: refs/heads/master Commit: e046c76cb156554d92c1943efda92d1599188113 Parents: 4950472 Author: sblackmon <sblack...@apache.org> Authored: Fri Nov 21 16:57:46 2014 -0600 Committer: sblackmon <sblack...@apache.org> Committed: Fri Nov 21 16:57:46 2014 -0600 ---------------------------------------------------------------------- .../http/processor/SimpleHTTPGetProcessor.java | 2 +- .../streams-persist-elasticsearch/pom.xml | 5 + .../processor/PercolateTagProcessor.java | 3 +- .../peoplepattern/AccountTypeProcessor.java | 2 +- .../peoplepattern/DemographicsProcessor.java | 2 +- streams-contrib/streams-processor-regex/pom.xml | 6 +- .../regex/AbstractRegexExtensionExtractor.java | 5 +- .../regex/RegexHashtagExtractorTest.java | 4 +- .../regex/RegexMentionExtractorTest.java | 4 +- .../DatasiftInstagramActivitySerializer.java | 3 +- .../DatasiftInteractionActivitySerializer.java | 5 +- .../DatasiftTwitterActivitySerializer.java | 5 +- .../serializer/FacebookActivityUtil.java | 3 +- .../gnip-edc-googleplus/pom.xml | 6 + .../com/gplus/api/GPlusActivitySerializer.java | 4 +- .../gnip-edc-reddit/pom.xml | 6 + .../reddit/api/RedditActivitySerializer.java | 4 +- .../google-gmail/pom.xml | 4 + .../GMailMessageActivitySerializer.java | 15 +- .../google-gplus/pom.xml | 4 + .../serializer/util/GooglePlusActivityUtil.java | 3 +- .../streams-provider-instagram/pom.xml | 4 + .../serializer/util/InstagramActivityUtil.java | 5 +- .../streams-provider-moreover/pom.xml | 4 + .../apache/streams/data/util/MoreoverUtils.java | 5 +- streams-contrib/streams-provider-rss/pom.xml | 4 + .../serializer/SyndEntryActivitySerializer.java | 2 - .../streams-provider-sysomos/pom.xml | 4 + .../SysomosBeatActivityConverter.java | 3 +- .../streams-provider-twitter/README.markdown | 48 ------ .../streams-provider-twitter/README.md | 38 +++++ .../apache/streams/data/util/ExtensionUtil.java | 154 ------------------- .../streams/pojo/extensions/ExtensionUtil.java | 154 +++++++++++++++++++ .../apache/streams/data/util/ActivityUtil.java | 3 + 34 files changed, 278 insertions(+), 245 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-components/streams-http/src/main/java/org/apache/streams/components/http/processor/SimpleHTTPGetProcessor.java ---------------------------------------------------------------------- diff --git a/streams-components/streams-http/src/main/java/org/apache/streams/components/http/processor/SimpleHTTPGetProcessor.java b/streams-components/streams-http/src/main/java/org/apache/streams/components/http/processor/SimpleHTTPGetProcessor.java index b8c957c..b8e3150 100644 --- a/streams-components/streams-http/src/main/java/org/apache/streams/components/http/processor/SimpleHTTPGetProcessor.java +++ b/streams-components/streams-http/src/main/java/org/apache/streams/components/http/processor/SimpleHTTPGetProcessor.java @@ -37,7 +37,7 @@ import org.apache.streams.components.http.HttpProcessorConfiguration; import org.apache.streams.config.StreamsConfigurator; import org.apache.streams.core.StreamsDatum; import org.apache.streams.core.StreamsProcessor; -import org.apache.streams.data.util.ExtensionUtil; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.jackson.StreamsJacksonMapper; import org.apache.streams.pojo.json.ActivityObject; import org.slf4j.Logger; http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 b75c38d..4ddd5fc 100644 --- a/streams-contrib/streams-persist-elasticsearch/pom.xml +++ b/streams-contrib/streams-persist-elasticsearch/pom.xml @@ -57,6 +57,11 @@ </dependency> <dependency> <groupId>org.apache.streams</groupId> + <artifactId>streams-pojo-extensions</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.apache.streams</groupId> <artifactId>streams-util</artifactId> <version>${project.version}</version> </dependency> http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-persist-elasticsearch/src/main/java/org/apache/streams/elasticsearch/processor/PercolateTagProcessor.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-persist-elasticsearch/src/main/java/org/apache/streams/elasticsearch/processor/PercolateTagProcessor.java b/streams-contrib/streams-persist-elasticsearch/src/main/java/org/apache/streams/elasticsearch/processor/PercolateTagProcessor.java index ca9be8d..32ff131 100644 --- a/streams-contrib/streams-persist-elasticsearch/src/main/java/org/apache/streams/elasticsearch/processor/PercolateTagProcessor.java +++ b/streams-contrib/streams-persist-elasticsearch/src/main/java/org/apache/streams/elasticsearch/processor/PercolateTagProcessor.java @@ -28,6 +28,7 @@ import com.google.common.collect.Lists; import org.apache.streams.core.StreamsDatum; import org.apache.streams.core.StreamsProcessor; import org.apache.streams.data.util.ActivityUtil; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.elasticsearch.ElasticsearchClientManager; import org.apache.streams.elasticsearch.ElasticsearchConfiguration; import org.apache.streams.elasticsearch.ElasticsearchWriterConfiguration; @@ -181,7 +182,7 @@ public class PercolateTagProcessor implements StreamsProcessor { } protected void appendMatches(ArrayNode tagArray, Activity activity) { - Map<String, Object> extensions = ActivityUtil.ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); extensions.put(TAGS_EXTENSION, tagArray); http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-processor-peoplepattern/src/main/java/org/apache/streams/peoplepattern/AccountTypeProcessor.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-processor-peoplepattern/src/main/java/org/apache/streams/peoplepattern/AccountTypeProcessor.java b/streams-contrib/streams-processor-peoplepattern/src/main/java/org/apache/streams/peoplepattern/AccountTypeProcessor.java index 4e4a6af..d30922e 100644 --- a/streams-contrib/streams-processor-peoplepattern/src/main/java/org/apache/streams/peoplepattern/AccountTypeProcessor.java +++ b/streams-contrib/streams-processor-peoplepattern/src/main/java/org/apache/streams/peoplepattern/AccountTypeProcessor.java @@ -24,7 +24,7 @@ import org.apache.streams.components.http.HttpProcessorConfiguration; import org.apache.streams.components.http.processor.SimpleHTTPGetProcessor; import org.apache.streams.config.StreamsConfigurator; import org.apache.streams.core.StreamsDatum; -import org.apache.streams.data.util.ExtensionUtil; +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.Actor; http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-processor-peoplepattern/src/main/java/org/apache/streams/peoplepattern/DemographicsProcessor.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-processor-peoplepattern/src/main/java/org/apache/streams/peoplepattern/DemographicsProcessor.java b/streams-contrib/streams-processor-peoplepattern/src/main/java/org/apache/streams/peoplepattern/DemographicsProcessor.java index 60db379..68016b8 100644 --- a/streams-contrib/streams-processor-peoplepattern/src/main/java/org/apache/streams/peoplepattern/DemographicsProcessor.java +++ b/streams-contrib/streams-processor-peoplepattern/src/main/java/org/apache/streams/peoplepattern/DemographicsProcessor.java @@ -24,7 +24,7 @@ import org.apache.streams.components.http.HttpProcessorConfiguration; import org.apache.streams.components.http.processor.SimpleHTTPGetProcessor; import org.apache.streams.config.StreamsConfigurator; import org.apache.streams.core.StreamsDatum; -import org.apache.streams.data.util.ExtensionUtil; +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.Actor; http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-processor-regex/pom.xml ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-processor-regex/pom.xml b/streams-contrib/streams-processor-regex/pom.xml index 57f661a..92e93ba 100644 --- a/streams-contrib/streams-processor-regex/pom.xml +++ b/streams-contrib/streams-processor-regex/pom.xml @@ -33,11 +33,15 @@ <dependencies> <dependency> <groupId>org.apache.streams</groupId> + <artifactId>streams-core</artifactId> + </dependency> + <dependency> + <groupId>org.apache.streams</groupId> <artifactId>streams-pojo</artifactId> </dependency> <dependency> <groupId>org.apache.streams</groupId> - <artifactId>streams-core</artifactId> + <artifactId>streams-pojo-extensions</artifactId> </dependency> </dependencies> </project> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-processor-regex/src/main/java/org/apache/streams/regex/AbstractRegexExtensionExtractor.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-processor-regex/src/main/java/org/apache/streams/regex/AbstractRegexExtensionExtractor.java b/streams-contrib/streams-processor-regex/src/main/java/org/apache/streams/regex/AbstractRegexExtensionExtractor.java index 88b2880..8b955ab 100644 --- a/streams-contrib/streams-processor-regex/src/main/java/org/apache/streams/regex/AbstractRegexExtensionExtractor.java +++ b/streams-contrib/streams-processor-regex/src/main/java/org/apache/streams/regex/AbstractRegexExtensionExtractor.java @@ -27,6 +27,7 @@ import com.google.common.collect.Sets; import org.apache.streams.core.StreamsDatum; import org.apache.streams.core.StreamsProcessor; import org.apache.streams.jackson.StreamsJacksonMapper; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.pojo.json.Activity; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -36,8 +37,6 @@ import java.util.List; import java.util.Map; import java.util.Set; -import static org.apache.streams.data.util.ActivityUtil.ensureExtensions; - /** * Provides a base implementation for extracting entities from text using regular expressions and then * modifying the appropriate {@link org.apache.streams.pojo.json.Activity} extensions object. @@ -112,7 +111,7 @@ public abstract class AbstractRegexExtensionExtractor<T> implements StreamsProce @SuppressWarnings("unchecked") protected Collection<T> ensureTargetObject(Activity activity) { - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); Set<T> hashtags; if(extensions.containsKey(extensionKey) && extensions.get(extensionKey) != null) { hashtags = Sets.newHashSet((Iterable<T>) extensions.get(extensionKey)); http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-processor-regex/src/test/java/org/apache/streams/regex/RegexHashtagExtractorTest.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-processor-regex/src/test/java/org/apache/streams/regex/RegexHashtagExtractorTest.java b/streams-contrib/streams-processor-regex/src/test/java/org/apache/streams/regex/RegexHashtagExtractorTest.java index 55e007e..e4f2257 100644 --- a/streams-contrib/streams-processor-regex/src/test/java/org/apache/streams/regex/RegexHashtagExtractorTest.java +++ b/streams-contrib/streams-processor-regex/src/test/java/org/apache/streams/regex/RegexHashtagExtractorTest.java @@ -22,6 +22,7 @@ package org.apache.streams.regex; import com.google.common.collect.Sets; import org.apache.streams.core.StreamsDatum; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.pojo.json.Activity; import org.junit.Test; import org.junit.runner.RunWith; @@ -32,7 +33,6 @@ import java.util.Collection; import java.util.List; import java.util.Set; -import static org.apache.streams.data.util.ActivityUtil.ensureExtensions; import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; @@ -67,7 +67,7 @@ public class RegexHashtagExtractorTest { List<StreamsDatum> result = new RegexHashtagExtractor().process(datum); assertThat(result.size(), is(equalTo(1))); Activity output = (Activity)result.get(0).getDocument(); - Set<String> extracted = (Set) ensureExtensions(output).get(RegexHashtagExtractor.EXTENSION_KEY); + Set<String> extracted = (Set) ExtensionUtil.ensureExtensions(output).get(RegexHashtagExtractor.EXTENSION_KEY); Sets.SetView<String> diff = Sets.difference(extracted, hashtags); assertThat(diff.size(), is(equalTo(0))); } http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-processor-regex/src/test/java/org/apache/streams/regex/RegexMentionExtractorTest.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-processor-regex/src/test/java/org/apache/streams/regex/RegexMentionExtractorTest.java b/streams-contrib/streams-processor-regex/src/test/java/org/apache/streams/regex/RegexMentionExtractorTest.java index 0379c09..8aa6561 100644 --- a/streams-contrib/streams-processor-regex/src/test/java/org/apache/streams/regex/RegexMentionExtractorTest.java +++ b/streams-contrib/streams-processor-regex/src/test/java/org/apache/streams/regex/RegexMentionExtractorTest.java @@ -22,6 +22,7 @@ package org.apache.streams.regex; import com.google.common.collect.Sets; import org.apache.streams.core.StreamsDatum; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.pojo.json.Activity; import org.junit.Test; import org.junit.runner.RunWith; @@ -29,7 +30,6 @@ import org.junit.runners.Parameterized; import java.util.*; -import static org.apache.streams.data.util.ActivityUtil.ensureExtensions; import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; @@ -76,7 +76,7 @@ public class RegexMentionExtractorTest { List<StreamsDatum> result = new RegexMentionsExtractor().process(datum); assertThat(result.size(), is(equalTo(1))); Activity output = (Activity)result.get(0).getDocument(); - Set<String> extracted = (Set) ensureExtensions(output).get(RegexMentionsExtractor.EXTENSION_KEY); + Set<String> extracted = (Set) ExtensionUtil.ensureExtensions(output).get(RegexMentionsExtractor.EXTENSION_KEY); Sets.SetView<String> diff = Sets.difference(extracted, mentions); assertThat(diff.size(), is(equalTo(0))); } http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftInstagramActivitySerializer.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftInstagramActivitySerializer.java b/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftInstagramActivitySerializer.java index d121d65..03d6735 100644 --- a/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftInstagramActivitySerializer.java +++ b/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftInstagramActivitySerializer.java @@ -25,6 +25,7 @@ import org.apache.streams.datasift.Datasift; import org.apache.streams.datasift.instagram.From; import org.apache.streams.datasift.instagram.Instagram; import org.apache.streams.instagram.serializer.util.InstagramActivityUtil; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.pojo.json.Activity; import org.apache.streams.pojo.json.Actor; import org.apache.streams.pojo.json.Image; @@ -97,7 +98,7 @@ public class DatasiftInstagramActivitySerializer extends DatasiftInteractionActi } public void addInstagramExtensions(Activity activity, Instagram instagram) { - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); List<String> hashTags; if(instagram.getMedia() != null) { hashTags = instagram.getMedia().getTags(); http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftInteractionActivitySerializer.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftInteractionActivitySerializer.java b/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftInteractionActivitySerializer.java index c856dc2..573f5a7 100644 --- a/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftInteractionActivitySerializer.java +++ b/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftInteractionActivitySerializer.java @@ -9,6 +9,7 @@ import org.apache.streams.datasift.Datasift; import org.apache.streams.datasift.interaction.Interaction; import org.apache.streams.datasift.links.Links; import org.apache.streams.datasift.util.StreamsDatasiftMapper; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.pojo.json.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -102,7 +103,7 @@ public class DatasiftInteractionActivitySerializer implements ActivitySerializer } public static void addDatasiftExtension(Activity activity, Datasift datasift) { - Map<String, Object> extensions = org.apache.streams.data.util.ActivityUtil.ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); extensions.put("datasift", datasift); } @@ -205,7 +206,7 @@ public class DatasiftInteractionActivitySerializer implements ActivitySerializer } public static void addLocationExtension(Activity activity, Interaction interaction) { - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); Map<String, Object> location = new HashMap<String, Object>(); Map<String, Double> coordinates = new HashMap<String, Double>(); coordinates.put("latitude", interaction.getGeo().getLatitude()); http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftTwitterActivitySerializer.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftTwitterActivitySerializer.java b/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftTwitterActivitySerializer.java index 8ac84f6..05e1b35 100644 --- a/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftTwitterActivitySerializer.java +++ b/streams-contrib/streams-provider-datasift/src/main/java/org/apache/streams/datasift/serializer/DatasiftTwitterActivitySerializer.java @@ -29,6 +29,7 @@ import org.apache.streams.datasift.interaction.Interaction; import org.apache.streams.datasift.twitter.DatasiftTwitterUser; import org.apache.streams.datasift.twitter.Retweet; import org.apache.streams.datasift.twitter.Twitter; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.pojo.json.Activity; import org.apache.streams.pojo.json.Actor; import org.apache.streams.pojo.json.Image; @@ -180,7 +181,7 @@ public class DatasiftTwitterActivitySerializer extends DatasiftInteractionActivi } public void addLocationExtension(Activity activity, Twitter twitter) { - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); Map<String, Object> location = Maps.newHashMap(); double[] coordiantes = new double[] { twitter.getGeo().getLongitude(), twitter.getGeo().getLatitude() }; Map<String, Object> coords = Maps.newHashMap(); @@ -192,7 +193,7 @@ public class DatasiftTwitterActivitySerializer extends DatasiftInteractionActivi public void addTwitterExtensions(Activity activity, Twitter twitter, Interaction interaction) { Retweet retweet = twitter.getRetweet(); - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); List<String> hashTags = Lists.newLinkedList(); List<Object> hts = Lists.newLinkedList(); if(twitter.getHashtags() != null) { http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 49f2880..68ef3e7 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 @@ -28,6 +28,7 @@ import org.apache.streams.facebook.*; import org.apache.streams.facebook.Place; import org.apache.streams.facebook.Post; import org.apache.streams.jackson.StreamsJacksonMapper; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.pojo.json.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -206,7 +207,7 @@ public class FacebookActivityUtil { */ public static void buildExtensions(Activity activity, Post post) { ObjectMapper mapper = StreamsJacksonMapper.getInstance(); - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); if(post.getLikes() != null) { Map<String, Object> likes = Maps.newHashMap(); http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 03f74c1..28eaf24 100644 --- a/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/pom.xml +++ b/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/pom.xml @@ -48,6 +48,12 @@ <dependency> <groupId>org.apache.streams</groupId> + <artifactId>streams-pojo-extensions</artifactId> + <version>${project.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.streams</groupId> <artifactId>gnip-powertrack</artifactId> <version>${project.version}</version> </dependency> http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/src/main/java/com/gplus/api/GPlusActivitySerializer.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/src/main/java/com/gplus/api/GPlusActivitySerializer.java b/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/src/main/java/com/gplus/api/GPlusActivitySerializer.java index 0cea46a..b1f0ae0 100644 --- a/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/src/main/java/com/gplus/api/GPlusActivitySerializer.java +++ b/streams-contrib/streams-provider-gnip/gnip-edc-googleplus/src/main/java/com/gplus/api/GPlusActivitySerializer.java @@ -21,7 +21,7 @@ package com.gplus.api; import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.lang.NotImplementedException; import org.apache.streams.data.ActivitySerializer; -import org.apache.streams.data.util.ActivityUtil; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.gnip.powertrack.GnipActivityFixer; import org.apache.streams.pojo.json.Activity; import org.json.JSONObject; @@ -74,7 +74,7 @@ public class GPlusActivitySerializer implements ActivitySerializer<String> { Activity activity = new Activity(); try { activity = jsonMapper.readValue(fixedObject.toString(), Activity.class); - Map<String, Object> extension = ActivityUtil.ensureExtensions(activity); + Map<String, Object> extension = ExtensionUtil.ensureExtensions(activity); extension.put("likes", fixedObject.getJSONObject("object").getJSONObject("plusoners").get("totalItems")); extension.put("rebroadcast", fixedObject.getJSONObject("object").getJSONObject("resharers").get("totalItems")); } catch( Exception e ) { http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 dea0089..1b520ac 100644 --- a/streams-contrib/streams-provider-gnip/gnip-edc-reddit/pom.xml +++ b/streams-contrib/streams-provider-gnip/gnip-edc-reddit/pom.xml @@ -49,6 +49,12 @@ <dependency> <groupId>org.apache.streams</groupId> + <artifactId>streams-pojo-extensions</artifactId> + <version>${project.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.streams</groupId> <artifactId>gnip-powertrack</artifactId> <version>${project.version}</version> </dependency> http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-gnip/gnip-edc-reddit/src/main/java/com/reddit/api/RedditActivitySerializer.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-gnip/gnip-edc-reddit/src/main/java/com/reddit/api/RedditActivitySerializer.java b/streams-contrib/streams-provider-gnip/gnip-edc-reddit/src/main/java/com/reddit/api/RedditActivitySerializer.java index c57bea0..73b326e 100644 --- a/streams-contrib/streams-provider-gnip/gnip-edc-reddit/src/main/java/com/reddit/api/RedditActivitySerializer.java +++ b/streams-contrib/streams-provider-gnip/gnip-edc-reddit/src/main/java/com/reddit/api/RedditActivitySerializer.java @@ -21,7 +21,7 @@ package com.reddit.api; import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.lang.NotImplementedException; import org.apache.streams.data.ActivitySerializer; -import org.apache.streams.data.util.ActivityUtil; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.gnip.powertrack.GnipActivityFixer; import org.apache.streams.pojo.json.Activity; import org.json.JSONObject; @@ -82,7 +82,7 @@ public class RedditActivitySerializer implements ActivitySerializer<String> { Activity activity = new Activity(); try { activity = jsonMapper.readValue(fixedObject.toString(), Activity.class); - Map<String, Object> extension = ActivityUtil.ensureExtensions(activity); + Map<String, Object> extension = ExtensionUtil.ensureExtensions(activity); if (fixedObject.names().toString().contains("object")){ if (fixedObject.getJSONObject("object").names().toString().contains("statistics")){ if (fixedObject.getJSONObject("object").getJSONObject("statistics").names().toString().contains("upVotes")){ http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 5e8ed23..27cdee1 100644 --- a/streams-contrib/streams-provider-google/google-gmail/pom.xml +++ b/streams-contrib/streams-provider-google/google-gmail/pom.xml @@ -53,6 +53,10 @@ </dependency> <dependency> <groupId>org.apache.streams</groupId> + <artifactId>streams-pojo-extensions</artifactId> + </dependency> + <dependency> + <groupId>org.apache.streams</groupId> <artifactId>streams-config</artifactId> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 a53eaa5..0222ef2 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 @@ -22,16 +22,11 @@ import com.fasterxml.jackson.annotation.JsonBackReference; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonManagedReference; import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.core.JsonProcessingException; -import com.fasterxml.jackson.databind.AnnotationIntrospector; -import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; import com.fasterxml.jackson.databind.node.ObjectNode; -import com.fasterxml.jackson.module.jaxb.JaxbAnnotationIntrospector; import com.google.common.base.Joiner; import com.google.common.collect.Lists; -import com.google.common.collect.Maps; import com.googlecode.gmail4j.GmailException; import com.googlecode.gmail4j.GmailMessage; import com.googlecode.gmail4j.javamail.JavaMailGmailMessage; @@ -40,22 +35,16 @@ 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.*; import org.joda.time.DateTime; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.mail.internet.MimeMultipart; -import java.io.IOException; -import java.text.DateFormat; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.List; import java.util.Map; -import static org.apache.streams.data.util.ActivityUtil.ensureExtensions; - /** * Created with IntelliJ IDEA. * User: mdelaet @@ -176,7 +165,7 @@ public class GMailMessageActivitySerializer implements ActivitySerializer<GmailM } public static void addGMailExtension(Activity activity, GmailMessage gmailMessage) { - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); extensions.put("gmail", gmailMessage); } http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 a734791..1d322df 100644 --- a/streams-contrib/streams-provider-google/google-gplus/pom.xml +++ b/streams-contrib/streams-provider-google/google-gplus/pom.xml @@ -50,6 +50,10 @@ </dependency> <dependency> <groupId>org.apache.streams</groupId> + <artifactId>streams-pojo-extensions</artifactId> + </dependency> + <dependency> + <groupId>org.apache.streams</groupId> <artifactId>streams-config</artifactId> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/serializer/util/GooglePlusActivityUtil.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/serializer/util/GooglePlusActivityUtil.java b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/serializer/util/GooglePlusActivityUtil.java index 4e330fa..ecdf67b 100644 --- a/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/serializer/util/GooglePlusActivityUtil.java +++ b/streams-contrib/streams-provider-google/google-gplus/src/main/java/com/google/gplus/serializer/util/GooglePlusActivityUtil.java @@ -22,6 +22,7 @@ package com.google.gplus.serializer.util; import com.google.api.client.util.Maps; import com.google.api.services.plus.model.Comment; import com.google.api.services.plus.model.Person; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.pojo.json.*; import org.apache.streams.pojo.json.Activity; import org.joda.time.DateTime; @@ -145,7 +146,7 @@ public class GooglePlusActivityUtil { * @param gPlusActivity */ private static void addGPlusExtensions(Activity activity, com.google.api.services.plus.model.Activity gPlusActivity) { - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); com.google.api.services.plus.model.Activity.PlusObject object = gPlusActivity.getObject(); extensions.put("googlePlus", gPlusActivity); http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-instagram/pom.xml ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-instagram/pom.xml b/streams-contrib/streams-provider-instagram/pom.xml index 46fc0ff..db2415f 100644 --- a/streams-contrib/streams-provider-instagram/pom.xml +++ b/streams-contrib/streams-provider-instagram/pom.xml @@ -46,6 +46,10 @@ </dependency> <dependency> <groupId>org.apache.streams</groupId> + <artifactId>streams-pojo-extensions</artifactId> + </dependency> + <dependency> + <groupId>org.apache.streams</groupId> <artifactId>streams-config</artifactId> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-instagram/src/main/java/org/apache/streams/instagram/serializer/util/InstagramActivityUtil.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-instagram/src/main/java/org/apache/streams/instagram/serializer/util/InstagramActivityUtil.java b/streams-contrib/streams-provider-instagram/src/main/java/org/apache/streams/instagram/serializer/util/InstagramActivityUtil.java index a7894ae..99f9fcd 100644 --- a/streams-contrib/streams-provider-instagram/src/main/java/org/apache/streams/instagram/serializer/util/InstagramActivityUtil.java +++ b/streams-contrib/streams-provider-instagram/src/main/java/org/apache/streams/instagram/serializer/util/InstagramActivityUtil.java @@ -23,6 +23,7 @@ import com.google.common.base.Joiner; import com.google.common.base.Optional; import com.google.common.collect.Lists; import org.apache.streams.exceptions.ActivitySerializerException; +import org.apache.streams.pojo.extensions.ExtensionUtil; import org.apache.streams.pojo.json.*; import org.jinstagram.entity.comments.CommentData; import org.jinstagram.entity.common.*; @@ -275,7 +276,7 @@ public class InstagramActivityUtil { * @param item the object to use as the source */ public static void addLocationExtension(Activity activity, MediaFeedData item) { - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); if(item.getLocation() != null) { Map<String, Object> coordinates = new HashMap<String, Object>(); @@ -313,7 +314,7 @@ public class InstagramActivityUtil { * @param item */ public static void addInstagramExtensions(Activity activity, MediaFeedData item) { - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); addLocationExtension(activity, item); http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 7a2d694..0b210b9 100644 --- a/streams-contrib/streams-provider-moreover/pom.xml +++ b/streams-contrib/streams-provider-moreover/pom.xml @@ -56,6 +56,10 @@ <groupId>org.apache.streams</groupId> <artifactId>streams-pojo</artifactId> </dependency> + <dependency> + <groupId>org.apache.streams</groupId> + <artifactId>streams-pojo-extensions</artifactId> + </dependency> </dependencies> <build> http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 52f57ff..9b2cc3f 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 @@ -19,6 +19,7 @@ package org.apache.streams.data.util; import com.moreover.api.*; +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.Actor; @@ -118,7 +119,7 @@ public class MoreoverUtils { } public static void addLocationExtension(Activity activity, Source value) { - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); String country = value.getLocation().getCountryCode() == null ? value.getLocation().getCountry() : value.getLocation().getCountryCode(); if (country != null) { Map<String, Object> location = new HashMap<String, Object>(); @@ -128,7 +129,7 @@ public class MoreoverUtils { } public static void addLanguageExtension(Activity activity, Article value) { - Map<String, Object> extensions = ensureExtensions(activity); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(activity); String language = value.getLanguage(); if (language != null) { extensions.put(LANGUAGE_EXTENSION, language); http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 bd1e04b..f4dbdcf 100644 --- a/streams-contrib/streams-provider-rss/pom.xml +++ b/streams-contrib/streams-provider-rss/pom.xml @@ -42,6 +42,10 @@ </dependency> <dependency> <groupId>org.apache.streams</groupId> + <artifactId>streams-pojo-extensions</artifactId> + </dependency> + <dependency> + <groupId>org.apache.streams</groupId> <artifactId>streams-config</artifactId> </dependency> <dependency> http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-rss/src/main/java/org/apache/streams/rss/serializer/SyndEntryActivitySerializer.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-rss/src/main/java/org/apache/streams/rss/serializer/SyndEntryActivitySerializer.java b/streams-contrib/streams-provider-rss/src/main/java/org/apache/streams/rss/serializer/SyndEntryActivitySerializer.java index 06839f3..566b009 100644 --- a/streams-contrib/streams-provider-rss/src/main/java/org/apache/streams/rss/serializer/SyndEntryActivitySerializer.java +++ b/streams-contrib/streams-provider-rss/src/main/java/org/apache/streams/rss/serializer/SyndEntryActivitySerializer.java @@ -36,8 +36,6 @@ import org.slf4j.LoggerFactory; import java.util.List; import java.util.Map; -import static org.apache.streams.data.util.ActivityUtil.ensureExtensions; - public class SyndEntryActivitySerializer implements ActivitySerializer<ObjectNode> { private static final Logger LOGGER = LoggerFactory.getLogger(SyndEntryActivitySerializer.class); http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/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 7d4c4a2..662b401 100644 --- a/streams-contrib/streams-provider-sysomos/pom.xml +++ b/streams-contrib/streams-provider-sysomos/pom.xml @@ -36,6 +36,10 @@ <artifactId>streams-pojo</artifactId> </dependency> <dependency> + <groupId>org.apache.streams</groupId> + <artifactId>streams-pojo-extensions</artifactId> + </dependency> + <dependency> <groupId>com.fasterxml</groupId> <artifactId>aalto-xml</artifactId> </dependency> http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-sysomos/src/main/java/org/apache/streams/sysomos/conversion/SysomosBeatActivityConverter.java ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-sysomos/src/main/java/org/apache/streams/sysomos/conversion/SysomosBeatActivityConverter.java b/streams-contrib/streams-provider-sysomos/src/main/java/org/apache/streams/sysomos/conversion/SysomosBeatActivityConverter.java index 90df7fc..1733057 100644 --- a/streams-contrib/streams-provider-sysomos/src/main/java/org/apache/streams/sysomos/conversion/SysomosBeatActivityConverter.java +++ b/streams-contrib/streams-provider-sysomos/src/main/java/org/apache/streams/sysomos/conversion/SysomosBeatActivityConverter.java @@ -22,6 +22,7 @@ package org.apache.streams.sysomos.conversion; import com.google.common.collect.Maps; import com.sysomos.xml.BeatApi; import org.apache.commons.lang.StringUtils; +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.Actor; @@ -49,7 +50,7 @@ public class SysomosBeatActivityConverter { converted.setUrl(beat.getLink()); converted.setActor(new Actor()); Map<String, BeatApi.BeatResponse.Beat.Tag> mappedTags = mapTags(beat); - Map<String, Object> extensions = ensureExtensions(converted); + Map<String, Object> extensions = ExtensionUtil.ensureExtensions(converted); extensions.put("keywords", beat.getContent()); setLocation(beat, extensions); setObject(beat, converted); http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-twitter/README.markdown ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-twitter/README.markdown b/streams-contrib/streams-provider-twitter/README.markdown deleted file mode 100644 index 184912e..0000000 --- a/streams-contrib/streams-provider-twitter/README.markdown +++ /dev/null @@ -1,48 +0,0 @@ -streams-provider-twitter - -Purpose - - Module connects to the twitter streaming API, collects events, and passes each message downstream. - -Options - - Sample - supported, tested - Firehose - supported, not tested - Site - not currently supported - -Capabilities - - Validation - - Optionally, module will validate each message - - Simplification - - Optionally, module can output messages as basic text - - Normalization - - Optionally, module can output messages as other json objects such as Activity - - Deletion - - By default, module will submit delete the object from each directly connected persist step (not implemented) - -Run-modes - - Standalone - - Runs in a java process. - Writes to standard out. - - Placeholder for how - Configure via property file - Configure via command line - - Storm - - Runs as a spout. - - Placeholder for how - Configure via property file - Configure via command line \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-contrib/streams-provider-twitter/README.md ---------------------------------------------------------------------- diff --git a/streams-contrib/streams-provider-twitter/README.md b/streams-contrib/streams-provider-twitter/README.md new file mode 100644 index 0000000..0e44ea3 --- /dev/null +++ b/streams-contrib/streams-provider-twitter/README.md @@ -0,0 +1,38 @@ +streams-provider-twitter +===================== + +Connects to the twitter streaming API, collects events, and passes each message downstream. + +Example userstream configuration: + + "twitter": { + â â host = "api.twitter.com" + â â endpoint = "userstream" + â â oauth { + consumerKey = "" + consumerSecret = "" + accessToken = "" + accessTokenSecret = "" + } + } + +Example gardenhose configuration: + + "twitter": { + â â host = "api.twitter.com" + â â endpoint = "sample" + â â oauth { + consumerKey = "" + consumerSecret = "" + accessToken = "" + accessTokenSecret = "" + } + track [ + apache + ] + follow [ + TheASF + ] + + } + http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-pojo-extensions/src/main/java/org/apache/streams/data/util/ExtensionUtil.java ---------------------------------------------------------------------- diff --git a/streams-pojo-extensions/src/main/java/org/apache/streams/data/util/ExtensionUtil.java b/streams-pojo-extensions/src/main/java/org/apache/streams/data/util/ExtensionUtil.java deleted file mode 100644 index 66d8017..0000000 --- a/streams-pojo-extensions/src/main/java/org/apache/streams/data/util/ExtensionUtil.java +++ /dev/null @@ -1,154 +0,0 @@ -/* - * 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.data.util; - -import com.fasterxml.jackson.databind.ObjectMapper; -import com.google.common.collect.Maps; -import org.apache.streams.jackson.StreamsJacksonMapper; -import org.apache.streams.pojo.json.Activity; -import org.apache.streams.pojo.json.ActivityObject; - -import java.util.Map; - -/** - * Class makes it easier to manage extensions added to activities, actors, objects, etc... - */ -public class ExtensionUtil { - - /** - * Property on the activity object to use for extensions - */ - public static final String EXTENSION_PROPERTY = "extensions"; - /** - * The number of +1, Like, favorites, etc that the post has received - */ - public static final String LIKES_EXTENSION = "likes"; - /** - * The number of retweets, shares, etc that the post has received - */ - public static final String REBROADCAST_EXTENSION = "rebroadcasts"; - /** - * The language of the post - */ - public static final String LANGUAGE_EXTENSION = "language"; - /** - * Location that the post was made or the actor's residence - */ - public static final String LOCATION_EXTENSION = "location"; - /** - * Country that the post was made - */ - public static final String LOCATION_EXTENSION_COUNTRY = "country"; - /** - * Specific JSON-geo coordinates (long,lat) - */ - public static final String LOCATION_EXTENSION_COORDINATES = "coordinates"; - - private static final ObjectMapper mapper = StreamsJacksonMapper.getInstance(); - - public static Map<String, Object> getExtensions(Activity activity) { - Map<String,Object> extensions = ensureExtensions(activity); - return extensions; - } - - public static Object getExtension(Activity activity, String key) { - Map<String,Object> extensions = ensureExtensions(activity); - return extensions.get(key); - } - - public static void setExtensions(Activity activity, Map<String, Object> extensions) { - activity.setAdditionalProperty(EXTENSION_PROPERTY, extensions); - }; - - public static void addExtension(Activity activity, String key, Object extension) { - Map<String,Object> extensions = ensureExtensions(activity); - extensions.put(key, extension); - }; - - public static void addExtensions(Activity activity, Map<String, Object> extensions) { - for( Map.Entry<String, Object> item : extensions.entrySet()) - addExtension(activity, item.getKey(), item.getValue()); - }; - - public static void removeExtension(Activity activity, String key) { - Map<String,Object> extensions = ensureExtensions(activity); - extensions.remove(key); - }; - - public static Map<String, Object> getExtensions(ActivityObject object) { - ActivityObject activityObject = mapper.convertValue(object, ActivityObject.class); - Map<String,Object> extensions = ensureExtensions(object); - return extensions; - } - - public static Object getExtension(ActivityObject object, String key) { - Map<String,Object> extensions = ensureExtensions(object); - return extensions.get(key); - } - - public static void setExtensions(ActivityObject object, Map<String, Object> extensions) { - object.setAdditionalProperty(EXTENSION_PROPERTY, extensions); - }; - - public static void addExtension(ActivityObject object, String key, Object extension) { - Map<String,Object> extensions = ensureExtensions(object); - extensions.put(key, extension); - }; - - public static void addExtensions(ActivityObject object, Map<String, Object> extensions) { - for( Map.Entry<String, Object> item : extensions.entrySet()) - addExtension(object, item.getKey(), item.getValue()); - }; - - public static void removeExtension(ActivityObject object, String key) { - Map<String,Object> extensions = ensureExtensions(object); - extensions.remove(key); - }; - - /** - * Creates a standard extension property - * @param activity activity to create the property in - * @return the Map representing the extensions property - */ - @SuppressWarnings("unchecked") - public static Map<String, Object> ensureExtensions(Activity activity) { - Map<String,Object> extensions = (Map<String,Object>) activity.getAdditionalProperties().get(EXTENSION_PROPERTY); - if(extensions == null) { - extensions = Maps.newHashMap(); - setExtensions(activity, extensions); - } - return extensions; - } - - /** - * Creates a standard extension property - * @param object objectnode to create the property in - * @return the Map representing the extensions property - */ - @SuppressWarnings("unchecked") - public static Map<String, Object> ensureExtensions(ActivityObject object) { - Map<String,Object> extensions = (Map<String,Object>) object.getAdditionalProperties().get(EXTENSION_PROPERTY); - if(extensions == null) { - extensions = Maps.newHashMap(); - setExtensions(object, extensions); - } - return extensions; - } - -} http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-pojo-extensions/src/main/java/org/apache/streams/pojo/extensions/ExtensionUtil.java ---------------------------------------------------------------------- diff --git a/streams-pojo-extensions/src/main/java/org/apache/streams/pojo/extensions/ExtensionUtil.java b/streams-pojo-extensions/src/main/java/org/apache/streams/pojo/extensions/ExtensionUtil.java new file mode 100644 index 0000000..5fc9431 --- /dev/null +++ b/streams-pojo-extensions/src/main/java/org/apache/streams/pojo/extensions/ExtensionUtil.java @@ -0,0 +1,154 @@ +/* + * 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.pojo.extensions; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.google.common.collect.Maps; +import org.apache.streams.jackson.StreamsJacksonMapper; +import org.apache.streams.pojo.json.Activity; +import org.apache.streams.pojo.json.ActivityObject; + +import java.util.Map; + +/** + * Class makes it easier to manage extensions added to activities, actors, objects, etc... + */ +public class ExtensionUtil { + + /** + * Property on the activity object to use for extensions + */ + public static final String EXTENSION_PROPERTY = "extensions"; + /** + * The number of +1, Like, favorites, etc that the post has received + */ + public static final String LIKES_EXTENSION = "likes"; + /** + * The number of retweets, shares, etc that the post has received + */ + public static final String REBROADCAST_EXTENSION = "rebroadcasts"; + /** + * The language of the post + */ + public static final String LANGUAGE_EXTENSION = "language"; + /** + * Location that the post was made or the actor's residence + */ + public static final String LOCATION_EXTENSION = "location"; + /** + * Country that the post was made + */ + public static final String LOCATION_EXTENSION_COUNTRY = "country"; + /** + * Specific JSON-geo coordinates (long,lat) + */ + public static final String LOCATION_EXTENSION_COORDINATES = "coordinates"; + + private static final ObjectMapper mapper = StreamsJacksonMapper.getInstance(); + + public static Map<String, Object> getExtensions(Activity activity) { + Map<String,Object> extensions = ensureExtensions(activity); + return extensions; + } + + public static Object getExtension(Activity activity, String key) { + Map<String,Object> extensions = ensureExtensions(activity); + return extensions.get(key); + } + + public static void setExtensions(Activity activity, Map<String, Object> extensions) { + activity.setAdditionalProperty(EXTENSION_PROPERTY, extensions); + }; + + public static void addExtension(Activity activity, String key, Object extension) { + Map<String,Object> extensions = ensureExtensions(activity); + extensions.put(key, extension); + }; + + public static void addExtensions(Activity activity, Map<String, Object> extensions) { + for( Map.Entry<String, Object> item : extensions.entrySet()) + addExtension(activity, item.getKey(), item.getValue()); + }; + + public static void removeExtension(Activity activity, String key) { + Map<String,Object> extensions = ensureExtensions(activity); + extensions.remove(key); + }; + + public static Map<String, Object> getExtensions(ActivityObject object) { + ActivityObject activityObject = mapper.convertValue(object, ActivityObject.class); + Map<String,Object> extensions = ensureExtensions(object); + return extensions; + } + + public static Object getExtension(ActivityObject object, String key) { + Map<String,Object> extensions = ensureExtensions(object); + return extensions.get(key); + } + + public static void setExtensions(ActivityObject object, Map<String, Object> extensions) { + object.setAdditionalProperty(EXTENSION_PROPERTY, extensions); + }; + + public static void addExtension(ActivityObject object, String key, Object extension) { + Map<String,Object> extensions = ensureExtensions(object); + extensions.put(key, extension); + }; + + public static void addExtensions(ActivityObject object, Map<String, Object> extensions) { + for( Map.Entry<String, Object> item : extensions.entrySet()) + addExtension(object, item.getKey(), item.getValue()); + }; + + public static void removeExtension(ActivityObject object, String key) { + Map<String,Object> extensions = ensureExtensions(object); + extensions.remove(key); + }; + + /** + * Creates a standard extension property + * @param activity activity to create the property in + * @return the Map representing the extensions property + */ + @SuppressWarnings("unchecked") + public static Map<String, Object> ensureExtensions(Activity activity) { + Map<String,Object> extensions = (Map<String,Object>) activity.getAdditionalProperties().get(EXTENSION_PROPERTY); + if(extensions == null) { + extensions = Maps.newHashMap(); + setExtensions(activity, extensions); + } + return extensions; + } + + /** + * Creates a standard extension property + * @param object objectnode to create the property in + * @return the Map representing the extensions property + */ + @SuppressWarnings("unchecked") + public static Map<String, Object> ensureExtensions(ActivityObject object) { + Map<String,Object> extensions = (Map<String,Object>) object.getAdditionalProperties().get(EXTENSION_PROPERTY); + if(extensions == null) { + extensions = Maps.newHashMap(); + setExtensions(object, extensions); + } + return extensions; + } + +} http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/e046c76c/streams-pojo/src/main/java/org/apache/streams/data/util/ActivityUtil.java ---------------------------------------------------------------------- diff --git a/streams-pojo/src/main/java/org/apache/streams/data/util/ActivityUtil.java b/streams-pojo/src/main/java/org/apache/streams/data/util/ActivityUtil.java index 04ee923..9d1e7b2 100644 --- a/streams-pojo/src/main/java/org/apache/streams/data/util/ActivityUtil.java +++ b/streams-pojo/src/main/java/org/apache/streams/data/util/ActivityUtil.java @@ -28,7 +28,10 @@ import java.util.Map; /** * Utility class for managing activities + * + * Deprecated: Use {@link org.apache.streams.pojo.extensions.ExtensionUtil} */ +@Deprecated public class ActivityUtil { private ActivityUtil() {}