Skip to content

Commit 5debe87

Browse files
committed
Fix the Spark AdvConf dialog cancel button issue.
Signed-off-by: Wei Zhang <[email protected]>
1 parent 5577e95 commit 5debe87

File tree

2 files changed

+19
-9
lines changed

2 files changed

+19
-9
lines changed

PluginsAndFeatures/azure-toolkit-for-intellij/src/com/microsoft/azure/hdinsight/spark/ui/SparkSubmissionAdvancedConfigDialog.java

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@
3333
import com.intellij.ui.InplaceButton;
3434
import com.intellij.util.PathUtil;
3535
import com.intellij.util.ui.JBUI;
36-
import com.jcraft.jsch.JSchException;
3736
import com.microsoft.azure.hdinsight.common.CallBack;
3837
import com.microsoft.azure.hdinsight.common.ClusterManagerEx;
3938
import com.microsoft.azure.hdinsight.common.Docs;
@@ -42,7 +41,6 @@
4241
import com.microsoft.azure.hdinsight.sdk.common.HDIException;
4342
import com.microsoft.azure.hdinsight.spark.common.SparkBatchDebugSession;
4443
import com.microsoft.azure.hdinsight.spark.common.SparkSubmitAdvancedConfigModel;
45-
import com.microsoft.azure.hdinsight.spark.run.SparkBatchJobRemoteDebugProcess;
4644
import com.microsoft.azuretools.utils.Pair;
4745
import org.jetbrains.annotations.NotNull;
4846
import rx.Subscription;
@@ -52,6 +50,8 @@
5250
import javax.swing.event.DocumentEvent;
5351
import javax.swing.event.DocumentListener;
5452
import java.awt.*;
53+
import java.awt.event.WindowAdapter;
54+
import java.awt.event.WindowEvent;
5555
import java.io.File;
5656
import java.util.Locale;
5757
import java.util.Optional;
@@ -68,7 +68,7 @@
6868
public class SparkSubmissionAdvancedConfigDialog extends JDialog
6969
implements SettableControl<SparkSubmitAdvancedConfigModel> {
7070
SparkSubmissionAdvancedConfigDialog() {
71-
this.advancedConfigModel = new SparkSubmitAdvancedConfigModel();
71+
this.initialModel = new SparkSubmitAdvancedConfigModel();
7272

7373
// FIXME!!! Since the Intellij has no locale setting, just set en-us here.
7474
this.helpUrl = new Docs(Locale.US).getDocUrlByTopic(Docs.TOPIC_CONNECT_HADOOP_LINUX_USING_SSH);
@@ -119,11 +119,11 @@ protected void textChanged(DocumentEvent ev) {
119119
pack();
120120
}
121121

122-
public SparkSubmitAdvancedConfigModel getAdvancedConfigModel() {
123-
return advancedConfigModel;
122+
private SparkSubmitAdvancedConfigModel getInitialModel() {
123+
return initialModel;
124124
}
125125

126-
private SparkSubmitAdvancedConfigModel advancedConfigModel;
126+
private SparkSubmitAdvancedConfigModel initialModel;
127127
private String helpUrl;
128128
private Boolean doesAuthAutoVerify = false;
129129

@@ -429,8 +429,6 @@ private Subscription registerAsyncSshAuthCheck(PublishSubject<String> checkEvent
429429
}
430430

431431
private void onOk() {
432-
this.advancedConfigModel = saveParameters();
433-
434432
if (updateCallBack != null) {
435433
updateCallBack.run();
436434
}
@@ -439,6 +437,9 @@ private void onOk() {
439437
}
440438

441439
private void onCancel() {
440+
// Restore to the initial state
441+
setData(getInitialModel());
442+
442443
dispose();
443444
}
444445

@@ -452,6 +453,16 @@ public void addCallbackOnOk(CallBack cb) {
452453
this.updateCallBack = cb;
453454
}
454455

456+
@Override
457+
public void setVisible(boolean isVisible) {
458+
if (isVisible) {
459+
// Save the initial state
460+
getData(getInitialModel());
461+
}
462+
463+
super.setVisible(isVisible);
464+
}
465+
455466
@Override
456467
public void dispose() {
457468
getSshCheckSubscription().ifPresent(Subscription::unsubscribe);

PluginsAndFeatures/azure-toolkit-for-intellij/src/com/microsoft/azure/hdinsight/spark/ui/SparkSubmissionContentPanelConfigurable.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,6 @@ private void createUIComponents() {
9999

100100
advConfDialog.setAuthenticationAutoVerify(submitModel.getSelectedClusterDetail().map(IClusterDetail::getName)
101101
.orElse(null));
102-
advConfDialog.setData(submitModel.getAdvancedConfigModel());
103102
advConfDialog.setModal(true);
104103
advConfDialog.setVisible(true);
105104
});

0 commit comments

Comments
 (0)