Skip to content

Commit 60c7da7

Browse files
committed
* Add cluster guid in error log area when provision or update cluster failed
* Make error log area hideable in provision and update cluster dialog * Make error log area as console view
1 parent 03006af commit 60c7da7

File tree

7 files changed

+370
-297
lines changed

7 files changed

+370
-297
lines changed

PluginsAndFeatures/azure-toolkit-for-intellij/src/com/microsoft/azure/sparkserverless/serverexplore/ui/SparkServerlessClusterUpdateDialog.java

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,9 @@
2222

2323
package com.microsoft.azure.sparkserverless.serverexplore.ui;
2424

25+
import com.intellij.execution.ui.ConsoleViewContentType;
2526
import com.intellij.openapi.project.Project;
27+
import com.microsoft.azure.hdinsight.common.logger.ILogger;
2628
import com.microsoft.azure.hdinsight.sdk.common.azure.serverless.AzureSparkServerlessCluster;
2729
import com.microsoft.azure.sparkserverless.serverexplore.SparkServerlessClusterProvisionSettingsModel;
2830
import com.microsoft.azure.sparkserverless.serverexplore.SparkServerlessClusterUpdateCtrlProvider;
@@ -34,8 +36,11 @@
3436

3537
import java.awt.event.WindowAdapter;
3638
import java.awt.event.WindowEvent;
39+
import java.time.LocalDateTime;
3740

38-
public class SparkServerlessClusterUpdateDialog extends SparkServerlessProvisionDialog {
41+
public class SparkServerlessClusterUpdateDialog extends SparkServerlessProvisionDialog implements ILogger {
42+
@NotNull
43+
private final AzureSparkServerlessCluster cluster;
3944

4045
private void disableUneditableFields() {
4146
clusterNameField.setEditable(false);
@@ -51,29 +56,25 @@ private void disableUneditableFields() {
5156
private SparkServerlessClusterUpdateCtrlProvider ctrlProvider;
5257
public SparkServerlessClusterUpdateDialog(@NotNull SparkServerlessClusterNode clusterNode,
5358
@NotNull AzureSparkServerlessCluster cluster) {
54-
5559
super((SparkServerlessADLAccountNode) clusterNode.getParent(), cluster.getAccount());
60+
this.cluster = cluster;
5661
this.setTitle("Update Cluster");
5762
disableUneditableFields();
58-
getOKAction().setEnabled(false);
5963
ctrlProvider = new SparkServerlessClusterUpdateCtrlProvider(
6064
this, new IdeaSchedulers((Project)clusterNode.getProject()), cluster);
6165
this.getWindow().addWindowListener(new WindowAdapter() {
6266
@Override
6367
public void windowOpened(WindowEvent e) {
6468
ctrlProvider.initialize()
65-
.subscribe(complete -> {}, err -> {
66-
log().warn(String.format("Can't get the cluster %s details: %s", cluster.getName(), err));
67-
errorMessageField.setText("Error Loading cluster details");
68-
});
69+
.subscribe(complete -> {}, err -> log().warn("Error initialize update dialog. " + err.toString()));
6970
super.windowOpened(e);
7071
}
7172
});
7273
}
7374

7475

7576
@Override
76-
protected void setClusterNameSets() {
77+
protected void enableClusterNameUniquenessCheck() {
7778
// To avoid cluster already exists tooltips
7879
clusterNameField.setNotAllowedValues(null);
7980

@@ -112,6 +113,13 @@ public void setData(@NotNull SparkServerlessClusterProvisionSettingsModel data)
112113
workerMemoryField.setText(String.valueOf(data.getWorkerMemory()));
113114
workerNumberOfContainersField.setText(String.valueOf(data.getWorkerNumberOfContainers()));
114115

115-
errorMessageField.setText(data.getErrorMessage());
116+
if (!StringUtils.isEmpty(data.getErrorMessage())) {
117+
if (!errorMessageDecorator.isExpanded()) {
118+
errorMessageDecorator.setOn(true);
119+
}
120+
121+
printLogLine(ConsoleViewContentType.ERROR_OUTPUT, data.getErrorMessage());
122+
}
123+
printLogLine(ConsoleViewContentType.NORMAL_OUTPUT, "Cluster guid: " + cluster.getGuid());
116124
}
117125
}

0 commit comments

Comments
 (0)