On Thu, 2010-01-07 at 08:37 +0000, Stephen Connolly wrote:
> > I realized that the prime subject of contention is the injected
> > resources - maybe ONLY that. So "scheduling" attached to phases or
> > plugins is really ultimately not the prime target.  When thinking of
> > Dan's Antrun plugin requirement of
> > ${maven.dependency.org.apache.maven.antrunbug.provider.jar.path} I
> > realized that if this were Spring/Guice; these problems would be solved
> > by giving you a dynamic proxy instead of the real dependency. This proxy
> > could/would know about the availability of the actual resource. If the
> > resource isn't available yet it'd wait for it to become available before
> > handing it off to the user. Spring handles web "Session" scope by
> > injecting a singleton dynamic proxy into the client. Upon invocation,
> > this object decides what the REAL target is and forwards the request
> > there. Along the same lines it's at least theoretically possible that
> > you could inject a proxy that potentially waits until the actual
> > resource is available; effectively letting the injected project
> > resources control the scheduling. Doesn't work well with injected
> > Strings, though ;)
> >
> 
> but if you have the dynamic proxy wait before injecting!
> 
> I haven't looked at the m3 core codebase, but we should only finalize
> the mojo immediately before executing it, therefore we should be able
> to block until all it's requirements are in the appropriate state...
> should not matter if they are strings
> 

Oooo. I can practically hear the hudson alarm bells from the m3
integration test build chiming already ;) 

If you're right, the real essence of the problem is capturing the
creation of the injectable state. If I was at a pub drinking (lots of)
beer, I would probably suggest that you could invert the whole process
and actually attach the creation of the state to the "fact" that someone
is requesting it. This would be after a large number of beers.

Cheers !

Kristian







---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org

Reply via email to