You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@streams.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2015/02/10 23:32:11 UTC
[jira] [Commented] (STREAMS-276) Upgrade providers to supply
StreamsDateTimeFormat, DocumentClassifier, and ActivityConverter
implementations
[ https://issues.apache.org/jira/browse/STREAMS-276?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14315093#comment-14315093 ]
ASF GitHub Bot commented on STREAMS-276:
----------------------------------------
GitHub user steveblackmon opened a pull request:
https://github.com/apache/incubator-streams/pull/180
resolves STREAMS-276
updates to make this module use DocumentClassifier and ActivityConverter interfaces and reflection-based DateTime handling and Activity conversion.
tweaks and renames to the tests to match the new model.
This change impacts testing in streams-runtime-pig, so https://github.com/apache/incubator-streams/pull/179 must merge first.
Note that this will be a breaking change to streams components and pipelines which rely on 'Serializer'-style conversion. The good news is resolving should be as simple as:
ActivityConverterProcessor converter = new ActivityConverterProcessor();
builder.addStreamsProcessor("converter", converter, 4, "provider");
where upstream provider passes in String or ObjectNode representations of POJOs in com.twitter
TwitterEventClassifier and TwitterEventProcessor are no longer necessary.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/steveblackmon/incubator-streams STREAMS-277
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-streams/pull/180.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #180
----
commit 9f3df59d12f6102cb8e84a326b9e8506d81840f7
Author: sblackmon <sb...@w2odigital.com>
Date: 2015-02-10T21:35:34Z
updates to make this module use DocumentClassifier and ActivityConverter interfaces and reflection-based DateTime handling and Activity conversion.
tweaks and renames to the tests to match the new model.
this change impacts testing in streams-runtime-pig, so PR submitted for STREAMS-278 must merge first.
resolves STREAMS-276
----
> Upgrade providers to supply StreamsDateTimeFormat, DocumentClassifier, and ActivityConverter implementations
> ------------------------------------------------------------------------------------------------------------
>
> Key: STREAMS-276
> URL: https://issues.apache.org/jira/browse/STREAMS-276
> Project: Streams
> Issue Type: Improvement
> Reporter: Steve Blackmon
>
> For each provider where the proposed re-factoring improvement is feasible, create sub-tasks to perform the following:
> 1) Add DocumentClassifier(s) capable of classifying each provider-specific type combination the provider expects to receive from all upstream end-points.
> 2) Add a test demonstrating one and only one of these Classifiers returns true across a set of example origin documents.
> 3) Add an ActivityConverter for each objectType/Verb combination the provider expects to emit. requiredClass should be one of String.class, ObjectNode.class, or a POJO which extends Serializable.
> 4) Add tests demonstrating that individual ActivityConverters are able to convert the set of example origin documents into activities with correct objectType/verb.
> 5) Add tests demonstrating that ActivityConverterProcessor is able to convert the set of example origin documents into activities with correct objectType/verb.
> 6) Add a StreamsDateTimeFormat for each non-RFC3339 date string the provider expects to receive.
> 7) Add a test demonstrating that StreamsJacksonMapper is able to convert matching date strings to DateTimes.
> 8) Mark legacy TypeConverters as Deprecated, or delete if they are now unmaintainable.
> 9) Mark legacy EventClassifiers as Deprecated, or delete if they are now unmaintainable.
> 10) Mark legacy StreamsMappers as Deprecated, or delete if they are now unmaintainable.
> For any provider where the proposed re-factoring improvement is not feasible, document why in the module README and/or create issues for whatever refactoring would be necessary to make that provider compatible with ActivityConverterProcessor.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)