Guys, One more conceptual question abt Merlin.
Say I have two components A and B. B is defined as a dependency in A. But B is not defined under a <component> tag in block.xml. How and when would B be loaded by the container and when would the container call its lifecycle methods. And Does Merlin CLI loads all the components defined under <component> at once. Thanks Vikas -----Original Message----- From: Olaf Bergner [mailto:[EMAIL PROTECTED] Sent: Wednesday, February 04, 2004 12:44 PM To: Avalon framework users Subject: RE: Service Implementation > -----Original Message----- > From: Vikas Phonsa [mailto:[EMAIL PROTECTED] > Sent: Wednesday, February 04, 2004 8:50 PM > > The Service Interface defines the contract so would just have the methods > that a client should see or know abt. Agreed. > But the implementation might need several other methods to do its internal > functions and also the implementation would implement the lifecycle > interface methods. That's life. > So is it perfectly fine according to the Avalon design principles to have > many other methods in the implementation besides the Service and lifecycle > methods ? Sure. I for one tend to break up my implementations into a number of rather small methods. Makes them more readable. > Or should the aim be to put the internal functionality of implementation > into the lifecycle methods as much as possible ? No. It might be helpful to think of your components each having two faces: 1) The face it presents to clients, i.e. its service interface. 2) The face it presents to the container, i.e. its lifecycle interface. But still there's (hopefully) much more to your components than just those two faces. Avalon doesn't try to put you in jail. It encourages you to think of clear cut services and helps you in fulfilling some basic needs (think lifecycle) your services have. Beyond that you are still free to implement your apps as you see fit. Hope this helps, Olaf --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]