Получение параметров из eclipse rcp/e4 в Handler

У меня есть код для выполнения моего обработчика / команды, и он достигает здесь:

@Execute
public Object execute(Shell shell) {
    System.out.println("Executing login!");
    return null;
}

Однако я не могу найти службу впрыска, чтобы предоставить мне параметры, которые я передал в команде.

Я старался:

@Execute
public Object execute(ExecutionEvent event)

Но он даже не видит этот метод, и я подозреваю, что это потому, что это даже не класс e4.*. Мне известны Eclipse RCP 4 - параметры метода-обработчика, но он не сообщает мне, какой сервис являются параметрами команды, например:

ParameterizedCommand myCommand = commandService.createCommand("mycommand.login", credentials);
Object result = handlerService.executeHandler(myCommand);

Где мои значения из карты учетных данных?

1 ответ

Решение

Вы можете получить весь ParameterizedCommand вводится в обработчик с помощью:

@Execute
public void execute(ParameterizedCommand command)

Или вы можете получить отдельные параметры, используя их идентификаторы:

@Execute
public void execute(@Named("parameter id") String parameter)
Другие вопросы по тегам