コード例 #1
0
  /** @see org.squale.squalix.util.process.ProcessOutputHandler#processOutput(java.lang.String) */
  public void processOutput(String pOutputLine) {
    // On filtre une erreur connue "Can't create directory '/OUTILS/McCabe/current/repos'."
    // qui ne gêne en rien le bon déroulement de McCabe.
    if (mConfiguration != null && !mConfiguration.ignoreMsg(pOutputLine)) {
      // On ajoute le nom du fichier au message s'il le faut
      mConfiguration.addFileNameToMsg(pOutputLine, mCurrentComponent);
      // CAS ERREUR
      if (pOutputLine.startsWith("ERR")) {
        // On teste si le message d'erreur ne fait pas parti des messages à considérer comme warning
        if (mConfiguration.changeErrorMsgToWarning(pOutputLine)) {
          // On log un warning
          initError(pOutputLine, ErrorBO.CRITICITY_WARNING);
        } else {
          // Il s'agit d'une erreur
          initError(pOutputLine, ErrorBO.CRITICITY_FATAL);
          mStatus = FAILED;
        }
        // CAS WARNING
      } else if (pOutputLine.startsWith("WARN")) {
        initError(pOutputLine, ErrorBO.CRITICITY_WARNING);
      } else if (pOutputLine.matches(
          "cli: Processing " + (String) mData.getData(TaskData.VIEW_PATH) + ".*")) {
        // On récupère le nom du fichier en coupant la chaîne du début et le viewPath
        mCurrentComponent =
            pOutputLine.replaceFirst(
                "cli: Processing " + (String) mData.getData(TaskData.VIEW_PATH), "");
      }

      // On ne récupère pas les autres traces
    }
  }
コード例 #2
0
 /** @see org.squale.squalix.util.process.ProcessErrorHandler#processError(java.lang.String) */
 public void processError(String pErrorMessage) {
   // cette méthode n'est effectué que si le message n'est pas à ignorer
   if (!mConfiguration.ignoreMsg(pErrorMessage)) {
     LOGGER.error(McCabeMessages.getString("logs.error.tools_error") + pErrorMessage);
     // Certaines erreurs sonst connues, on va alors essayer de les mapper avec
     // un message plus explicite
     ErrorBO error = new ErrorBO();
     error.setInitialMessage(pErrorMessage);
     // On modifie le message en remplaçant par un message plus explicite si il est défini
     error.setMessage(mConfiguration.getReplacingMsg(pErrorMessage));
     // sinon on met un message générique
     if (pErrorMessage.equals(error.getMessage())) {
       error.setMessage(McCabeMessages.getString("error.processing"));
     }
     error.setLevel(ErrorBO.CRITICITY_FATAL);
     if (!mConfiguration.ignoreMsg(pErrorMessage)
         && !mConfiguration.changeErrorMsgToWarning(pErrorMessage)) {
       mErrors.add(error);
     }
     // Et on insère la chaîne dans le fichir de log des erreurs si le buffer a été crée
     if (mErrorWriter != null) {
       try {
         mErrorWriter.write(pErrorMessage + "\n");
       } catch (IOException e) {
         // On log juste l'erreur
         LOGGER.warn(e);
       }
     }
   }
 }