Return-Path: Delivered-To: apmail-excalibur-dev-archive@www.apache.org Received: (qmail 74640 invoked from network); 12 Sep 2005 07:49:23 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 12 Sep 2005 07:49:23 -0000 Received: (qmail 58254 invoked by uid 500); 12 Sep 2005 07:49:22 -0000 Delivered-To: apmail-excalibur-dev-archive@excalibur.apache.org Received: (qmail 58211 invoked by uid 500); 12 Sep 2005 07:49:22 -0000 Mailing-List: contact dev-help@excalibur.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: List-Id: "Excalibur Developers List" Reply-To: "Excalibur Developers List" Delivered-To: mailing list dev@excalibur.apache.org Received: (qmail 58197 invoked by uid 99); 12 Sep 2005 07:49:22 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Sep 2005 00:49:22 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (asf.osuosl.org: local policy) Received: from [58.88.38.160] (HELO tanukisoftware.com) (58.88.38.160) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Sep 2005 00:49:32 -0700 Received: from [127.0.0.1] (127.0.0.1) by localhost (127.0.0.1) with [XMail 1.9 (Win32/Ix86) ESMTP Server] id for from ; Mon, 12 Sep 2005 16:49:16 +0900 Message-ID: <432532FC.4050804@tanukisoftware.com> Date: Mon, 12 Sep 2005 16:49:16 +0900 From: Leif Mortenson User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317) X-Accept-Language: en, ja, en-us MIME-Version: 1.0 To: Excalibur Developers List Subject: Fortres META dependencies Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Hi all, I have been running into some problems that have been tracked down to the way Fortress's META task is currently collecting its META information. I have a series of classes A, B, and C. Each implements a service method which declares a single dependency. C extends B, and B extends A. Each of the classes exists in a different source tree and thus different jar. As things are right now, both A and B are abstract classes and thus do not contain the component headers. When META parses these files, it does not create the .deps files in the jars for A or B. When it is time to build C, the source and thus the original dependency information is no longer available. What are your thoughts on how to solve this? My thinking is to modify the META task so that .deps files are generated for all classes which define dependencies, regardless of whether or not they are components. This way the jars would contain A.deps and B.deps. Then when the C jar is being built, the META task would search for the source of all parent classes. If the source for any one class could not be found, it would look for the .deps file. 2) A second issue is how dependencies should be declared in classes which do not directly implement Serviceable? In the above A->B->C example, A.service is implemented and then provides an A.getServiceManager() method. Ideally, I would rather not have to extend the service method in B and C to declare their additional dependencies. Currently, I am doing the following: /** * Provide the component with a reference to its ServiceManager so * that is can obtain references to other components needed for * execution. * * @param serviceManager The ServiceManager controlling this component. * * @throws ServiceException If there were any problems. * * @avalon.dependency type=org.apache.avalon.excalibur.datasource.DataSourceComponent */ public void service( ServiceManager serviceManager ) throws ServiceException { super.service( serviceManager ); } What about the idea of modifying the META task so that it looks for the @avalon.dependency tags both in the service method javadocs and in the class javadocs. This way they could simply be defined at the top of the class. Cheers, Leif --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@excalibur.apache.org For additional commands, e-mail: dev-help@excalibur.apache.org