You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@crunch.apache.org by "Matthias Friedrich (JIRA)" <ji...@apache.org> on 2012/12/02 15:25:57 UTC

[jira] [Created] (CRUNCH-122) Make implementation classes package-private

Matthias Friedrich created CRUNCH-122:
-----------------------------------------

             Summary: Make implementation classes package-private
                 Key: CRUNCH-122
                 URL: https://issues.apache.org/jira/browse/CRUNCH-122
             Project: Crunch
          Issue Type: Improvement
    Affects Versions: 0.4.0
            Reporter: Matthias Friedrich
            Assignee: Matthias Friedrich
            Priority: Trivial


There are a few implementation classes that are used only from within their home package. Thus, they should be package-private instead of public, which also hides them from javadoc. Most of these classes aren't from our set of "published" packages anyway but it's good style to hide them if we can.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CRUNCH-122) Reduce visibility of implementation classes

Posted by "Josh Wills (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CRUNCH-122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13508890#comment-13508890 ] 

Josh Wills commented on CRUNCH-122:
-----------------------------------

+1, please commit.
                
> Reduce visibility of implementation classes
> -------------------------------------------
>
>                 Key: CRUNCH-122
>                 URL: https://issues.apache.org/jira/browse/CRUNCH-122
>             Project: Crunch
>          Issue Type: Improvement
>    Affects Versions: 0.4.0
>            Reporter: Matthias Friedrich
>            Assignee: Matthias Friedrich
>            Priority: Trivial
>         Attachments: CRUNCH-122-Make-impl-classes-package-private.patch, CRUNCH-122-v2.patch, CRUNCH-122-v3.patch
>
>
> There are a few implementation classes that are used only from within their home package. Thus, they should be package-private instead of public, which also hides them from javadoc. Most of these classes aren't from our set of "published" packages anyway but it's good style to hide them if we can. We can also make inner DoFns private if there is a static factory method for them.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CRUNCH-122) Reduce visibility of implementation classes

Posted by "Matthias Friedrich (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CRUNCH-122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthias Friedrich updated CRUNCH-122:
--------------------------------------

    Attachment: CRUNCH-122-v2.patch

Found more stuff we can hide. Limits the amount of javadoc we have to write.
                
> Reduce visibility of implementation classes
> -------------------------------------------
>
>                 Key: CRUNCH-122
>                 URL: https://issues.apache.org/jira/browse/CRUNCH-122
>             Project: Crunch
>          Issue Type: Improvement
>    Affects Versions: 0.4.0
>            Reporter: Matthias Friedrich
>            Assignee: Matthias Friedrich
>            Priority: Trivial
>         Attachments: CRUNCH-122-Make-impl-classes-package-private.patch, CRUNCH-122-v2.patch
>
>
> There are a few implementation classes that are used only from within their home package. Thus, they should be package-private instead of public, which also hides them from javadoc. Most of these classes aren't from our set of "published" packages anyway but it's good style to hide them if we can. We can also make inner DoFns private if there is a static factory method for them.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CRUNCH-122) Make implementation classes package-private

Posted by "Matthias Friedrich (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CRUNCH-122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthias Friedrich updated CRUNCH-122:
--------------------------------------

    Attachment: CRUNCH-122-Make-impl-classes-package-private.patch

That should be most of them but if you find more, be my guest. Some of the avro stuff looks like it could be package-private with some refactoring.
                
> Make implementation classes package-private
> -------------------------------------------
>
>                 Key: CRUNCH-122
>                 URL: https://issues.apache.org/jira/browse/CRUNCH-122
>             Project: Crunch
>          Issue Type: Improvement
>    Affects Versions: 0.4.0
>            Reporter: Matthias Friedrich
>            Assignee: Matthias Friedrich
>            Priority: Trivial
>         Attachments: CRUNCH-122-Make-impl-classes-package-private.patch
>
>
> There are a few implementation classes that are used only from within their home package. Thus, they should be package-private instead of public, which also hides them from javadoc. Most of these classes aren't from our set of "published" packages anyway but it's good style to hide them if we can.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Resolved] (CRUNCH-122) Reduce visibility of implementation classes

Posted by "Matthias Friedrich (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CRUNCH-122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthias Friedrich resolved CRUNCH-122.
---------------------------------------

       Resolution: Fixed
    Fix Version/s: 0.5.0

