Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 11060x 11060x 11060x 11060x 32981x 32981x 32981x 32981x 32981x 32981x 11060x 11060x 2x 2x 11060x 11060x 10504x 10504x 11060x 11060x 261x 261x 11060x 11060x 261x 261x 11060x 11060x 331x 331x 331x 259x 259x 72x 331x 20x 18x 18x 331x 50x 50x 4x 331x 2x 2x 2x 2x 2x 2x 331x 11060x | import {Issue} from "../issue"; import {BasicRuleConfig} from "./_basic_rule_config"; import {IObject} from "../objects/_iobject"; import {IRule} from "./_irule"; import * as Objects from "../objects"; import {Position} from "../position"; import {IRegistry} from "../_iregistry"; export class ReleaseIdocConf extends BasicRuleConfig { } export class ReleaseIdoc implements IRule { private conf = new ReleaseIdocConf(); public getMetadata() { return { key: "release_idoc", title: "Release iDoc", shortDescription: `Checks idoc types and segments are set to status released`, }; } private getMessage(): string { return "Idoc type/segement status must be set to released"; } public getConfig() { return this.conf; } public setConfig(conf: ReleaseIdocConf) { this.conf = conf; } public initialize(_reg: IRegistry) { return this; } public run(obj: IObject): Issue[] { const file = obj.getXMLFile(); if (file === undefined) { return []; } if (obj instanceof Objects.Table) { if (file.getRaw().includes("<SEGMENTDEFINITION>") === false) { return []; } } else if (!(obj instanceof Objects.Idoc)) { return []; } if (file.getRaw().includes("<CLOSED>X</CLOSED>") === false) { const position = new Position(1, 1); const issue = Issue.atPosition(obj.getFiles()[0], position, this.getMessage(), this.getMetadata().key, this.conf.severity); return [issue]; } else { return []; } } } |