[ 
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 <[email protected]>
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)

Reply via email to