@Override
        protected void handleCompileMessage(UUID sessionId,
                                            CmdlineRemoteProto.Message.BuilderMessage.CompileMessage message) {
          final CmdlineRemoteProto.Message.BuilderMessage.CompileMessage.Kind kind = message.getKind();
          //System.out.println(compilerMessage.getText());
          //noinspection HardCodedStringLiteral
          final String messageText = message.getText();
          if (kind == CmdlineRemoteProto.Message.BuilderMessage.CompileMessage.Kind.PROGRESS) {
            final ProgressIndicator indicator = compileContext.getProgressIndicator();
            indicator.setText(messageText);
            if (message.hasDone()) {
              indicator.setFraction(message.getDone());
            }
          }
          else {
            final CompilerMessageCategory category = convertToCategory(kind, CompilerMessageCategory.INFORMATION);

            String sourceFilePath = message.hasSourceFilePath() ? message.getSourceFilePath() : null;
            if (sourceFilePath != null) {
              sourceFilePath = FileUtil.toSystemIndependentName(sourceFilePath);
            }
            final long line = message.hasLine() ? message.getLine() : -1;
            final long column = message.hasColumn() ? message.getColumn() : -1;
            final String srcUrl =
              sourceFilePath != null ? VirtualFileManager.constructUrl(LocalFileSystem.PROTOCOL, sourceFilePath) : null;
            compileContext
              .addMessage(category, messageText, srcUrl, (int)line, (int)column, null, message.getModuleNamesList());
            if (compileContext.shouldUpdateProblemsView() &&
              kind == CmdlineRemoteProto.Message.BuilderMessage.CompileMessage.Kind.JPS_INFO) {
              // treat JPS_INFO messages in a special way: add them as info messages to the problems view
              final Project project = compileContext.getProject();
              ProblemsView.getInstance(project).addMessage(
                new CompilerMessageImpl(project, category, messageText),
                compileContext.getSessionId()
              );
            }
          }
        }
@Override
        protected void handleCompileMessage(UUID sessionId,
                                            CmdlineRemoteProto.Message.BuilderMessage.CompileMessage message)