Skip to content

Commit

Permalink
* Add cluster guid in error log area when provision or update cluster…
Browse files Browse the repository at this point in the history
… failed

* Make error log area hideable in provision and update cluster dialog
* Make error log area as console view
  • Loading branch information
t-rufang committed Aug 28, 2018
1 parent 03006af commit 60c7da7
Show file tree
Hide file tree
Showing 7 changed files with 370 additions and 297 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,9 @@

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

import com.intellij.execution.ui.ConsoleViewContentType;
import com.intellij.openapi.project.Project;
import com.microsoft.azure.hdinsight.common.logger.ILogger;
import com.microsoft.azure.hdinsight.sdk.common.azure.serverless.AzureSparkServerlessCluster;
import com.microsoft.azure.sparkserverless.serverexplore.SparkServerlessClusterProvisionSettingsModel;
import com.microsoft.azure.sparkserverless.serverexplore.SparkServerlessClusterUpdateCtrlProvider;
Expand All @@ -34,8 +36,11 @@

import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.time.LocalDateTime;

public class SparkServerlessClusterUpdateDialog extends SparkServerlessProvisionDialog {
public class SparkServerlessClusterUpdateDialog extends SparkServerlessProvisionDialog implements ILogger {
@NotNull
private final AzureSparkServerlessCluster cluster;

private void disableUneditableFields() {
clusterNameField.setEditable(false);
Expand All @@ -51,29 +56,25 @@ private void disableUneditableFields() {
private SparkServerlessClusterUpdateCtrlProvider ctrlProvider;
public SparkServerlessClusterUpdateDialog(@NotNull SparkServerlessClusterNode clusterNode,
@NotNull AzureSparkServerlessCluster cluster) {

super((SparkServerlessADLAccountNode) clusterNode.getParent(), cluster.getAccount());
this.cluster = cluster;
this.setTitle("Update Cluster");
disableUneditableFields();
getOKAction().setEnabled(false);
ctrlProvider = new SparkServerlessClusterUpdateCtrlProvider(
this, new IdeaSchedulers((Project)clusterNode.getProject()), cluster);
this.getWindow().addWindowListener(new WindowAdapter() {
@Override
public void windowOpened(WindowEvent e) {
ctrlProvider.initialize()
.subscribe(complete -> {}, err -> {
log().warn(String.format("Can't get the cluster %s details: %s", cluster.getName(), err));
errorMessageField.setText("Error Loading cluster details");
});
.subscribe(complete -> {}, err -> log().warn("Error initialize update dialog. " + err.toString()));
super.windowOpened(e);
}
});
}


@Override
protected void setClusterNameSets() {
protected void enableClusterNameUniquenessCheck() {
// To avoid cluster already exists tooltips
clusterNameField.setNotAllowedValues(null);

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

errorMessageField.setText(data.getErrorMessage());
if (!StringUtils.isEmpty(data.getErrorMessage())) {
if (!errorMessageDecorator.isExpanded()) {
errorMessageDecorator.setOn(true);
}

printLogLine(ConsoleViewContentType.ERROR_OUTPUT, data.getErrorMessage());
}
printLogLine(ConsoleViewContentType.NORMAL_OUTPUT, "Cluster guid: " + cluster.getGuid());
}
}
Loading

0 comments on commit 60c7da7

Please sign in to comment.