void (@NotNull ProgressIndicator indicator) { final PythonSdkFlavor flavor = data.getFlavor(); if (flavor != null) { ProcessOutput processOutput; try { try { String[] command = {data.getInterpreterPath(), flavor.getVersionOption()}; processOutput = PyRemoteProcessStarterManagerUtil.getManager(data).executeRemoteProcess(myProject, command, null, data, new PyRemotePathMapper()); if (processOutput.getExitCode() == 0) { final String version = flavor.getVersionStringFromOutput(processOutput); if (version != null || nullForUnparsableVersion) { result.set(version); return; } } exception.set(createException(processOutput, command)); } catch (Exception e) { throw RemoteSdkException.cantObtainRemoteCredentials(e); } } catch (RemoteSdkException e) { exception.set(e); } } }