Return-Path: Delivered-To: apmail-ws-axis-dev-archive@www.apache.org Received: (qmail 96894 invoked from network); 7 May 2007 16:19:01 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 7 May 2007 16:19:01 -0000 Received: (qmail 22661 invoked by uid 500); 7 May 2007 16:19:05 -0000 Delivered-To: apmail-ws-axis-dev-archive@ws.apache.org Received: (qmail 22615 invoked by uid 500); 7 May 2007 16:19:05 -0000 Mailing-List: contact axis-dev-help@ws.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@ws.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list axis-dev@ws.apache.org Received: (qmail 22604 invoked by uid 99); 7 May 2007 16:19:05 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 07 May 2007 09:19:05 -0700 X-ASF-Spam-Status: No, hits=2.0 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: domain of samindaa@gmail.com designates 66.249.90.176 as permitted sender) Received: from [66.249.90.176] (HELO ik-out-1112.google.com) (66.249.90.176) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 07 May 2007 09:18:58 -0700 Received: by ik-out-1112.google.com with SMTP id b35so294502ika for ; Mon, 07 May 2007 09:18:36 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:references; b=eZWIq3F1waxXJE0CNXAiDBZoM8wjSEZs3vUKd1usQbkm5qhz3JRhmsslZkvl625YLWtus+m7l6qnPCc7iTltVmjTgaow8w/yutypLqQC9EyfHevZvUeZGnprmoCZI7TuGSoelXOsSSLCurETb6rx5pVfaidLfWJzqZ6C4UTJ7Go= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:references; b=Zdev0TCXAhDP360LF5BDNu5hBbkYyUoHJSwk8zdmJZ3abuzO5PyzDWqRAkBobYGewu7AMZvJPavbM5ZCAsP+cfquemoBS6r0cLCi9MeQYT6IiLr/jTsHLyuh0LHpTQC0h2RzJqdbDlr83KMP33PwApExTdkjn4i4yqlvcm69jMQ= Received: by 10.78.130.6 with SMTP id c6mr2203387hud.1178554715563; Mon, 07 May 2007 09:18:35 -0700 (PDT) Received: by 10.78.135.6 with HTTP; Mon, 7 May 2007 09:18:35 -0700 (PDT) Message-ID: Date: Mon, 7 May 2007 21:48:35 +0530 From: "Saminda Abeyruwan" To: axis-dev@ws.apache.org Subject: Re: [Axis2] Engaging modules at runtime. In-Reply-To: <463F3ABB.7020201@thoughtcraft.com> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_45383_19359679.1178554715516" References: <463F00C9.10309@wso2.com> <463F3ABB.7020201@thoughtcraft.com> X-Virus-Checked: Checked by ClamAV on apache.org ------=_Part_45383_19359679.1178554715516 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline On 5/7/07, Glen Daniels wrote: > > Hi Saminda! > > sumedha rubasinghe wrote: > > forwarding with correct prefix... > > > > Saminda Abeyruwan wrote: > >> Hi, > >> > >> AxisConfiguration has the following methods, > >> > >> public void engageModule(AxisModule axisModule, AxisConfiguration > >> axisConfig) > >> throws AxisFault { > >> engageModule(axisModule); > >> } --- > [1] > >> > >> private void engageModule(AxisModule module) throws AxisFault > >> {...} --> [2] > >> > >> What is the purpose of [1]. Wouldn't it better to modify the access > >> modifier of [2] to *public* and remove [1]. > > +1! > > However, this is a slightly more complicated problem. The > engageModule(AxisModule, AxisConfiguration) API comes from > AxisDescription, so we'd need to change THAT one to really do this. > This is exactly what I think we should do, since all AxisDescription > objects should be able to find their AxisConfiguration without any > problem - therefore they shouldn't need to have it passed in (and in > fact even leaving the API the option of passing it means that it's > possible for people to screw up and pass a *different* AxisConfiguration > than the one the current object belongs to... good APIs should protect > against things like this). > > So I'd propose we remove the first version, and refactor the second > version up to AxisDescription. Each description has public AxisConfiguration getAxisConfiguration() from AxisDescription thus, finding the AxisConfiguration in the hierarchy is no problem +1 Saminda --Glen > > --------------------------------------------------------------------- > To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org > For additional commands, e-mail: axis-dev-help@ws.apache.org > > -- Saminda Abeyruwan Software Engineer WSO2 Inc. - www.wso2.org ------=_Part_45383_19359679.1178554715516 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline

On 5/7/07, Glen Daniels <glen@thoughtcraft.com> wrote:
Hi Saminda!

sumedha rubasinghe wrote:
> forwarding with correct prefix...
>
> Saminda Abeyruwan wrote:
>> Hi,
>>
>> AxisConfiguration has the following methods,
>>
>>   public void engageModule(AxisModule axisModule, AxisConfiguration
>> axisConfig)
>>             throws AxisFault {
>>         engageModule(axisModule);
>>     }   --- > [1]
>>
>>     private void engageModule(AxisModule module) throws AxisFault
>> {...} --> [2]
>>
>> What is the purpose of [1]. Wouldn't it better to modify the access
>> modifier of [2] to *public* and remove [1].

+1!

However, this is a slightly more complicated problem.  The
engageModule(AxisModule, AxisConfiguration) API comes from
AxisDescription, so we'd need to change THAT one to really do this.
This is exactly what I think we should do, since all AxisDescription
objects should be able to find their AxisConfiguration without any
problem - therefore they shouldn't need to have it passed in (and in
fact even leaving the API the option of passing it means that it's
possible for people to screw up and pass a *different* AxisConfiguration
than the one the current object belongs to... good APIs should protect
against things like this).

So I'd propose we remove the first version, and refactor the second
version up to AxisDescription.

Each description has

public AxisConfiguration getAxisConfiguration() from AxisDescription
thus, finding the AxisConfiguration in the hierarchy is no problem

+1

Saminda

--Glen

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org




--
Saminda Abeyruwan

Software Engineer
WSO2 Inc. - www.wso2.org ------=_Part_45383_19359679.1178554715516--