Package org.wikipediacleaner.api.check

Examples of org.wikipediacleaner.api.check.CheckErrorResult


        if (shouldReplace) {
          if (errors == null) {
            return true;
          }
          result = true;
          CheckErrorResult errorResult = createCheckErrorResult(
              analysis, ampersandIndex, tmpIndex + 1,
              htmlCharacter != null ? ErrorLevel.ERROR : ErrorLevel.WARNING);
          if (htmlCharacter != null) {
            errorResult.addReplacement("" + htmlCharacter.getValue(), true);
          } else {
            errorResult.addReplacement("" + (char) entityNumber, false);
          }
          errors.add(errorResult);
        }
      }
      ampersandIndex = contents.indexOf('&', ampersandIndex + 1);
View Full Code Here


            result = true;
            done = true;
            if (errors == null) {
              return true;
            }
            CheckErrorResult errorResult = createCheckErrorResult(
                analysis, currentIndex, currentIndex + 3);
            errorResult.addReplacement("{{");
            errors.add(errorResult);
            nextIndex = currentIndex + 3;
          }
        }

        // Check for parameters
        if (!done) {
          PageElementParameter parameter = analysis.isInParameter(currentIndex);
          if ((parameter != null) &&
              (parameter.getBeginIndex() == currentIndex)) {
            result = true;
            done = true;
            if (errors == null) {
              return true;
            }
            CheckErrorResult errorResult = createCheckErrorResult(
                analysis, parameter.getBeginIndex(), parameter.getEndIndex());
            if (parameter.getParameterCount() == 1) {
              String value = parameter.getParameterValue(0);
              if (value != null) {
                errorResult.addReplacement(value);
              }
            }
            errors.add(errorResult);
            nextIndex = parameter.getEndIndex();
          }
        }

        // Check for functions
        if (!done) {
          PageElementFunction function = analysis.isInFunction(currentIndex);
          if ((function != null) &&
              (function.getBeginIndex() == currentIndex)) {
            MagicWord magicWord = function.getMagicWord();
            String magicWordName = magicWord.getName();
            boolean isOk = false;
            if (MagicWord.DEFAULT_SORT.equals(magicWordName) ||
                MagicWord.FORMAT_NUM.equals(magicWordName) ||
                MagicWord.DISPLAY_TITLE.equals(magicWordName)) {
              isOk = true;
            }
            if (!isOk &&
                MagicWord.TAG.equals(magicWordName) &&
                (function.getParameterCount() > 0) &&
                (PageElementTag.TAG_WIKI_REF.equals(function.getParameterValue(0)))) {
              isOk = true;
            }
            if (!isOk) {
              result = true;
              done = true;
              if (errors == null) {
                return true;
              }
              CheckErrorResult errorResult = createCheckErrorResult(
                  analysis, function.getBeginIndex(), function.getEndIndex());
              if (MagicWord.PAGE_NAME.equals(magicWordName)) {
                errorResult.addReplacement(page.getTitle());
              }
              if (MagicWord.IF_EXPR.equals(magicWordName)) {
                for (int param = 1; param < function.getParameterCount(); param++) {
                  errorResult.addReplacement(function.getParameterValue(param));
                }
              }
              if ((analysis.isInTag(currentIndex, PageElementTag.TAG_WIKI_GALLERY) == null) &&
                  (analysis.isInTag(currentIndex, PageElementTag.TAG_WIKI_INCLUDEONLY) == null) &&
                  (analysis.isInTag(currentIndex, PageElementTag.TAG_WIKI_REF) == null) &&
                  (analysis.isInTag(currentIndex, PageElementTag.TAG_WIKI_TIMELINE) == null)) {
                errorResult.addReplacement(
                    "{{subst:" +
                    contents.substring(function.getBeginIndex() + 2, function.getEndIndex()));
              }
              errors.add(errorResult);
              nextIndex = function.getEndIndex();
View Full Code Here

                if (contents.charAt(tmpIndex) == ';') {
                  endIndex = tmpIndex + 1;
                }
              }

              CheckErrorResult errorResult = createCheckErrorResult(
                  analysis, ampersandIndex, endIndex,
                  errorLevel);
              errorResult.addReplacement("" + htmlCharacter.getValue());
              if (endIndex > colonIndex + 1) {
                errorResult.addReplacement(
                    "" + htmlCharacter.getValue() +
                    contents.substring(colonIndex + 1, endIndex));
              }
              if (!useSemiColon()) {
                errorResult.addReplacement(
                    "&amp;" + contents.substring(ampersandIndex + 1, endIndex));
              }
              errors.add(errorResult);
            }
          }
View Full Code Here

            }
            endLineIndex++;
          }

          // Create error
          CheckErrorResult errorResult = createCheckErrorResult(
              analysis, currentIndex, endLineIndex);
          errorResult.addReplacement(PageElementTitle.createTitle(
              equalsCount,
              contents.substring(currentIndex + equalsCount, endLineIndex),
              null));
          if (equalIndex > 0) {
            String firstPart = contents.substring(currentIndex + equalsCount, equalIndex);
            errorResult.addReplacement(PageElementTitle.createTitle(
                equalsCount, firstPart, null));
            while ((equalIndex < endLineIndex) && (contents.charAt(equalIndex) == '=')) {
              equalIndex++;
            }
            errorResult.addReplacement(
                PageElementTitle.createTitle(equalsCount, firstPart, null) + "\n" +
                contents.substring(equalIndex, endLineIndex));
          }
          errors.add(errorResult);
        }
