It's possible to deploy FTP Server post 1.0.8 in an OSGi container.
However creating a different User Manager implementation is not
without problems.

Consider that the USER class checks to see if the user logging in is
permitted to do so concurrently.  This is done by creating an
instance of
org.apache.ftpserver.usermanager.impl.ConcurrentLoginRequest and
passing that to the authorize(AuthorizationRequest) method for the
User object.

If that User implementation is not one that's included with FTP
Server, then the new implementation has no way of handling the
request in a reasonable manner because the package
org.apache.ftpserver.usermanager.impl is not exported in the OSGi
container.

Is it intended that such functionality is "private", or should there
be suitable interfaces created for the *Request classes, and
potentially move the Authority implementations also, so that they
may be re-used?  In which case it'd be nice to expose the BaseUser
class as well.

I'm happy to make some changes and submit patches, but don't want to
go off in a different direction than that intended by the team.

Reply via email to