Return-Path: Delivered-To: apmail-hivemind-commits-archive@www.apache.org Received: (qmail 70012 invoked from network); 3 Nov 2006 12:00:39 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 3 Nov 2006 12:00:39 -0000 Received: (qmail 81308 invoked by uid 500); 3 Nov 2006 12:00:51 -0000 Delivered-To: apmail-hivemind-commits-archive@hivemind.apache.org Received: (qmail 81294 invoked by uid 500); 3 Nov 2006 12:00:51 -0000 Mailing-List: contact commits-help@hivemind.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@hivemind.apache.org Delivered-To: mailing list commits@hivemind.apache.org Received: (qmail 81285 invoked by uid 500); 3 Nov 2006 12:00:51 -0000 Delivered-To: apmail-jakarta-hivemind-cvs@jakarta.apache.org Received: (qmail 81282 invoked by uid 99); 3 Nov 2006 12:00:50 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 03 Nov 2006 04:00:50 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_HELO_PASS X-Spam-Check-By: apache.org Received: from [192.87.106.226] (HELO ajax.apache.org) (192.87.106.226) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 03 Nov 2006 04:00:39 -0800 Received: from ajax.apache.org (localhost [127.0.0.1]) by ajax.apache.org (Postfix) with ESMTP id C3918D49BD for ; Fri, 3 Nov 2006 11:59:47 +0000 (GMT) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Apache Wiki To: hivemind-cvs@jakarta.apache.org Date: Fri, 03 Nov 2006 11:59:47 -0000 Message-ID: <20061103115947.20910.25583@ajax.apache.org> Subject: [Jakarta-hivemind Wiki] Update of "DesignDiscussion" by AchimHuegen X-Virus-Checked: Checked by ClamAV on apache.org Dear Wiki user, You have subscribed to a wiki page or wiki category on "Jakarta-hivemind Wiki" for change notification. The following page has been changed by AchimHuegen: http://wiki.apache.org/jakarta-hivemind/DesignDiscussion New page: == Changes (agreed on by Knut + Achim) == * Move SymbolExpander to xml module (remove expandSymbols from RegistryInfrastructure and Module) * Move ServiceInterceptorFactory to xml module LoggingInterceptorFactory should remain in framework and be called by an adapter implementation in the xml module. == More changes in discussion == === registry definition API - interfaces vs. beans === === extension to extension point references - by id vs. by reference === This is all about how extensions are added to an extension point. Extensions are implementations, interceptors and contributions. If extension and extension point exists in different modules then there is no other option but a reference by fully qualified id which is resolved on construction time. If both exist in the same module the extension can be added directly to the extension point. Example by id: {{{ ModuleDefinition module = new ModuleDefinition("module1"); ServicePointDefinition service = new ServicePointDefinition("service1", ...) ServiceImplementationDefinition impl = new ServiceImplementationDefinition(...) module.addService(service); module.addServiceImplementation("module1.service1", impl); }}} Example by reference: {{{ ModuleDefinition module = new ModuleDefinition("module1"); ServicePointDefinition service = new ServicePointDefinition("service1", ...) ServiceImplementationDefinition impl = new ServiceImplementationDefinition(...) module.addService(service); service.addImplementation(impl); }}}