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

Julien Le Dem commented on PIG-2724:
------------------------------------

Good idea Jon.

Some minor comments:
* chain the exception in the test:
{code}
try {
    assertEquals("Element " + i, t.get(i++), o);
} catch (ExecException e) {
    throw new RuntimeException(e);
}
{code}

* please add the @Override annotation to the iterator() implementations.

* To facilitate future evolutions and default implementations you can create an 
AbstractTuple that all tuples would extend.
For now it would have only the iterator() method implementation. 
possibly it would have isNull(), toDelimitedString(), etc
                
> Make Tuple Iterable
> -------------------
>
>                 Key: PIG-2724
>                 URL: https://issues.apache.org/jira/browse/PIG-2724
>             Project: Pig
>          Issue Type: Improvement
>            Reporter: Jonathan Coveney
>            Assignee: Jonathan Coveney
>             Fix For: 0.11
>
>         Attachments: PIG-2724-0.patch
>
>
> Seriously, is there a more annoying pattern than the following?
> {code}
> for (int i = 0; i < t.size(); i++) {
>     try {
>         doStuff(t.get(i));
>     } catch (ExecException e) {
>         throw new RuntimeException("BUT I THOUGHT PIG WAS SINGLETHREADED", e);
>     }
> }
> {code}
> I mean yeah, you can do the following:
> {code}
> for (Object o : t.getAll()) {
>     doStuff(o);
> }
> {code}
> But I don't even think that should be necessary. I think the following should 
> work:
> {code}
> for (Object o : t) {
>     doStuff(o);
> }
> {code}
> It's a shame we can't give a default implementation (I either shake my fist 
> that this won't be possible until Java 8 OR that Tuple is an interface and 
> not an abstract class). Either way, I even added test! WOAH.
> Thoughts?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to