Skip to content

Commit 4d9787d

Browse files
committed
Add checks for unconfigured parameters
1 parent dd1f4ea commit 4d9787d

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

src/main/java/com/airsaid/localization/config/SettingsComponent.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public SettingsComponent() {
6565
}
6666

6767
private void initTranslatorComponents() {
68-
translatorsComboBox.setRenderer(new SimpleListCellRenderer<AbstractTranslator>() {
68+
translatorsComboBox.setRenderer(new SimpleListCellRenderer<>() {
6969
@Override
7070
public void customize(@NotNull JList<? extends AbstractTranslator> list, AbstractTranslator value, int index, boolean selected, boolean hasFocus) {
7171
setText(value.getName());

src/main/java/com/airsaid/localization/config/SettingsConfigurable.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@
2222
import com.airsaid.localization.translate.services.TranslatorService;
2323
import com.intellij.openapi.diagnostic.Logger;
2424
import com.intellij.openapi.options.Configurable;
25+
import com.intellij.openapi.options.ConfigurationException;
26+
import com.intellij.openapi.util.text.StringUtil;
2527
import org.jetbrains.annotations.Nullable;
2628

2729
import javax.swing.*;
@@ -78,10 +80,19 @@ public boolean isModified() {
7880
}
7981

8082
@Override
81-
public void apply() {
83+
public void apply() throws ConfigurationException {
8284
SettingsState settingsState = SettingsState.getInstance();
8385
AbstractTranslator selectedTranslator = settingsComponent.getSelectedTranslator();
8486
LOG.info("apply selectedTranslator: " + selectedTranslator.getName());
87+
88+
// Verify that the required parameters are not configured
89+
if (selectedTranslator.isNeedAppId() && StringUtil.isEmpty(settingsComponent.getAppId())) {
90+
throw new ConfigurationException("APP ID not configured");
91+
}
92+
if (selectedTranslator.isNeedAppKey() && StringUtil.isEmpty(settingsComponent.getAppKey())) {
93+
throw new ConfigurationException("Security Key not configured");
94+
}
95+
8596
settingsState.setSelectedTranslator(selectedTranslator);
8697
if (selectedTranslator.isNeedAppId()) {
8798
settingsState.setAppId(selectedTranslator.getKey(), settingsComponent.getAppId());

0 commit comments

Comments
 (0)