curator-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CURATOR-144) TreeCache should use a builder for advanced options
Date Thu, 28 Aug 2014 16:44:08 GMT

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

ASF GitHub Bot commented on CURATOR-144:
----------------------------------------

Github user dragonsinth commented on a diff in the pull request:

    https://github.com/apache/curator/pull/41#discussion_r16851906
  
    --- Diff: curator-recipes/src/main/java/org/apache/curator/framework/recipes/cache/TreeCache.java
---
    @@ -580,13 +670,33 @@ public Void apply(TreeCacheListener listener)
         }
     
         /**
    -     * Default behavior is just to log the exception
    -     *
    -     * @param e the exception
    +     * Send an exception to any listeners, or else log the error if there are none.
          */
    -    protected void handleException(Throwable e)
    +    private void handleException(final Throwable e)
         {
    -        LOG.error("", e);
    +        if ( errorListeners.size() == 0 )
    +        {
    +            LOG.error("", e);
    +        }
    +        else
    +        {
    +            errorListeners.forEach(new Function<UnhandledErrorListener, Void>()
    +            {
    +                @Override
    +                public Void apply(UnhandledErrorListener listener)
    +                {
    +                    try
    +                    {
    +                        listener.unhandledError("", e);
    +                    }
    +                    catch ( Exception e )
    +                    {
    +                        LOG.error("Exception handling exception", e);
    +                    }
    +                    return null;
    +                }
    +            });
    +        }
    --- End diff --
    
    Which part, having unhandledError listeners attached to a recipe?  Logging to error only
when there are no listeners?
    
    Another option I considered is somehow making the recipe fire the unhandled error through
the CuratorFramework's unhandledError listeners.  But I wasn't sure if that was a good idea
or not.  WDTY?
    
    My immediate need is to ensure during tests that no unhandled errors fire.  I was doing
that via subclass but I was unhappy about that approach since I want to use the Builder in
tests.


> TreeCache should use a builder for advanced options
> ---------------------------------------------------
>
>                 Key: CURATOR-144
>                 URL: https://issues.apache.org/jira/browse/CURATOR-144
>             Project: Apache Curator
>          Issue Type: Improvement
>          Components: Recipes
>            Reporter: Scott Blum
>            Priority: Minor
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>




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

Mime
View raw message