directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Niklas Therning <nik...@trillian.se>
Subject Re: [jira] Commented: (DIRMINA-121) Per-port filter chain
Date Thu, 17 Nov 2005 15:18:24 GMT
It's been a really interesting and fun discussion today! :)

To summarize:

sessionCreated() can not be relied upon to do filter initialization 
since if the filter is added to a chain after the session was created 
sessionCreated() won't be called. This means that IoFilter.init() is 
needed and it has to be called when added or at least before the first 
time any of the other IoFilter-methods is called. And in IoFilter.init() 
we know there will be times when we need to get a hold of the session 
(see SSLFilter) so IoFilter.init() has to be called every time it is 
added to a session. My conclusion is that we should add the session in 
the call to init():

void init(IoFilterChain parent, NextFilter nextFilter, IoSession session)

Can we all agree on this now?

I proposed a very simple solution earlier today which in short means 
that the chain for a session isn't created until the session is actually 
created. It will be extremelly simple to implement but there *might* be 
some overhead involved in creating the chain.

Dave, you seem to be confident that you can sort this out without having 
to create a new chain when a new session is created. I do not doubt 
that. If you still think it's worth it why don't you have a shot at it? 
The question is how complex it will be and if it really will be that 
much efficient.

/Niklas


Mime
View raw message