Return-Path: Delivered-To: apmail-directory-dev-archive@www.apache.org Received: (qmail 72013 invoked from network); 17 Nov 2005 13:34:26 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 17 Nov 2005 13:34:26 -0000 Received: (qmail 86722 invoked by uid 500); 17 Nov 2005 13:34:25 -0000 Delivered-To: apmail-directory-dev-archive@directory.apache.org Received: (qmail 86505 invoked by uid 500); 17 Nov 2005 13:34:24 -0000 Mailing-List: contact dev-help@directory.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Apache Directory Developers List" Delivered-To: mailing list dev@directory.apache.org Received: (qmail 86494 invoked by uid 99); 17 Nov 2005 13:34:24 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 17 Nov 2005 05:34:24 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of trustin@gmail.com designates 64.233.184.196 as permitted sender) Received: from [64.233.184.196] (HELO wproxy.gmail.com) (64.233.184.196) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 17 Nov 2005 05:35:58 -0800 Received: by wproxy.gmail.com with SMTP id i28so392832wra for ; Thu, 17 Nov 2005 05:34:02 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:references; b=IfAqh4NBXlTfJQhmDKQE1p5k9cIZssBw0jV6gHgaQsZIKtKFLxM6cCCby799FlaFBsZnXJxx6PgAsNuBRc/q2HE3uASdO/GzNICEmXwjp4qDMdqXkDuMmkQztSZz3L39dWmZguFd735O+Ls7AryOLfrOCkn1XDLHW3bp9q0r9aA= Received: by 10.54.93.10 with SMTP id q10mr4037195wrb; Thu, 17 Nov 2005 05:34:02 -0800 (PST) Received: by 10.54.127.2 with HTTP; Thu, 17 Nov 2005 05:34:02 -0800 (PST) Message-ID: <768dcb2e0511170534r51d78d18p@mail.gmail.com> Date: Thu, 17 Nov 2005 22:34:02 +0900 From: Trustin Lee To: Apache Directory Developers List Subject: Re: [jira] Commented: (DIRMINA-121) Per-port filter chain In-Reply-To: <75CFC296F70A08409390004F30EF9B850696841E@uk-ex001.groupinfra.com> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_32878_18704046.1132234442390" References: <75CFC296F70A08409390004F30EF9B850696841E@uk-ex001.groupinfra.com> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N ------=_Part_32878_18704046.1132234442390 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline 2005/11/17, Irving, Dave : > IoFilter.init(IoFilterChain parent, NextFilter nextFilter) does make > sense if you want your init to fire an event. I thought IoFilter.init(IoFilterchain, NextFilter, IoSession) makes sense instead. Am I missing something? :) Filters would never be inited until a session comes along. > My proposal does have a problem though: A shared (acceptor / port) > filter would only be inited / destroyed once (not per session) because > it's the NextFilter that contains the smarts (not the filter). > It means that per session init / destroy logic should come in > "sessionCreated" / "sessionDestroyed" and not "init". > "init" / "destroy" would be used for initialisation / tear-down of the > filter itself (e.g. acquiring / releasing resources). I think we should delay calling init() or destroy() when it is added to per-manager or per-port chain at the moment to when it is copied to per-session chain. So we can think per-manager or per-port chain is just an *inactive* chain that provides data structure only. And I don't see any reason to call init() in manager/port level if it works only for session. WDYT? Trustin -- what we call human nature is actually human habit -- http://gleamynode.net/ ------=_Part_32878_18704046.1132234442390 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline
2005/11/17, Irving, Dave <dave.irving@logicacmg.com>:
IoFilter.init(IoFilterChain parent, NextFilter nextFilter) does make
sen= se if you want your init to fire an event.

I thought I= oFilter.init(IoFilterchain, NextFilter, IoSession) makes sense instead.&nbs= p; Am I missing something? :)=20

Fil= ters would never be inited until a session comes along.
My proposal does= have a problem though: A shared (acceptor / port)
filter would only be inited / destroyed once (not per session) because<= br>it's the NextFilter that contains the smarts (not the filter).
It mea= ns that per session init / destroy logic should come in
"sessionCre= ated" / "sessionDestroyed" and not "init".
"init" / "destroy" would be used for initialisation= / tear-down of the
filter itself (e.g. acquiring / releasing resources)= .

I think we should delay calling init() or destroy() = when it is added to per-manager or per-port chain at the moment to when it = is copied to per-session chain.  So we can think per-manager or per-po= rt chain is just an *inactive* chain that provides data structure only.&nbs= p; And I don't see any reason to call init() in manager/port level if it wo= rks only for session.

WDYT?

Trustin
--
what we call human natur= e is actually human habit
--
http:= //gleamynode.net/ ------=_Part_32878_18704046.1132234442390--