Yeah, I was supposing so.
However, it seems more natural, as the only place where the location
is set is when registering the command in the registry.
Maybe another way would be to say that the location has to be set on
the command in some way before registering it: the registry would
retrieve the location from the command instead of receiving it as an
argument to the registerCommand method and then setting the location.
As the same command object can not be registered at two different
locations (else one location would be somehow lost on the command), it
may make sense.  The location could be set directly when the
PluginParser creates the bean definition.  Wdyt ?

On Thu, Oct 16, 2008 at 9:24 AM, Jason Dillon <[EMAIL PROTECTED]> wrote:
> I didn't really want to expose setLocation in Command, hence the reason why
> it was coded like that.
>
> --jason
>
>
> On Oct 16, 2008, at 1:04 AM, [EMAIL PROTECTED] wrote:
>
>> Author: gnodet
>> Date: Wed Oct 15 11:04:24 2008
>> New Revision: 704975
>>
>> URL: http://svn.apache.org/viewvc?rev=704975&view=rev
>> Log:
>> Remove an ugly cast by adding the setLocation method to the Command
>> interface
>>
>> Modified:
>>
>> geronimo/gshell/trunk/gshell-api/src/main/java/org/apache/geronimo/gshell/command/Command.java
>>
>> geronimo/gshell/trunk/gshell-wisdom/gshell-wisdom-core/src/main/java/org/apache/geronimo/gshell/wisdom/registry/CommandRegistryImpl.java
>>
>> Modified:
>> geronimo/gshell/trunk/gshell-api/src/main/java/org/apache/geronimo/gshell/command/Command.java
>> URL:
>> http://svn.apache.org/viewvc/geronimo/gshell/trunk/gshell-api/src/main/java/org/apache/geronimo/gshell/command/Command.java?rev=704975&r1=704974&r2=704975&view=diff
>>
>> ==============================================================================
>> ---
>> geronimo/gshell/trunk/gshell-api/src/main/java/org/apache/geronimo/gshell/command/Command.java
>> (original)
>> +++
>> geronimo/gshell/trunk/gshell-api/src/main/java/org/apache/geronimo/gshell/command/Command.java
>> Wed Oct 15 11:04:24 2008
>> @@ -31,6 +31,8 @@
>> {
>>    CommandLocation getLocation();
>>
>> +    void setLocation(CommandLocation location);
>> +
>>    /**
>>     * Returns the action of the command.
>>     *
>>
>> Modified:
>> geronimo/gshell/trunk/gshell-wisdom/gshell-wisdom-core/src/main/java/org/apache/geronimo/gshell/wisdom/registry/CommandRegistryImpl.java
>> URL:
>> http://svn.apache.org/viewvc/geronimo/gshell/trunk/gshell-wisdom/gshell-wisdom-core/src/main/java/org/apache/geronimo/gshell/wisdom/registry/CommandRegistryImpl.java?rev=704975&r1=704974&r2=704975&view=diff
>>
>> ==============================================================================
>> ---
>> geronimo/gshell/trunk/gshell-wisdom/gshell-wisdom-core/src/main/java/org/apache/geronimo/gshell/wisdom/registry/CommandRegistryImpl.java
>> (original)
>> +++
>> geronimo/gshell/trunk/gshell-wisdom/gshell-wisdom-core/src/main/java/org/apache/geronimo/gshell/wisdom/registry/CommandRegistryImpl.java
>> Wed Oct 15 11:04:24 2008
>> @@ -60,9 +60,7 @@
>>            throw new DuplicateCommandException(name);
>>        }
>>
>> -        if (command instanceof CommandSupport) {
>> -            ((CommandSupport)command).setLocation(new
>> CommandLocationImpl(name));
>> -        }
>> +        command.setLocation(new CommandLocationImpl(name));
>>
>>        commands.put(name, command);
>>
>>
>>
>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Reply via email to