directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Trustin Lee (JIRA)" <>
Subject [jira] Created: (DIRMINA-131) Get rid of complexity of the current IoFilterChain.
Date Mon, 28 Nov 2005 14:14:39 GMT
Get rid of complexity of the current IoFilterChain.

         Key: DIRMINA-131
     Project: Directory MINA
        Type: Improvement
    Versions: 0.8    
    Reporter: Trustin Lee
 Assigned to: Trustin Lee 
     Fix For: 0.9

Currently, IoFilterChains are categorized into two; one is IoSessionManagerFilterChain, and
the other is IoSessionFilterChain.  IoSessionManagerFilterChain is shared by all sessions
managed by the same IoSessionManager, and IoSessionFilterChain is individual for each session.
 But this design made the internal architecture of MINA filter chain very complex comparing
its usefulness.

What about just getting rid of the original IoSessionManagerFilterChain, and provide a simple
data structure which just stores a list of filters but still implements IoFilter interface?
 By doing so, we can simply copy the chain into the IoSessionFilterChain before we start the
communication, so the chain implementation gets simplified dramatically.

Besides that, we have another option instead of using a simple data structure that implements
IoFilterChain.  It is called 'IoFilterChainBuilder'.  It is a kind of command pattern which
configures the filter chain instead of simply appending the filter list the chain.  It provides
great flexibility.  For example, you can override the settings of per-manager filter chain
in your per-port (or per-session) chain builder.

I think it will be best if we can combine these two approach by providing an IoFilterChainBuilder
implementation which simply appends the specified filter list to the per-session chain.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message