? validationResult.getMessage() + " " + getCloudSdkDownloadMessage() : validationResult.getMessage(); } else { message = validationResult.getMessage();
@Override public void notifyIfVersionOutOfDate() { CloudSdkValidator sdkValidator = CloudSdkValidator.getInstance(); if (sdkValidator .validateCloudSdk() .contains(CloudSdkValidationResult.CLOUD_SDK_NOT_MINIMUM_VERSION)) { String message = "<p>" + CloudSdkValidationResult.CLOUD_SDK_NOT_MINIMUM_VERSION.getMessage() + "</p>"; showNotification( CloudSdkMessageBundle.message("appengine.cloudsdk.version.support.title"), message); } }
private void checkCommonConfig(AppEngineDeployable deployable) throws RuntimeConfigurationError { // do not check SDK if it supports dynamic install - the deployment runner will block itself // until installation is done. CloudSdkService cloudSdkService = CloudSdkService.getInstance(); SdkStatus sdkStatus = cloudSdkService.getStatus(); if (sdkStatus != SdkStatus.READY && !cloudSdkService.isInstallSupported()) { Set<CloudSdkValidationResult> sdkValidationResult = CloudSdkValidator.getInstance().validateCloudSdk(); if (!sdkValidationResult.isEmpty()) { CloudSdkValidationResult result = Iterables.getFirst(sdkValidationResult, null); throw new RuntimeConfigurationError( AppEngineMessageBundle.message( "appengine.flex.config.server.error", result.getMessage())); } } check( deployable instanceof UserSpecifiedPathDeploymentSource || deployable.isValid(), "appengine.config.deployment.source.error"); check( StringUtils.isNotBlank(cloudProjectName), "appengine.flex.config.project.missing.message"); }
@Test public void testCheckSdk_unsupportedSdk() { setValidateCloudSdkResponse(CloudSdkValidationResult.CLOUD_SDK_NOT_MINIMUM_VERSION); when(cloudSdkValidator.isValidCloudSdk("/non/empty/path")).thenReturn(false); panel.checkSdk("/non/empty/path"); verify(panel, times(1)) .showWarning(eq(CloudSdkValidationResult.CLOUD_SDK_NOT_MINIMUM_VERSION.getMessage())); verify(panel, times(0)).hideWarning(); }
@Test public void testCheckSdk_multipleValidationResults() { setValidateCloudSdkResponse( CloudSdkValidationResult.CLOUD_SDK_NOT_MINIMUM_VERSION, CloudSdkValidationResult.CLOUD_SDK_NOT_FOUND); when(cloudSdkValidator.isValidCloudSdk("/non/empty/path")).thenReturn(false); String expectedMessage = INVALID_SDK_DIR_WARNING + "<p>" + CloudSdkValidationResult.CLOUD_SDK_NOT_MINIMUM_VERSION.getMessage() + "</p>"; panel.checkSdk("/non/empty/path"); verify(panel, times(1)).showWarning(eq(expectedMessage)); verify(panel, times(0)).hideWarning(); }
@Override public void notifyIfVersionParseError() { CloudSdkValidator sdkValidator = CloudSdkValidator.getInstance(); try { CloudSdk cloudSdk = sdkValidator.buildCloudSdk(); // Try to get the version; if fails with exception, then notify the user. cloudSdk.getVersion(); } catch (CloudSdkNotFoundException ex) { // Cloud SDK not found. Don't notify. } catch (CloudSdkVersionFileException ex) { String message = "<p>" + CloudSdkValidationResult.CLOUD_SDK_VERSION_FILE_ERROR.getMessage() + "</p>"; showNotification( CloudSdkMessageBundle.message("appengine.cloudsdk.version.file.error.title"), message); UsageTrackerService.getInstance() .trackEvent(GctTracking.SDK_VERSION_PARSE_ERROR) .addMetadata(GctTracking.METADATA_LABEL_KEY, ex.getMessage()) .ping(); } }