Merged apache master
Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/d3a17609 Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/d3a17609 Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/d3a17609 Branch: refs/heads/asf-master Commit: d3a17609ceb846f501b93004f644d116470c8294 Parents: 47f3356 dbaf79b Author: Ryan Ebanks <ryaneba...@gmail.com> Authored: Mon Feb 23 14:26:00 2015 -0600 Committer: Ryan Ebanks <ryaneba...@gmail.com> Committed: Mon Feb 23 14:26:00 2015 -0600 ---------------------------------------------------------------------- pom.xml | 6 + .../BaseObjectNodeActivityConverter.java | 2 +- .../converter/BaseStringActivityConverter.java | 2 +- .../BaseActivityConverterProcessorTest.java | 2 +- .../CustomActivityConverterProcessorTest.java | 2 +- .../NoConfigActivityConverterProcessorTest.java | 2 +- streams-components/streams-http/README.md | 7 + streams-components/streams-http/pom.xml | 17 ++ .../components/http/HttpConfigurator.java | 13 + .../persist/SimpleHTTPPostPersistWriter.java | 187 +++++++++++++ .../http/processor/SimpleHTTPGetProcessor.java | 39 +-- .../http/HttpPersistWriterConfiguration.json | 15 ++ .../java/SimpleHTTPPostPersistWriterTest.java | 119 +++++++++ .../main/jsonschema/StreamsConfiguration.json | 8 + .../org/apache/streams/s3/S3PersistWriter.java | 2 +- .../apache/streams/json/JsonPathExtractor.java | 2 +- .../org/apache/streams/json/JsonPathFilter.java | 2 +- .../datasift/provider/DatasiftPushProvider.java | 227 ++++++++++++---- .../DatasiftInteractionActivitySerializer.java | 8 +- .../apache/streams/datasift/DatasiftPush.json | 35 --- .../streams/datasift/DatasiftWebhookData.json | 30 +++ .../api/FacebookPageActivitySerializer.java | 2 +- .../api/FacebookPostActivitySerializer.java | 2 +- .../processor/FacebookTypeConverter.java | 2 +- .../provider/FacebookFriendFeedProvider.java | 4 +- .../provider/FacebookFriendUpdatesProvider.java | 4 +- .../FacebookUserInformationProvider.java | 4 +- .../provider/FacebookUserstreamProvider.java | 4 +- .../serializer/FacebookActivityUtil.java | 12 +- .../GMailMessageActivitySerializer.java | 7 +- .../processor/GooglePlusTypeConverter.java | 2 +- .../util/GPlusCommentDeserializer.java | 2 +- .../serializer/util/GPlusEventClassifier.java | 2 +- .../util/GPlusPersonDeserializer.java | 2 +- .../serializer/util/GooglePlusActivityUtil.java | 5 +- .../gplus/GooglePlusCommentSerDeTest.java | 2 +- .../google/gplus/GooglePlusPersonSerDeTest.java | 2 +- .../processor/GooglePlusActivitySerDeTest.java | 2 +- .../processor/GooglePlusTypeConverterTest.java | 2 +- .../serializer/InstagramUserInfoSerializer.java | 2 +- .../serializer/util/InstagramActivityUtil.java | 32 ++- .../serializer/SyndEntryActivitySerializer.java | 8 +- .../test/SyndEntryActivitySerizlizerTest.java | 2 +- .../sysomos/provider/SysomosProvider.java | 8 + .../processor/TwitterEventProcessor.java | 2 +- .../TwitterUserInformationProvider.java | 2 +- .../TwitterJsonUserActivitySerializer.java | 2 +- .../serializer/util/TwitterActivityUtil.java | 16 +- .../youtube/processor/YoutubeTypeConverter.java | 2 +- .../youtube/serializer/YoutubeActivityUtil.java | 7 +- .../serializer/YoutubeEventClassifier.java | 2 +- .../processor/YoutubeTypeConverterTest.java | 2 +- .../serializer/YoutubeVideoSerDeTest.java | 2 +- streams-core/pom.xml | 5 + .../impl/LogstashUdpMessagePersister.java | 104 ++++++++ .../tasks/BroadcastMonitorThread.java | 30 ++- .../jackson/MemoryUsageDeserializerTest.java | 4 +- .../impl/LogstashUdpMessagePersisterTest.java | 75 ++++++ streams-pojo/pom.xml | 120 +++++++++ .../streams/jackson/StreamsJacksonMapper.java | 8 +- .../streams/pojo/json/objectTypes/alert.json | 19 ++ .../pojo/json/objectTypes/application.json | 19 ++ .../streams/pojo/json/objectTypes/badge.json | 19 ++ .../streams/pojo/json/objectTypes/binary.json | 19 ++ .../streams/pojo/json/objectTypes/device.json | 19 ++ .../streams/pojo/json/objectTypes/event.json | 26 ++ .../streams/pojo/json/objectTypes/file.json | 6 + .../streams/pojo/json/objectTypes/game.json | 19 ++ .../streams/pojo/json/objectTypes/image.json | 22 ++ .../streams/pojo/json/objectTypes/issue.json | 25 ++ .../streams/pojo/json/objectTypes/job.json | 19 ++ .../streams/pojo/json/objectTypes/offer.json | 19 ++ .../pojo/json/objectTypes/organization.json | 19 ++ .../streams/pojo/json/objectTypes/page.json | 19 ++ .../pojo/json/objectTypes/permission.json | 36 +++ .../streams/pojo/json/objectTypes/place.json | 27 +- .../streams/pojo/json/objectTypes/process.json | 19 ++ .../streams/pojo/json/objectTypes/product.json | 6 + .../streams/pojo/json/objectTypes/question.json | 28 ++ .../streams/pojo/json/objectTypes/review.json | 3 + .../streams/pojo/json/objectTypes/role.json | 25 ++ .../streams/pojo/json/objectTypes/task.json | 44 ++++ .../streams/pojo/json/objectTypes/team.json | 19 ++ .../apache/streams/pojo/json/verbs/accept.json | 24 ++ .../apache/streams/pojo/json/verbs/access.json | 24 ++ .../streams/pojo/json/verbs/acknowledge.json | 24 ++ .../org/apache/streams/pojo/json/verbs/add.json | 24 ++ .../apache/streams/pojo/json/verbs/agree.json | 24 ++ .../apache/streams/pojo/json/verbs/append.json | 24 ++ .../apache/streams/pojo/json/verbs/approve.json | 24 ++ .../apache/streams/pojo/json/verbs/archive.json | 24 ++ .../apache/streams/pojo/json/verbs/assign.json | 24 ++ .../org/apache/streams/pojo/json/verbs/at.json | 24 ++ .../apache/streams/pojo/json/verbs/attach.json | 24 ++ .../apache/streams/pojo/json/verbs/attend.json | 24 ++ .../apache/streams/pojo/json/verbs/author.json | 25 ++ .../streams/pojo/json/verbs/authorize.json | 24 ++ .../apache/streams/pojo/json/verbs/borrow.json | 24 ++ .../apache/streams/pojo/json/verbs/build.json | 24 ++ .../apache/streams/pojo/json/verbs/cancel.json | 24 ++ .../apache/streams/pojo/json/verbs/checkin.json | 24 ++ .../apache/streams/pojo/json/verbs/close.json | 24 ++ .../streams/pojo/json/verbs/complete.json | 24 ++ .../apache/streams/pojo/json/verbs/confirm.json | 24 ++ .../apache/streams/pojo/json/verbs/consume.json | 24 ++ .../apache/streams/pojo/json/verbs/create.json | 24 ++ .../apache/streams/pojo/json/verbs/delete.json | 24 ++ .../apache/streams/pojo/json/verbs/deliver.json | 24 ++ .../apache/streams/pojo/json/verbs/deny.json | 24 ++ .../streams/pojo/json/verbs/disagree.json | 24 ++ .../apache/streams/pojo/json/verbs/dislike.json | 24 ++ .../streams/pojo/json/verbs/experience.json | 24 ++ .../streams/pojo/json/verbs/favorite.json | 2 +- .../apache/streams/pojo/json/verbs/find.json | 24 ++ .../pojo/json/verbs/flag-as-inappropriate.json | 24 ++ .../apache/streams/pojo/json/verbs/follow.json | 2 +- .../apache/streams/pojo/json/verbs/give.json | 24 ++ .../apache/streams/pojo/json/verbs/host.json | 24 ++ .../apache/streams/pojo/json/verbs/ignore.json | 24 ++ .../apache/streams/pojo/json/verbs/insert.json | 24 ++ .../apache/streams/pojo/json/verbs/install.json | 24 ++ .../streams/pojo/json/verbs/interact.json | 24 ++ .../apache/streams/pojo/json/verbs/invite.json | 24 ++ .../apache/streams/pojo/json/verbs/join.json | 2 +- .../apache/streams/pojo/json/verbs/leave.json | 24 ++ .../apache/streams/pojo/json/verbs/like.json | 2 +- .../apache/streams/pojo/json/verbs/listen.json | 24 ++ .../apache/streams/pojo/json/verbs/lose.json | 24 ++ .../streams/pojo/json/verbs/make-friend.json | 2 +- .../apache/streams/pojo/json/verbs/open.json | 24 ++ .../apache/streams/pojo/json/verbs/play.json | 2 +- .../apache/streams/pojo/json/verbs/present.json | 24 ++ .../streams/pojo/json/verbs/purchase.json | 24 ++ .../apache/streams/pojo/json/verbs/qualify.json | 24 ++ .../apache/streams/pojo/json/verbs/read.json | 24 ++ .../apache/streams/pojo/json/verbs/receive.json | 24 ++ .../apache/streams/pojo/json/verbs/reject.json | 24 ++ .../streams/pojo/json/verbs/remove-friend.json | 24 ++ .../apache/streams/pojo/json/verbs/remove.json | 24 ++ .../apache/streams/pojo/json/verbs/replace.json | 24 ++ .../streams/pojo/json/verbs/request-friend.json | 24 ++ .../apache/streams/pojo/json/verbs/request.json | 24 ++ .../apache/streams/pojo/json/verbs/resolve.json | 24 ++ .../apache/streams/pojo/json/verbs/retract.json | 24 ++ .../apache/streams/pojo/json/verbs/return.json | 24 ++ .../streams/pojo/json/verbs/rsvp-maybe.json | 2 +- .../apache/streams/pojo/json/verbs/satisfy.json | 24 ++ .../apache/streams/pojo/json/verbs/save.json | 2 +- .../streams/pojo/json/verbs/schedule.json | 24 ++ .../apache/streams/pojo/json/verbs/search.json | 24 ++ .../apache/streams/pojo/json/verbs/sell.json | 24 ++ .../apache/streams/pojo/json/verbs/send.json | 24 ++ .../apache/streams/pojo/json/verbs/sponsor.json | 24 ++ .../apache/streams/pojo/json/verbs/start.json | 24 ++ .../streams/pojo/json/verbs/stop-following.json | 24 ++ .../apache/streams/pojo/json/verbs/submit.json | 24 ++ .../org/apache/streams/pojo/json/verbs/tag.json | 4 +- .../streams/pojo/json/verbs/terminate.json | 24 ++ .../org/apache/streams/pojo/json/verbs/tie.json | 24 ++ .../streams/pojo/json/verbs/unfavorite.json | 24 ++ .../apache/streams/pojo/json/verbs/unlike.json | 24 ++ .../streams/pojo/json/verbs/unsatisfy.json | 24 ++ .../apache/streams/pojo/json/verbs/unsave.json | 24 ++ .../apache/streams/pojo/json/verbs/unshare.json | 24 ++ .../apache/streams/pojo/json/verbs/update.json | 2 +- .../org/apache/streams/pojo/json/verbs/use.json | 24 ++ .../apache/streams/pojo/json/verbs/watch.json | 24 ++ .../org/apache/streams/pojo/json/verbs/win.json | 24 ++ .../data/data/util/ActivitySerDeTest.java | 98 +++++++ .../src/test/resources/activities/accept.json | 16 ++ .../src/test/resources/activities/access.json | 17 ++ .../test/resources/activities/acknowledge.json | 16 ++ .../src/test/resources/activities/add.json | 21 ++ .../src/test/resources/activities/agree.json | 15 ++ .../src/test/resources/activities/append.json | 16 ++ .../src/test/resources/activities/approve.json | 20 ++ .../src/test/resources/activities/archive.json | 15 ++ .../src/test/resources/activities/assign.json | 20 ++ .../src/test/resources/activities/at.json | 15 ++ .../src/test/resources/activities/attach.json | 20 ++ .../src/test/resources/activities/attend.json | 15 ++ .../src/test/resources/activities/author.json | 15 ++ .../test/resources/activities/authorize.json | 23 ++ .../src/test/resources/activities/borrow.json | 21 ++ .../src/test/resources/activities/build.json | 16 ++ .../src/test/resources/activities/cancel.json | 16 ++ .../src/test/resources/activities/checkin.json | 16 ++ .../src/test/resources/activities/close.json | 16 ++ .../src/test/resources/activities/complete.json | 16 ++ .../src/test/resources/activities/confirm.json | 17 ++ .../src/test/resources/activities/consume.json | 16 ++ .../src/test/resources/activities/create.json | 15 ++ .../src/test/resources/activities/delete.json | 16 ++ .../src/test/resources/activities/deliver.json | 20 ++ .../src/test/resources/activities/deny.json | 23 ++ .../src/test/resources/activities/disagree.json | 30 +++ .../src/test/resources/activities/dislike.json | 15 ++ .../test/resources/activities/experience.json | 16 ++ .../src/test/resources/activities/favorite.json | 15 ++ .../src/test/resources/activities/find.json | 19 ++ .../activities/flag-as-inappropriate.json | 24 ++ .../src/test/resources/activities/follow.json | 15 ++ .../src/test/resources/activities/give.json | 28 ++ .../src/test/resources/activities/host.json | 15 ++ .../src/test/resources/activities/ignore.json | 15 ++ .../src/test/resources/activities/insert.json | 19 ++ .../src/test/resources/activities/install.json | 18 ++ .../src/test/resources/activities/interact.json | 16 ++ .../src/test/resources/activities/invite.json | 19 ++ .../src/test/resources/activities/join.json | 15 ++ .../src/test/resources/activities/leave.json | 15 ++ .../src/test/resources/activities/like.json | 22 ++ .../src/test/resources/activities/listen.json | 15 ++ .../src/test/resources/activities/lose.json | 15 ++ .../test/resources/activities/make-friend.json | 15 ++ .../src/test/resources/activities/open.json | 15 ++ .../src/test/resources/activities/play.json | 15 ++ .../src/test/resources/activities/post.json | 25 ++ .../src/test/resources/activities/present.json | 15 ++ .../src/test/resources/activities/purchase.json | 16 ++ .../src/test/resources/activities/qualify.json | 15 ++ .../src/test/resources/activities/read.json | 16 ++ .../src/test/resources/activities/receive.json | 16 ++ .../src/test/resources/activities/reject.json | 15 ++ .../resources/activities/remove-friend.json | 15 ++ .../src/test/resources/activities/remove.json | 23 ++ .../src/test/resources/activities/replace.json | 19 ++ .../resources/activities/request-friend.json | 16 ++ .../src/test/resources/activities/request.json | 23 ++ .../src/test/resources/activities/resolve.json | 15 ++ .../src/test/resources/activities/retract.json | 26 ++ .../src/test/resources/activities/return.json | 19 ++ .../test/resources/activities/rsvp-maybe.json | 16 ++ .../src/test/resources/activities/rsvp-no.json | 16 ++ .../src/test/resources/activities/rsvp-yes.json | 16 ++ .../src/test/resources/activities/satisfy.json | 21 ++ .../src/test/resources/activities/save.json | 20 ++ .../src/test/resources/activities/schedule.json | 15 ++ .../src/test/resources/activities/search.json | 21 ++ .../src/test/resources/activities/sell.json | 19 ++ .../src/test/resources/activities/send.json | 19 ++ .../src/test/resources/activities/share.json | 16 ++ .../src/test/resources/activities/sponsor.json | 17 ++ .../src/test/resources/activities/start.json | 15 ++ .../resources/activities/stop-following.json | 15 ++ .../src/test/resources/activities/submit.json | 15 ++ .../src/test/resources/activities/tag.json | 19 ++ .../test/resources/activities/terminate.json | 15 ++ .../src/test/resources/activities/tie.json | 24 ++ .../test/resources/activities/unfavorite.json | 15 ++ .../src/test/resources/activities/unlike.json | 15 ++ .../test/resources/activities/unsatisfy.json | 20 ++ .../src/test/resources/activities/unsave.json | 15 ++ .../src/test/resources/activities/unshare.json | 15 ++ .../src/test/resources/activities/update.json | 15 ++ .../src/test/resources/activities/use.json | 15 ++ .../src/test/resources/activities/watch.json | 16 ++ .../src/test/resources/activities/win.json | 15 ++ streams-runtimes/pom.xml | 1 + .../streams-runtime-dropwizard/pom.xml | 259 +++++++++++++++++++ .../dropwizard/GenericWebhookResource.java | 239 +++++++++++++++++ .../dropwizard/StreamDropwizardBuilder.java | 41 +++ .../streams/dropwizard/StreamsApplication.java | 173 +++++++++++++ .../dropwizard/StreamsDropwizardModule.java | 34 +++ .../streams/dropwizard/GenericWebhookData.json | 35 +++ .../StreamsDropwizardConfiguration.json | 8 + .../test/GenericWebhookResourceTest.java | 82 ++++++ .../dropwizard/test/StreamsApplicationIT.java | 30 +++ .../dropwizard/test/TestStreamsApplication.java | 9 + .../src/test/resources/configuration.yml | 18 ++ .../streams/local/queues/ThroughputQueue.java | 4 +- .../streams/local/tasks/BaseStreamsTask.java | 2 +- .../streams/local/tasks/StreamsMergeTask.java | 2 +- 273 files changed, 5927 insertions(+), 188 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d3a17609/streams-contrib/streams-provider-youtube/src/main/java/com/youtube/processor/YoutubeTypeConverter.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d3a17609/streams-contrib/streams-provider-youtube/src/main/java/com/youtube/serializer/YoutubeActivityUtil.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/d3a17609/streams-contrib/streams-provider-youtube/src/main/java/com/youtube/serializer/YoutubeEventClassifier.java ---------------------------------------------------------------------- diff --cc streams-contrib/streams-provider-youtube/src/main/java/com/youtube/serializer/YoutubeEventClassifier.java index c3860f4,62c673b..de7bc3a --- a/streams-contrib/streams-provider-youtube/src/main/java/com/youtube/serializer/YoutubeEventClassifier.java +++ b/streams-contrib/streams-provider-youtube/src/main/java/com/youtube/serializer/YoutubeEventClassifier.java @@@ -28,9 -28,8 +28,9 @@@ import org.apache.streams.jackson.Strea import java.io.IOException; public class YoutubeEventClassifier { - private static ObjectMapper mapper = new StreamsJacksonMapper(); + private static ObjectMapper mapper = StreamsJacksonMapper.getInstance(); private static final String VIDEO_IDENTIFIER = "\"youtube#video\""; + private static final String CHANNEL_IDENTIFIER = "youtube#channel"; public static Class detectClass(String json) { Preconditions.checkNotNull(json);