Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [e4-dev] dependency injection through (equinox) aspects?


There are two sides to it: (1) E4 SDK itself, and (2) plugins build on top of the E4 SDK.

(2): For the plugins build on top of the E4 SDK, the answer is simple: as E4 is intended to be [mostly] backwards compatible, and the AspectJ is available in 3.x, it will likely be available as an E4 plugin.

(1): For the SDK itself, I think it will be a question of how much the SDK will benefit from it.

So far the story for the dependency injection was centered on contexts, shaping as a combination of databinding (internal to the contexts tree) and method/field Java injection.

TopContext (font)                        <- font changes here
^
ChildContext                                 <- propagates into my current context
^
UserObject {
        setFont(Font );                        <- the changed font value is injected into the method
}

This story is in the early stages of design/prototyping. It looks promising, but we'll have to see how the propagation of changes scales up.

Going back to aspects, using them for dependency injection is a new idea to me. At a very quick glance, it has a good potential for large scale implementations, but makes it harder to understand how parts of the system link together.

At this stage I believe that E4 is very open to new ideas, so if you are interested in making some design/code prototypes you'll probably find some interested listeners in here.

Sincerely,
Oleg Besedin



Erdal Karaca <erdal.karaca.de@xxxxxxxxxxxxxx>
Sent by: e4-dev-bounces@xxxxxxxxxxx

01/22/2009 05:34 PM

Please respond to
E4 Project developer mailing list <e4-dev@xxxxxxxxxxx>

To
E4 Project developer mailing list <e4-dev@xxxxxxxxxxx>
cc
Subject
[e4-dev] dependency injection through (equinox) aspects?





Are there any plans/intentions to use the equinox aspects (aspectj's load-time weaving) for dependency injection?

To mention just a simple use case: one could use an appropriate aspect to enable splash handlers for the modeled workbench as this is not supported (yet?)..._______________________________________________
e4-dev mailing list
e4-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/e4-dev


Back to the top