title: Eclipse RCP 4 - Handler method parameters
body: <p>I'm currently taking a look to the new Eclipse RCP framework and have a questions about handlers.
  In RCP 3.x a handler class needed to implement an interface, so the methods where given. In RCP 4 the handler class doesn't need to implement an interface. Instead you annotate the methods. E.g. if you have an <code>ExitHandler</code> as in <a href="http://www.vogella.com/articles/EclipseRCP/article.html#uicomponents_close" rel="nofollow">Vogellas Tutorial</a> you have an <code>@Execute</code> annotation. As you can see, there's an <code>IWorkbench</code> parameter passed.</p>
  
  <pre><code>package com.example.e4.rcp.todo.handler;
  
  import org.eclipse.e4.core.di.annotations.Execute;
  import org.eclipse.e4.ui.workbench.IWorkbench;
  
  public class ExitHandler {
    @Execute
    public void execute(IWorkbench workbench) {
      workbench.close();
    }
  } 
  </code></pre>
  
  <p>My question now is: How do I know which parameters are passed when using certain annotations? How do I know in this certain case that I get an <code>IWorkbench</code> object and not a Window object or something? In fact I can annotate a method without a parameter and it will still be executed.</p>
  
  <p>Is there documentation somewhere? The Eclipse e4 Tools don't seem to support me there either...</p>