On behalf of Tom Schindl and Kai Toedter I uploaded the Eclipse e4 tutorial slides.
Eclipse e4 Tutorial – EclipseCon 2010
View more presentations from LarsVogel.
On behalf of Tom Schindl and Kai Toedter I uploaded the Eclipse e4 tutorial slides.
In the slides I saw this piece of code:
@Inject
private void setSelection(@Optional @Named(IServiceConstants.SELECTION) Contact contact) {
//…
}
Is there a particular reason why you use @Named and constants defined in an interface instead of creating qualifier annotations?
@Selection would be shorter than @Named(IServiceConstants.SELECTION). And to quote Josh Bloch: “The constant interface pattern is a poor use of interfaces.”
@Max ESelectionService is available for direct injection. I think the approach has been chosen to allow to use service contacts without always having to create a separate annotation. I also believe this is not closed so if you would like to see certain qualifier annotations please suggest this on the e4 mailing list.