You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@samza.apache.org by "Chris Riccomini (JIRA)" <ji...@apache.org> on 2014/07/01 22:54:25 UTC

[jira] [Commented] (SAMZA-295) Classify public APIs between job-writers and framework-extenders

    [ https://issues.apache.org/jira/browse/SAMZA-295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14049316#comment-14049316 ] 

Chris Riccomini commented on SAMZA-295:
---------------------------------------

Two questions:

# Where to draw the line
# Annotation vs. package

For (1), I think I agree with Jakob. Start with StreamTask's API and walk backwards. I also think we should include StorageEngine since we spend so much time talking about state.

For (2), the only thing I find appealing about separate packages is that we don't have to do anything on the build side to get separate Javadocs out of it. It seems everyone uses the annotation approach, though. Using annotations does seem less invasive, given that we've already got code in packages and whatnot.

> Classify public APIs between job-writers and framework-extenders
> ----------------------------------------------------------------
>
>                 Key: SAMZA-295
>                 URL: https://issues.apache.org/jira/browse/SAMZA-295
>             Project: Samza
>          Issue Type: Improvement
>            Reporter: Jakob Homan
>             Fix For: 0.8.0
>
>
> Currently all the exposed Java APIs are mingled together, both those meant for developers writing simple Samza tasks (StreamTask, WindowableTask, SystemStreamPartition, etc.) and those APIs needed for extending Samza itself (CheckpointManager, TaskLifeCycleListener, BlockingEnvelopMap, etc.).  The latter group is likely not of use to those needing the former and may clutter and confuse.  It would be good to split these, either at the package level, or via annotations (similar to [Hadoop's audience annotations|https://issues.apache.org/jira/browse/HADOOP-5073]).



--
This message was sent by Atlassian JIRA
(v6.2#6252)