Hi Niklas,

please see my answer below.

Jesus.

2011/10/8 Niklas Gustavsson <[email protected]>:
> 2011/10/7 Jesús Castillo <[email protected]>:
>> I was able to deploy the ftpserver as a bundle in ServiceMix. However, I
>> found some limitations
>> and I wonder if any of them could be addressed in future versions.
>
> We would be happy to adress them wherever it reasonable, mostly we do
> not want to have to change the API to do so.
>

> However, I'm not sure we got the necessary knowledge to do so, so
> patches would be most welcome.
>

I think that we can OSGify it keeping the same API. I'll provide what I have
once is done.


>> 1. Dependency between interfaces and implementation that make difficult to
>> segregate them in different bundles.
>
> Sounds like this would require moving classes around?

Most likely. For example, I think the command interface should be exposed
so we can extend it. However, the execute method has FtpIoSession and
FtpServerConxtext as parameters and they are in the impl package.

>
>> 2. The NameSpaceHandler doesn't support property placeholder. It would be
>> great to define attributes such as port="${port}"
>> using the OSGi compendium service.
>>
>> 3. The NameSpaceHandler should support customized factory classes.
>
> The namespace handlers was written with Spring in mind, but if this
> support can be added without breaking compatibility then go for it.
>

New functionality should be back-compatible with the existing
NameSpaceHandler, I agree.


>> In addition, support of Interceptors for Commands would be of great benefit.
>> An interceptor would allow us to inspect and customized the Server easily.
>
> Sounds a lot like Ftplets, which should work from OSGi?
>

They look similar but have different functions. Fptlet will hook up a
specific command before
or after the execution. Interceptors will be sitting between the
FtpHandler and the command itself
wrapping the real command. A single interceptor can act on all the
commands. In addition,
we can chain interceptors and have something like:

ftphandler --> interceptor 1 --> interceptor 2 --> command



> /niklas
>

Reply via email to