View Full Code Here

      if ((text != null) && (text.startsWith(" "))) {
        if (errors == null) {
          return true;
        }
        result = true;
        CheckErrorResult errorResult = createCheckErrorResult(
            analysis,
            defaultSort.getBeginIndex(), defaultSort.getEndIndex());
        errorResult.addReplacement(
            PageElementFunction.createFunction(defaultSort.getFunctionName(), text),
            text.trim().length() > 0);
        errors.add(errorResult);
      }
    }
View Full Code Here

        if (breakFound) {
          if (errors == null) {
            return true;
          }
          result = true;
          CheckErrorResult errorResult = createCheckErrorResult(
              analysis, beginError, endError,
              (tagAfter ? ErrorLevel.WARNING : ErrorLevel.ERROR));
          if (!tagAfter) {
            errorResult.addReplacement("");
          }
          errors.add(errorResult);
        }
      }
    }
View Full Code Here

          if ((beginIndex > 0) && (contents.charAt(beginIndex - 1) == '[') &&
              (endIndex < contents.length()) && (contents.charAt(endIndex) == ']')) {
            beginIndex--;
            endIndex++;
          }
          CheckErrorResult errorResult = createCheckErrorResult(
              analysis, beginIndex, endIndex);
          if (link.hasSecondSquare() && (link.getLink().indexOf('?') < 0)) {
            Page articlePage = DataManager.getPage(analysis.getWikipedia(), article, null, null, null);
            boolean needColon = false;
            if (articlePage.getNamespace() != null) {
              int ns = articlePage.getNamespace().intValue();
              if (ns % 2 == 0) {
                if ((ns != Namespace.MAIN) &&
                    (ns != Namespace.USER) &&
                    (ns != Namespace.HELP) &&
                    (ns != Namespace.MEDIAWIKI) &&
                    (ns != Namespace.TEMPLATE) &&
                    (ns != Namespace.WIKIPEDIA)) {
                  needColon = true;
                }
              }
            }
            if (link.getText() != null) {
              errorResult.addReplacement(
                  PageElementInternalLink.createInternalLink(
                      (needColon ? ":" : "") + article, link.getText()),
                  true);
            } else {
              String question = GT._("What text should be displayed by the link?");
              AddTextActionProvider action = new AddTextActionProvider(
                  "[[" + (needColon ? ":" : "") + article + "|", "]]", null,
                  question, article, checker);
              errorResult.addPossibleAction(
                  GT._("Convert into an internal link"),
                  action);
            }
          }
          errors.add(errorResult);
View Full Code Here

    }
    if (errors == null) {
      return true;
    }
    for (PageElementTag tag : tags) {
      CheckErrorResult errorResult = createCheckErrorResult(
          analysis, tag.getBeginIndex(), tag.getEndIndex());
      errorResult.addReplacement(PageElementTag.createTag(
          PageElementTag.TAG_HTML_DEL, tag.isEndTag(), false));
      errorResult.addReplacement(PageElementTag.createTag(
          PageElementTag.TAG_HTML_S, tag.isEndTag(), tag.isFullTag()));
      errors.add(errorResult);
    }

    return true;
View Full Code Here

              if (errors == null) {
                return true;
              }
              result = true;
              tmpIndex++;
              CheckErrorResult errorResult = createCheckErrorResult(
                  analysis, currentIndex, tmpIndex);
              errorResult.addReplacement(
                  PageElementTag.createTag(PageElementTag.TAG_HTML_BR, false, false),
                  true);
              errors.add(errorResult);
              nextIndex = tmpIndex;
            }
          }
        }
      }

      currentIndex = nextIndex;
    }

    // Check for br tags with extra characters
    List<PageElementTag> tags = analysis.getTags(PageElementTag.TAG_HTML_BR);
    for (PageElementTag tag : tags) {

      // Check for extra characters before the br tag
      boolean extra = false;
      int beginIndex = tag.getBeginIndex();
      while ((beginIndex > 0) && (contents.charAt(beginIndex - 1) == '<')) {
        beginIndex--;
        extra = true;
      }

      // Check for extra characters after the br tag
      int endIndex = tag.getEndIndex();
      while ((endIndex < contents.length()) && (contents.charAt(endIndex) == '>')) {
        endIndex++;
        extra  = true;
      }

      if (extra) {
        if (errors == null) {
          return true;
        }
        result = true;
        CheckErrorResult errorResult = createCheckErrorResult(
            analysis, beginIndex, endIndex, ErrorLevel.WARNING);
        errorResult.addReplacement(
            PageElementTag.createTag(PageElementTag.TAG_HTML_BR, false, false),
            false);
        errors.add(errorResult);
      }
    }
View Full Code Here

                if (errors == null) {
                  return true;
                }
                result = true;

                CheckErrorResult errorResult = createCheckErrorResult(
                    analysis, beginIndex, tmpIndex);
                errors.add(errorResult);
              }
            }
            beginIndex = tmpIndex + 1;
View Full Code Here

TOP

Related Classes of org.wikipediacleaner.api.check.CheckErrorResult

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.