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 10057x 10057x 10057x 10057x 29991x 29991x 29991x 29991x 29991x 29991x 10057x 10057x 2x 2x 10057x 10057x 9555x 9555x 10057x 10057x 234x 234x 10057x 10057x 234x 234x 10057x 10057x 300x 300x 300x 233x 233x 67x 300x 19x 17x 17x 300x 46x 46x 4x 300x 2x 2x 2x 2x 2x 2x 300x 10057x | 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 []; } } } |