Done. Compared to 0.3.0 we have reduced our published interface by 50% (if we don't count deprecated stuff). Cool :)
                
> Reduce visibility of implementation classes
> -------------------------------------------
>
>                 Key: CRUNCH-122
>                 URL: https://issues.apache.org/jira/browse/CRUNCH-122
>             Project: Crunch
>          Issue Type: Improvement
>    Affects Versions: 0.4.0
>            Reporter: Matthias Friedrich
>            Assignee: Matthias Friedrich
>            Priority: Trivial
>             Fix For: 0.5.0
>
>         Attachments: CRUNCH-122-Make-impl-classes-package-private.patch, CRUNCH-122-v2.patch, CRUNCH-122-v3.patch
>
>
> There are a few implementation classes that are used only from within their home package. Thus, they should be package-private instead of public, which also hides them from javadoc. Most of these classes aren't from our set of "published" packages anyway but it's good style to hide them if we can. We can also make inner DoFns private if there is a static factory method for them.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CRUNCH-122) Reduce visibility of implementation classes

Posted by "Matthias Friedrich (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CRUNCH-122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthias Friedrich updated CRUNCH-122:
--------------------------------------

    Attachment: CRUNCH-122-v3.patch

Good catch, thanks! Your suggestion makes sense, here's an updated patch.
                
> Reduce visibility of implementation classes
> -------------------------------------------
>
>                 Key: CRUNCH-122
>                 URL: https://issues.apache.org/jira/browse/CRUNCH-122
>             Project: Crunch
>          Issue Type: Improvement
>    Affects Versions: 0.4.0
>            Reporter: Matthias Friedrich
>            Assignee: Matthias Friedrich
>            Priority: Trivial
>         Attachments: CRUNCH-122-Make-impl-classes-package-private.patch, CRUNCH-122-v2.patch, CRUNCH-122-v3.patch
>
>
> There are a few implementation classes that are used only from within their home package. Thus, they should be package-private instead of public, which also hides them from javadoc. Most of these classes aren't from our set of "published" packages anyway but it's good style to hide them if we can. We can also make inner DoFns private if there is a static factory method for them.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CRUNCH-122) Reduce visibility of implementation classes

Posted by "Josh Wills (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CRUNCH-122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13508381#comment-13508381 ] 

Josh Wills commented on CRUNCH-122:
-----------------------------------

Looks good to me, w/the exception of SeqFileTableSource. That one surprised me, and I discovered that it's not used outside of the package b/c we're return SeqFileTableSourceTarget in the From.java code instead of SeqFileTableSource. I think that is a bug, at least in so far as it is inconsistent w/the rest of the Source stuff. It seems like the simplest fix would be to change From.java to return SeqFileTableSource instead of SeqFileTableSourceTarget, but I'm happy to have a debate on other options there.
                
> Reduce visibility of implementation classes
> -------------------------------------------
>
>                 Key: CRUNCH-122
>                 URL: https://issues.apache.org/jira/browse/CRUNCH-122
>             Project: Crunch
>          Issue Type: Improvement
>    Affects Versions: 0.4.0
>            Reporter: Matthias Friedrich
>            Assignee: Matthias Friedrich
>            Priority: Trivial
>         Attachments: CRUNCH-122-Make-impl-classes-package-private.patch, CRUNCH-122-v2.patch
>
>
> There are a few implementation classes that are used only from within their home package. Thus, they should be package-private instead of public, which also hides them from javadoc. Most of these classes aren't from our set of "published" packages anyway but it's good style to hide them if we can. We can also make inner DoFns private if there is a static factory method for them.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CRUNCH-122) Reduce visibility of implementation classes

Posted by "Matthias Friedrich (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CRUNCH-122?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthias Friedrich updated CRUNCH-122:
--------------------------------------

    Description: There are a few implementation classes that are used only from within their home package. Thus, they should be package-private instead of public, which also hides them from javadoc. Most of these classes aren't from our set of "published" packages anyway but it's good style to hide them if we can. We can also make inner DoFns private if there is a static factory method for them.  (was: There are a few implementation classes that are used only from within their home package. Thus, they should be package-private instead of public, which also hides them from javadoc. Most of these classes aren't from our set of "published" packages anyway but it's good style to hide them if we can.)
        Summary: Reduce visibility of implementation classes  (was: Make implementation classes package-private)
    
> Reduce visibility of implementation classes
> -------------------------------------------
>
>                 Key: CRUNCH-122
>                 URL: https://issues.apache.org/jira/browse/CRUNCH-122
>             Project: Crunch
>          Issue Type: Improvement
>    Affects Versions: 0.4.0
>            Reporter: Matthias Friedrich
>            Assignee: Matthias Friedrich
>            Priority: Trivial
>         Attachments: CRUNCH-122-Make-impl-classes-package-private.patch
>
>
> There are a few implementation classes that are used only from within their home package. Thus, they should be package-private instead of public, which also hides them from javadoc. Most of these classes aren't from our set of "published" packages anyway but it's good style to hide them if we can. We can also make inner DoFns private if there is a static factory method for them.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira