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

Robbie Gemmell commented on PROTON-1718:
----------------------------------------

A key reason I said the bit you quoted was your mention of multiple threads, so 
if setting that aside then I'd mostly set it aside too. Thats not the only time 
the reactor does IO, it chooses when to do IO work based on some mechanisms, 
which I don't fully understand myself since I didn't write it and don't use it 
in other components, but in this case it seems like it probably isn't necessary 
as the nature of the SASL process will essentially mean thats what happens.

The SASL API caters to the original intended usage of proton as an engine, and 
the reactors model hiding it in the way it does prevents you from using it as 
intended. Rather than requiring a new SASL impl be provided, with associated 
leakage of implementation classes through interfaces and/or making 
implementation detail public for unsupported extension, looking into it I think 
I see a nice alternative approach where a small addition could allow using the 
existing SASL APIs essentially as intended even within the reactor (and perhaps 
even making it easier to use outwith the reactor too). I'll put something up 
around this on Monday for discussion.

> (Proton-J) Custom Sasl
> ----------------------
>
>                 Key: PROTON-1718
>                 URL: https://issues.apache.org/jira/browse/PROTON-1718
>             Project: Qpid Proton
>          Issue Type: Improvement
>          Components: proton-j
>    Affects Versions: proton-j-0.24.0
>            Reporter: Tim Taylor
>              Labels: features
>
> I would like to be able to provide a custom SASL implementation for Proton-j 
> to use instead of being forced to use the default SaslImpl.java 
> implementation.
> Ideally, code like below would be possible
> private class CustomSasl implements org.apache.qpid.proton.engine.Sasl
> {
> ...
> }
> ...
> ...
> //transport.sasl(...) saves the provided sasl implementation and uses it 
> internally
> Sasl sasl = transport.sasl(new CustomSasl());
> Do you currently have a workaround that would allow me to use Proton-J this 
> way?



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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to