Hi Bernd,
i did such changes in the DNSRBLHandler .. Maybe you look there ( It
should be in the comment)..  I think we should use such method to get
better "api" for writing tests etc.. It also sems cleaner to me!

bye
Norman

Am Donnerstag, den 29.06.2006, 07:48 +0000 schrieb Bernd Fondermann
(JIRA):
>     [ 
> http://issues.apache.org/jira/browse/JAMES-494?page=comments#action_12418403 
> ] 
> 
> Bernd Fondermann commented on JAMES-494:
> ----------------------------------------
> 
> Anyone having any objections starting this?
> For me, the JNDI part  is a separate task so I would leave this out in the 
> first place.
> 
> > Refactor the service methods to inject services via setters
> > -----------------------------------------------------------
> >
> >          Key: JAMES-494
> >          URL: http://issues.apache.org/jira/browse/JAMES-494
> >      Project: James
> >         Type: Sub-task
> 
> >     Versions: 2.4.0
> >     Reporter: Stefano Bagnara
> >     Assignee: Bernd Fondermann
> >      Fix For: 2.4.0
> 
> >
> > Nothing worth more than an example:
> > Here is the current service method of the SMTPServer:
> > public void service( final ServiceManager manager ) throws ServiceException 
> > {
> >     super.service( manager );
> >     serviceManager = manager;
> >     mailetcontext = (MailetContext) 
> > manager.lookup("org.apache.mailet.MailetContext");
> >     mailServer = (MailServer) manager.lookup(MailServer.ROLE);
> >     users = (UsersRepository) manager.lookup(UsersRepository.ROLE);
> >     dnsServer = (DNSServer) manager.lookup(DNSServer.ROLE); 
> > }
> > We could change it to
> > public void service( final ServiceManager manager ) throws ServiceException 
> > {
> >     super.service( manager );
> >     serviceManager = manager;
> >     setMailetContext((MailetContext) 
> > manager.lookup("org.apache.mailet.MailetContext"));
> >     setMailServer((MailServer) manager.lookup(MailServer.ROLE));
> >     setUsersRepository((UsersRepository) 
> > manager.lookup(UsersRepository.ROLE));
> >     setDNSServer((DNSServer) manager.lookup(DNSServer.ROLE)); 
> > }
> > and add the above setters.
> > This way we can fill dependencies of SMTPServer without using the 
> > Serviceable interface and the ServiceManager component.
> > Later we'll move the whole service method and Serviceable interface to the 
> > specific Avalon extension of the "container-agnostic" SMTPServer.
> 

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil

Reply via email to