in src/main/java/org/apache/openwhisk/intellij/explorer/dialog/trigger/ui/TriggerManagerDialogForm.java [73:150]
public TriggerManagerDialogForm(Project project, WhiskAuth auth, ExecutableWhiskTrigger trigger, List<WhiskActionMetaData> actions) {
this.project = project;
this.auth = auth;
this.cachedTrigger = trigger;
this.whiskTriggerService = WhiskTriggerService.getInstance();
this.whiskRuleService = WhiskRuleService.getInstance();
triggerNameJLabel.setText(trigger.getName());
try {
defaultParameterJTextArea.setText(JsonParserUtils.writeParameterToJson(trigger.getParameters()));
} catch (JsonProcessingException e) {
LOG.error("Failed to parse json: " + trigger.getName(), e);
}
selectActionJComboBox.setModel(new ComboBoxModel() {
private WhiskActionMetaData selected;
@Override
public void setSelectedItem(Object anItem) {
selected = (WhiskActionMetaData) anItem;
}
@Override
public Object getSelectedItem() {
return selected;
}
@Override
public int getSize() {
return actions.size();
}
@Override
public Object getElementAt(int index) {
return actions.get(index);
}
@Override
public void addListDataListener(ListDataListener l) {
// nothing to do
}
@Override
public void removeListDataListener(ListDataListener l) {
// nothing to do
}
});
ruleNameJTextField.setText(DEFAULT_RULE_TEXTAREA_MSG);
String namespace = trigger.getNamespace();
for (Map.Entry<String, SimplifiedWhiskRule> set : trigger.getRules().entrySet()) {
String ruleName = set.getKey().replace(namespace + "/", "");
String actionName = set.getValue().getAction().getPkgActionName();
addLinkedAction(actionName, ruleName);
}
addJButton.setIcon(Add);
addJButton.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
if (selectActionJComboBox.getSelectedItem() == null) {
return;
}
String ruleName = getRuleName(ruleNameJTextField.getText());
if (existRule(ruleName)) {
NOTIFIER.notify(project, "The " + ruleName + " already exist", NotificationType.WARNING);
return;
}
WhiskActionMetaData action = (WhiskActionMetaData) selectActionJComboBox.getSelectedItem();
String actionName = action.getWhiskPackage().map(pkg -> pkg + "/" + action.getName()).orElse(action.getName());
addLinkedAction(actionName, ruleName);
}
});
}