pmdFormatter.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435
  1. "use strict";
  2. var __extends = (this && this.__extends) || function (d, b) {
  3. for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
  4. function __() { this.constructor = d; }
  5. d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
  6. };
  7. var abstractFormatter_1 = require("../language/formatter/abstractFormatter");
  8. var Formatter = (function (_super) {
  9. __extends(Formatter, _super);
  10. function Formatter() {
  11. _super.apply(this, arguments);
  12. }
  13. Formatter.prototype.format = function (failures) {
  14. var output = "<pmd version=\"tslint\">";
  15. for (var _i = 0, failures_1 = failures; _i < failures_1.length; _i++) {
  16. var failure = failures_1[_i];
  17. var failureString = failure.getFailure()
  18. .replace(/&/g, "&amp;")
  19. .replace(/</g, "&lt;")
  20. .replace(/>/g, "&gt;")
  21. .replace(/'/g, "&#39;")
  22. .replace(/"/g, "&quot;");
  23. var lineAndCharacter = failure.getStartPosition().getLineAndCharacter();
  24. output += "<file name=\"" + failure.getFileName();
  25. output += "\"><violation begincolumn=\"" + (lineAndCharacter.character + 1);
  26. output += "\" beginline=\"" + (lineAndCharacter.line + 1);
  27. output += "\" priority=\"1\"";
  28. output += " rule=\"" + failureString + "\"> </violation></file>";
  29. }
  30. output += "</pmd>";
  31. return output;
  32. };
  33. return Formatter;
  34. }(abstractFormatter_1.AbstractFormatter));
  35. exports.Formatter = Formatter;