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

ASF GitHub Bot commented on ARTEMIS-1327:
-----------------------------------------

Github user cshannon commented on the issue:

    https://github.com/apache/activemq-artemis/pull/1445
  
    @clebertsuconic - So I just realized that I don't think we want to swallow 
exceptions.  If there's an exception in the plugin don't we want it to 
propagate?  There are 2 cases for exceptions, the first is a buggy plugin and 
that just means the plugin should be fixed.  The second is if there is an 
actual error and I think that error should be propagated and not just logged.
    
    For example, one of my use cases for this is I want to validate clientIds.  
So I want to throw an exception and reject a clientId in the 
beforeSessionMetadataAdded method if it doesn't meet some criteria and have it 
propagated back to the client.  (There's actually another Jira I need to open 
to make this work properly to make sure the exception is thrown back to the 
client).



> Support checked exceptions from ActiveMQServerPlugin
> ----------------------------------------------------
>
>                 Key: ARTEMIS-1327
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1327
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: Broker
>            Reporter: Christopher L. Shannon
>            Assignee: Christopher L. Shannon
>             Fix For: 2.3.0
>
>
> After I was writing a couple custom plugins I realized it would be beneficial 
> to support checked exceptions.  This makes error handling simpler for plugin 
> writers as they can throw various exceptions and not have to always wrap them 
> in a RuntimeException.  Almost every place in the broker where plugin methods 
> are currently called already support handling checked Exceptions so this is 
> pretty simple and mostly we just need to add a "throws Exception" to each of 
> the methods in the ActiveMQServerPlugin interface and make sure the methods 
> used to execute the plugin methods also support it.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to