I understand that constructor injection and final instance variables
are the preferred way to do dependency injection with Tapestry IoC.
This is clearly safest in terms of proper, thread-safe construction
and immutability.

Am I correct in assuming that good ol' build* methods on modules are
still supported, allowing setter injection to be done as well?  In
such a case, what measures does Tapestry IoC take to ensure that while
a service is being created lazily on thread A, thread B does not get a
partially constructed object (a la double checked locking)?  After
reading Brian Goetz's book, I am starting to wonder if that is even
possible without final instance variables or full synchronization on
the registry.

Ben

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to