From 9ee221012ba7d2caccc4986409527573c8388c34 Mon Sep 17 00:00:00 2001 From: Gordon Smith Date: Fri, 5 Apr 2024 08:18:33 +0100 Subject: [PATCH] feat: Bump WsWorkunits services Signed-off-by: Gordon Smith --- package-lock.json | 143 +- packages/comms/.vscode/launch.json | 16 +- packages/comms/package.json | 7 +- packages/comms/src/__tests__/workunit.ts | 2 +- packages/comms/src/ecl/dfuWorkunit.ts | 9 +- packages/comms/src/ecl/graph.ts | 8 +- packages/comms/src/ecl/query.ts | 33 +- packages/comms/src/ecl/result.ts | 53 +- packages/comms/src/ecl/scope.ts | 19 +- packages/comms/src/ecl/sourceFile.ts | 10 +- packages/comms/src/ecl/timer.ts | 10 +- packages/comms/src/ecl/workunit.ts | 174 +- packages/comms/src/services/wsWorkunits.ts | 2702 +------------- .../wsdl/WsWorkunits/v1.97/WsWorkunits.ts | 3134 ++++++++++++++++ .../wsdl/WsWorkunits/v1.99/WsWorkunits.ts | 3162 ++++++++++++++++ .../wsdl/WsWorkunits/v2/WsWorkunits.ts | 3165 +++++++++++++++++ packages/comms/utils/index.ts | 99 +- packages/eclwatch/src/WUScopeController.ts | 12 +- packages/eclwatch/src/WUTimeline.ts | 8 +- packages/util/src/object.ts | 7 +- tests/test-comms/src/ecl/dfuWorkunit.spec.ts | 60 +- tests/test-comms/src/ecl/workunit.spec.ts | 2 +- .../src/services/wsWorkunits.spec.ts | 6 +- 23 files changed, 9896 insertions(+), 2945 deletions(-) create mode 100644 packages/comms/src/services/wsdl/WsWorkunits/v1.97/WsWorkunits.ts create mode 100644 packages/comms/src/services/wsdl/WsWorkunits/v1.99/WsWorkunits.ts create mode 100644 packages/comms/src/services/wsdl/WsWorkunits/v2/WsWorkunits.ts diff --git a/package-lock.json b/package-lock.json index 1d12a4a587..a9f4b40871 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11822,21 +11822,6 @@ "node": ">=12.20.0" } }, - "node_modules/formidable": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", - "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", - "dev": true, - "dependencies": { - "dezalgo": "^1.0.4", - "hexoid": "^1.0.0", - "once": "^1.4.0", - "qs": "^6.11.0" - }, - "funding": { - "url": "https://ko-fi.com/tunnckoCore/commissions" - } - }, "node_modules/fp-and-or": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/fp-and-or/-/fp-and-or-0.1.4.tgz", @@ -21045,39 +21030,6 @@ "npm": ">= 3.0.0" } }, - "node_modules/soap": { - "version": "0.45.0", - "resolved": "https://registry.npmjs.org/soap/-/soap-0.45.0.tgz", - "integrity": "sha512-t2wgZaWQCL8htPxpHzwW1Sw/Qy22Ls6my1X9ajMMXcmNYLlO4ogk10T0A+J8p4/6xHUQthfe2J3Ys1e9/sqS5w==", - "dev": true, - "dependencies": { - "axios-ntlm": "^1.2.0", - "debug": "^4.3.2", - "formidable": "^2.0.1", - "get-stream": "^6.0.1", - "lodash": "^4.17.21", - "sax": ">=0.6", - "strip-bom": "^3.0.0", - "uuid": "^8.3.2", - "whatwg-mimetype": "3.0.0", - "xml-crypto": "^2.1.3" - }, - "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "axios": ">=0.21.1" - } - }, - "node_modules/soap/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/socks": { "version": "2.7.3", "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.3.tgz", @@ -23784,28 +23736,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/xml-crypto": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-2.1.5.tgz", - "integrity": "sha512-xOSJmGFm+BTXmaPYk8pPV3duKo6hJuZ5niN4uMzoNcTlwYs0jAu/N3qY+ud9MhE4N7eMRuC1ayC7Yhmb7MmAWg==", - "dev": true, - "dependencies": { - "@xmldom/xmldom": "^0.7.9", - "xpath": "0.0.32" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/xml-crypto/node_modules/@xmldom/xmldom": { - "version": "0.7.13", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.13.tgz", - "integrity": "sha512-lm2GW5PkosIzccsaZIz7tp8cPADSIlIHWDFTR1N0SzfinhhYgeIQjFMz4rYzanCScr3DqQLeomUDArp6MWKm+g==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, "node_modules/xmlhttprequest": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", @@ -24219,18 +24149,76 @@ "@types/xmldom": "0.1.34", "d3-array": "^1", "d3-time-format": "^2", - "soap": "0.45.0", + "soap": "1.0.0", "tslib": "2.6.2", "typescript-formatter": "^7.2.2", "whatwg-fetch": "3.6.20" } }, + "packages/comms/node_modules/axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "dev": true, + "peer": true, + "dependencies": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, "packages/comms/node_modules/d3-array": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.4.tgz", "integrity": "sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==", "dev": true }, + "packages/comms/node_modules/formidable": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-3.5.1.tgz", + "integrity": "sha512-WJWKelbRHN41m5dumb0/k8TeAx7Id/y3a+Z7QfhxP/htI9Js5zYaEDtG8uMgG0vM0lOlqnmjE99/kfpOYi/0Og==", + "dev": true, + "dependencies": { + "dezalgo": "^1.0.4", + "hexoid": "^1.0.0", + "once": "^1.4.0" + }, + "funding": { + "url": "https://ko-fi.com/tunnckoCore/commissions" + } + }, + "packages/comms/node_modules/soap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/soap/-/soap-1.0.0.tgz", + "integrity": "sha512-GB5GuKjWFtAPP0IaM4tKUvdF4dFlaz4iujLPg0DsCy9qAAgm5/g+SI+P9e6igWWwXZ74CC5Uo0VEEz8lte0CJA==", + "dev": true, + "dependencies": { + "axios-ntlm": "^1.2.0", + "debug": "^4.3.2", + "formidable": "^3.2.4", + "get-stream": "^6.0.1", + "lodash": "^4.17.21", + "sax": ">=0.6", + "strip-bom": "^3.0.0", + "uuid": "^8.3.2", + "whatwg-mimetype": "3.0.0", + "xml-crypto": "^3.0.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "axios": "^0.27.2" + } + }, + "packages/comms/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "packages/comms/node_modules/tmp": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", @@ -24250,6 +24238,19 @@ "node": ">=14.0" } }, + "packages/comms/node_modules/xml-crypto": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-3.2.0.tgz", + "integrity": "sha512-qVurBUOQrmvlgmZqIVBqmb06TD2a/PpEUfFPgD7BuBfjmoH4zgkqaWSIJrnymlCvM2GGt9x+XtJFA+ttoAufqg==", + "dev": true, + "dependencies": { + "@xmldom/xmldom": "^0.8.8", + "xpath": "0.0.32" + }, + "engines": { + "node": ">=4.0.0" + } + }, "packages/composite": { "name": "@hpcc-js/composite", "version": "2.7.23", diff --git a/packages/comms/.vscode/launch.json b/packages/comms/.vscode/launch.json index 16dd91c5ce..7c1e92374d 100644 --- a/packages/comms/.vscode/launch.json +++ b/packages/comms/.vscode/launch.json @@ -4,6 +4,20 @@ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ + { + "name": "WSDL Generation", + "request": "launch", + "runtimeArgs": [ + "run-script", + "wsdl-workunits" + ], + "runtimeExecutable": "npm", + "skipFiles": [ + "/**" + ], + "type": "node", + "sourceMaps": true + }, { "name": "index.html", "type": "msedge", @@ -16,7 +30,7 @@ }, { "name": "Mocha Tests", - "type": "pwa-node", + "type": "node", "request": "launch", "program": "${workspaceFolder}/../../node_modules/mocha/bin/_mocha", "args": [ diff --git a/packages/comms/package.json b/packages/comms/package.json index 0b1c17632d..45eabca5b8 100644 --- a/packages/comms/package.json +++ b/packages/comms/package.json @@ -22,7 +22,8 @@ "compile-es6-watch": "npm run compile-es6 -- -w", "compile-umd": "tsc --module umd --outDir ./lib-umd", "compile-umd-watch": "npm run compile-umd -- -w", - "compile-util": "tsc --esModuleInterop --target es2019 --skipLibCheck --module commonjs --outDir ./lib-cjs ./utils/index.ts", + "compile-util": "tsc --esModuleInterop --target es2019 --skipLibCheck --module commonjs --sourcemap --outDir ./lib-cjs ./utils/index.ts", + "compile-util-watch": "npm run compile-util -- -w", "bundle": "rollup -c", "bundle-watch": "npm run bundle -- -w", "minimize-browser": "terser dist/index.js -c -m --source-map \"content='dist/index.js.map',url='index.min.js.map'\" -o dist/index.min.js", @@ -77,7 +78,7 @@ "@types/xmldom": "0.1.34", "d3-array": "^1", "d3-time-format": "^2", - "soap": "0.45.0", + "soap": "1.0.0", "tslib": "2.6.2", "typescript-formatter": "^7.2.2", "whatwg-fetch": "3.6.20" @@ -93,4 +94,4 @@ "url": "https://github.com/hpcc-systems/Visualization/issues" }, "homepage": "https://github.com/hpcc-systems/Visualization" -} +} \ No newline at end of file diff --git a/packages/comms/src/__tests__/workunit.ts b/packages/comms/src/__tests__/workunit.ts index 877ce39854..71c41db641 100644 --- a/packages/comms/src/__tests__/workunit.ts +++ b/packages/comms/src/__tests__/workunit.ts @@ -22,7 +22,7 @@ describe("Workunit", () => { it("ping", async () => { const service = new WorkunitsService(connection); const pingResponse = await service.Ping(); - expect(pingResponse.result).to.be.true; + expect(pingResponse).to.exist; }); it.skip("query", async () => { diff --git a/packages/comms/src/ecl/dfuWorkunit.ts b/packages/comms/src/ecl/dfuWorkunit.ts index f30f1f3cbb..3085a36a24 100644 --- a/packages/comms/src/ecl/dfuWorkunit.ts +++ b/packages/comms/src/ecl/dfuWorkunit.ts @@ -206,7 +206,12 @@ export class DFUWorkunit extends StateObject { + return this.refresh().then(() => { + this._monitor(); + return response; + }); + }); } async refresh(full: boolean = false): Promise { @@ -342,7 +347,7 @@ export class DFUWorkunit extends StateObject { // deleted --- const wuMissing = e.Exception.some((exception) => { - if (exception.Code === 20081) { + if (exception.Code === 20080 || exception.Code === 20081) { this.clearState(this.ID); this.set("State", States.NotFound); return true; diff --git a/packages/comms/src/ecl/graph.ts b/packages/comms/src/ecl/graph.ts index 03228bc7ca..17631a1bb3 100644 --- a/packages/comms/src/ecl/graph.ts +++ b/packages/comms/src/ecl/graph.ts @@ -1,10 +1,10 @@ import { Cache, Edge, Graph, StateObject, StringAnyMap, Subgraph, Vertex, XMLNode } from "@hpcc-js/util"; -import { WUInfo } from "../services/wsWorkunits"; +import { WsWorkunits } from "../services/wsWorkunits"; import { BaseScope } from "./scope"; import { Timer } from "./timer"; import { Workunit } from "./workunit"; -export interface ECLGraphEx extends WUInfo.ECLGraph { +export interface ECLGraphEx extends WsWorkunits.ECLGraph { Time: number; } @@ -23,7 +23,7 @@ export class ECLGraph extends StateObject implements ECL get RunningId(): number { return this.get("RunningId"); } get Failed(): boolean { return this.get("Failed"); } - constructor(wu: Workunit, eclGraph: WUInfo.ECLGraph, eclTimers: Timer[]) { + constructor(wu: Workunit, eclGraph: WsWorkunits.ECLGraph, eclTimers: Timer[]) { super(); this.wu = wu; let duration = 0; @@ -48,7 +48,7 @@ export class ECLGraph extends StateObject implements ECL } } -export class GraphCache extends Cache { +export class GraphCache extends Cache { constructor() { super((obj) => { return Cache.hash([obj.Name]); diff --git a/packages/comms/src/ecl/query.ts b/packages/comms/src/ecl/query.ts index 9d9004d7c0..003a2b7e39 100644 --- a/packages/comms/src/ecl/query.ts +++ b/packages/comms/src/ecl/query.ts @@ -1,8 +1,8 @@ -import { Cache, StateObject, scopedLogger } from "@hpcc-js/util"; +import { Cache, StateObject, scopedLogger, RecursivePartial } from "@hpcc-js/util"; import { format as d3Format } from "d3-format"; import { IConnection, IOptions } from "../connection"; import { EclService, IWsEclRequest, IWsEclResponse, IWsEclResult } from "../services/wsEcl"; -import { WorkunitsService, WUDetails, WUQueryDetails, WUDetailsMeta } from "../services/wsWorkunits"; +import { WorkunitsService, WsWorkunits } from "../services/wsWorkunits"; import { Topology } from "./topology"; import { Workunit, IScope } from "./workunit"; import { QueryGraph } from "./queryGraph"; @@ -16,7 +16,7 @@ const siFormatter = d3Format("~s"); function isNumber(n) { return !isNaN(parseFloat(n)) && !isNaN(n - 0); } -export interface QueryEx extends WUQueryDetails.Response { +export interface QueryEx extends WsWorkunits.WUQueryDetailsResponse { BaseUrl: string; } @@ -36,8 +36,8 @@ export class Query extends StateObject implements QueryEx { protected _requestSchema: IWsEclRequest; protected _responseSchema: IWsEclResponse; - get properties(): WUQueryDetails.Response { return this.get(); } - get Exceptions(): WUQueryDetails.Exceptions { return this.get("Exceptions"); } + get properties(): WsWorkunits.WUQueryDetailsResponse { return this.get(); } + get Exceptions(): WsWorkunits.Exceptions { return this.get("Exceptions"); } get QueryId(): string { return this.get("QueryId"); } get QuerySet(): string { return this.get("QuerySet"); } get QueryName(): string { return this.get("QueryName"); } @@ -46,23 +46,24 @@ export class Query extends StateObject implements QueryEx { get Suspended(): boolean { return this.get("Suspended"); } get Activated(): boolean { return this.get("Activated"); } get SuspendedBy(): string { return this.get("SuspendedBy"); } - get Clusters(): WUQueryDetails.Clusters { return this.get("Clusters"); } + get Clusters(): WsWorkunits.Clusters2 { return this.get("Clusters"); } get PublishedBy(): string { return this.get("PublishedBy"); } get Comment() { return this.get("Comment"); } - get LogicalFiles(): WUQueryDetails.LogicalFiles { return this.get("LogicalFiles"); } - get SuperFiles(): WUQueryDetails.SuperFiles { return this.get("SuperFiles"); } + get LogicalFiles(): WsWorkunits.LogicalFiles { return this.get("LogicalFiles"); } + get SuperFiles(): WsWorkunits.SuperFiles { return this.get("SuperFiles"); } get IsLibrary(): boolean { return this.get("IsLibrary"); } get Priority(): string { return this.get("Priority"); } get WUSnapShot(): string { return this.get("WUSnapShot"); } get CompileTime(): string { return this.get("CompileTime"); } - get LibrariesUsed(): WUQueryDetails.LibrariesUsed { return this.get("LibrariesUsed"); } + get LibrariesUsed(): WsWorkunits.LibrariesUsed { return this.get("LibrariesUsed"); } get CountGraphs(): number { return this.get("CountGraphs"); } get ResourceURLCount(): number { return this.get("ResourceURLCount"); } - get WsEclAddresses(): WUQueryDetails.WsEclAddresses { return this.get("WsEclAddresses"); } - get WUGraphs(): WUQueryDetails.WUGraphs { return this.get("WUGraphs"); } - get WUTimers(): WUQueryDetails.WUTimers { return this.get("WUTimers"); } + get WsEclAddresses(): WsWorkunits.WsEclAddresses { return this.get("WsEclAddresses"); } + get WUGraphs(): WsWorkunits.WUGraphs { return this.get("WUGraphs"); } + get WUTimers(): WsWorkunits.WUTimers { return this.get("WUTimers"); } + get PriorityID(): number { return this.get("PriorityID"); } - private constructor(optsConnection: IOptions | IConnection | WorkunitsService, querySet: string, queryID: string, queryDetails?: WUQueryDetails.Response) { + private constructor(optsConnection: IOptions | IConnection | WorkunitsService, querySet: string, queryID: string, queryDetails?: WsWorkunits.WUQueryDetailsResponse) { super(); if (optsConnection instanceof WorkunitsService) { this.wsWorkunitsService = optsConnection; @@ -160,13 +161,13 @@ export class Query extends StateObject implements QueryEx { }); } - fetchDetailsNormalized(request: Partial = {}): Promise<{ meta: WUDetailsMeta.Response | undefined, columns: { [id: string]: any } | undefined, data: IScope[] | undefined }> { + fetchDetailsNormalized(request: RecursivePartial = {}): Promise<{ meta: WsWorkunits.WUDetailsMetaResponse | undefined, columns: { [id: string]: any } | undefined, data: IScope[] | undefined }> { const wu = Workunit.attach(this.wsWorkunitsService, this.Wuid); if (wu) { return Promise.all([this.fetchGraph(), wu.fetchDetailsMeta(), wu.fetchDetailsRaw(request)]).then(promises => { const graph = promises[0]; const meta = promises[1]; - const metrics: WUDetails.Scope[] = promises[2]; + const metrics: WsWorkunits.Scope[] = promises[2]; const data = metrics.map(metric => { if (metric.Id[0] === "a" || metric.Id[0] === "e") { const item = graph.idx[metric.Id.substring(1)]; @@ -185,7 +186,7 @@ export class Query extends StateObject implements QueryEx { Name: key, RawValue: rawValue, Formatted: formatted - } as WUDetails.Property); + } as WsWorkunits.Property); } } } diff --git a/packages/comms/src/ecl/result.ts b/packages/comms/src/ecl/result.ts index 7b7e4579d9..a9b797e8d2 100644 --- a/packages/comms/src/ecl/result.ts +++ b/packages/comms/src/ecl/result.ts @@ -1,7 +1,7 @@ import { Cache, exists, StateObject } from "@hpcc-js/util"; import { IConnection, IOptions } from "../connection"; import { WsDfu } from "../services/wsDFU"; -import { isECLResult, WorkunitsService, WUInfo, WUResult } from "../services/wsWorkunits"; +import { isECLResult, WorkunitsService, WsWorkunits } from "../services/wsWorkunits"; import { parseXSD, XSDSchema, XSDXMLNode } from "./xsdParser"; export class GlobalResultCache extends Cache<{ BaseUrl: string, Wuid: string, ResultName: string }, Result> { @@ -15,7 +15,7 @@ const _results = new GlobalResultCache(); export type ResultFilter = { [key: string]: string | number }; -export interface ECLResultEx extends WUInfo.ECLResult { +export interface ECLResultEx extends WsWorkunits.ECLResult { Wuid: string; ResultName?: string; ResultSequence?: number; @@ -24,6 +24,25 @@ export interface ECLResultEx extends WUInfo.ECLResult { ResultViews: string[]; } +export interface WUResultResponseEx { + + Exceptions: WsWorkunits.Exceptions; + Wuid: string; + Sequence: WsWorkunits.int; + LogicalName: string; + Cluster: string; + Name: string; + Start: WsWorkunits.long; + Requested: WsWorkunits.int; + Count: WsWorkunits.int; + Total: WsWorkunits.long; + Result: { [key: string]: any[] } & { + XmlSchema?: { + xml: string; + }; + }; +} + export type UResulState = ECLResultEx & WsDfu.DFULogicalFile; export type IResulState = ECLResultEx | WsDfu.DFULogicalFile; export class Result extends StateObject implements ECLResultEx { @@ -31,7 +50,7 @@ export class Result extends StateObject implements ECL get BaseUrl() { return this.connection.baseUrl; } protected xsdSchema: XSDSchema; - get properties(): WUInfo.ECLResult { return this.get(); } + get properties(): WsWorkunits.ECLResult { return this.get(); } get Wuid(): string { return this.get("Wuid"); } get ResultName(): string | undefined { return this.get("ResultName"); } get ResultSequence(): number | undefined { return this.get("ResultSequence"); } @@ -44,19 +63,19 @@ export class Result extends StateObject implements ECL get IsSupplied(): boolean { return this.get("IsSupplied"); } get ShowFileContent() { return this.get("ShowFileContent"); } get Total(): number { return this.get("Total"); } - get ECLSchemas(): WUInfo.ECLSchemas { return this.get("ECLSchemas"); } + get ECLSchemas(): WsWorkunits.ECLSchemas { return this.get("ECLSchemas"); } get NodeGroup(): string { return this.get("NodeGroup"); } get ResultViews(): string[] { return this.get("ResultViews"); } get XmlSchema(): string { return this.get("XmlSchema"); } static attach(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, name: string); static attach(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, sequence: number); - static attach(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclResult: WUInfo.ECLResult, resultViews: string[]); - static attach(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, name_sequence_eclResult?: string | number | WUInfo.ECLResult, resultViews?: string[]): Result { + static attach(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclResult: WsWorkunits.ECLResult, resultViews: string[]); + static attach(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, name_sequence_eclResult?: string | number | WsWorkunits.ECLResult, resultViews?: string[]): Result { let retVal: Result; if (Array.isArray(resultViews)) { - retVal = _results.get({ BaseUrl: optsConnection.baseUrl, Wuid: wuid, ResultName: (name_sequence_eclResult as WUInfo.ECLResult).Name }, () => { - return new Result(optsConnection, wuid, name_sequence_eclResult as WUInfo.ECLResult, resultViews); + retVal = _results.get({ BaseUrl: optsConnection.baseUrl, Wuid: wuid, ResultName: (name_sequence_eclResult as WsWorkunits.ECLResult).Name }, () => { + return new Result(optsConnection, wuid, name_sequence_eclResult as WsWorkunits.ECLResult, resultViews); }); retVal.set(name_sequence_eclResult as any); } else if (typeof resultViews === "undefined") { @@ -81,9 +100,9 @@ export class Result extends StateObject implements ECL private constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, name: string); private constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, sequence: number); - private constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclResult: WUInfo.ECLResult, resultViews: string[]); + private constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclResult: WsWorkunits.ECLResult, resultViews: string[]); private constructor(optsConnection: IOptions | IConnection | WorkunitsService, nodeGroup: string, logicalFile: string, isLogicalFiles: boolean); - private constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid_NodeGroup: string, name_sequence_eclResult_logicalFile?: string | number | WUInfo.ECLResult, resultViews_isLogicalFile?: any[] | boolean) { + private constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid_NodeGroup: string, name_sequence_eclResult_logicalFile?: string | number | WsWorkunits.ECLResult, resultViews_isLogicalFile?: any[] | boolean) { super(); if (optsConnection instanceof WorkunitsService) { this.connection = optsConnection; @@ -130,7 +149,7 @@ export class Result extends StateObject implements ECL fetchXMLSchema(refresh = false): Promise { if (!this._fetchXMLSchemaPromise || refresh) { this._fetchXMLSchemaPromise = this.WUResult().then(response => { - if (exists("Result.XmlSchema.xml", response)) { + if (response.Result?.XmlSchema?.xml) { this.xsdSchema = parseXSD(response.Result.XmlSchema.xml); return this.xsdSchema; } @@ -147,7 +166,7 @@ export class Result extends StateObject implements ECL fetchRows(from: number = 0, count: number = -1, includeSchema: boolean = false, filter: ResultFilter = {}, abortSignal?: AbortSignal): Promise { return this.WUResult(from, count, !includeSchema, filter, abortSignal).then((response) => { - const result = response.Result; + const result: any = response.Result; delete response.Result; // Do not want it in "set" this.set({ ...response @@ -174,7 +193,7 @@ export class Result extends StateObject implements ECL return this.xsdSchema.root.children(); } - protected WUResult(start: number = 0, count: number = 1, suppressXmlSchema: boolean = false, filter: { [key: string]: string | number } = {}, abortSignal?: AbortSignal): Promise { + protected WUResult(start: number = 0, count: number = 1, suppressXmlSchema: boolean = false, filter: { [key: string]: string | number } = {}, abortSignal?: AbortSignal): Promise { const FilterBy = { NamedValue: { itemcount: 0 @@ -186,7 +205,7 @@ export class Result extends StateObject implements ECL Value: filter[key] }; } - const request: WUResult.Request = { FilterBy } as WUResult.Request; + const request: Partial = { FilterBy } as any; if (this.Wuid && this.ResultName !== undefined) { request.Wuid = this.Wuid; request.ResultName = this.ResultName; @@ -202,13 +221,13 @@ export class Result extends StateObject implements ECL request.Start = start; request.Count = count; request.SuppressXmlSchema = suppressXmlSchema; - return this.connection.WUResult(request, abortSignal).then((response) => { - return response; + return this.connection.WUResult(request, abortSignal).then((response: unknown) => { + return response as WUResultResponseEx; }); } } -export class ResultCache extends Cache { +export class ResultCache extends Cache { constructor() { super((obj) => { return Cache.hash([obj.Sequence, obj.Name, obj.Value, obj.FileName]); diff --git a/packages/comms/src/ecl/scope.ts b/packages/comms/src/ecl/scope.ts index 96ab86442f..bae43f2b2f 100644 --- a/packages/comms/src/ecl/scope.ts +++ b/packages/comms/src/ecl/scope.ts @@ -1,12 +1,12 @@ import { StateObject, StringAnyMap } from "@hpcc-js/util"; // import { utcFormat, utcParse } from "d3-time-format"; -import { WUDetails } from "../services/wsWorkunits"; +import { WsWorkunits } from "../services/wsWorkunits"; import { Workunit } from "./workunit"; // const formatter = utcFormat("%Y-%m-%dT%H:%M:%S.%LZ"); // const parser = utcParse("%Y-%m-%dT%H:%M:%S.%LZ"); -export interface AttributeEx extends WUDetails.Property { +export interface AttributeEx extends WsWorkunits.Property { FormattedEnd?: string; } @@ -22,14 +22,14 @@ export class Attribute extends StateObject implements get Creator(): string { return this.get("Creator"); } get CreatorType(): string { return this.get("CreatorType"); } - constructor(scope: BaseScope, attribute: WUDetails.Property) { + constructor(scope: BaseScope, attribute: WsWorkunits.Property) { super(); this.scope = scope; this.set(attribute); } } -export interface ScopeEx extends WUDetails.Scope { +export interface ScopeEx extends WsWorkunits.Scope { } export interface IScopeVisitor { @@ -45,8 +45,9 @@ export class BaseScope extends StateObject implements ScopeEx get ScopeName(): string { return this.get("ScopeName"); } get Id(): string { return this.get("Id"); } get ScopeType(): string { return this.get("ScopeType"); } - get Properties(): WUDetails.Properties { return this.get("Properties", { Property: [] }); } - get Notes(): WUDetails.Notes { return this.get("Notes", { Note: [] }); } + get Properties(): WsWorkunits.Properties { return this.get("Properties", { Property: [] }); } + get Notes(): WsWorkunits.Notes { return this.get("Notes", { Note: [] }); } + get SinkActivity(): string { return this.get("SinkActivity"); } get CAttributes(): Attribute[] { // Match "started" and time elapsed const retVal: Attribute[] = []; @@ -77,12 +78,12 @@ export class BaseScope extends StateObject implements ScopeEx return retVal; } - constructor(scope: WUDetails.Scope) { + constructor(scope: WsWorkunits.Scope) { super(); this.update(scope); } - update(scope: WUDetails.Scope) { + update(scope: WsWorkunits.Scope) { this.set(scope); this.CAttributes.forEach((attr) => { this._attributeMap[attr.Name] = attr; @@ -184,7 +185,7 @@ export class BaseScope extends StateObject implements ScopeEx export class Scope extends BaseScope { readonly wu: Workunit; - constructor(wu: Workunit, scope: WUDetails.Scope) { + constructor(wu: Workunit, scope: WsWorkunits.Scope) { super(scope); this.wu = wu; } diff --git a/packages/comms/src/ecl/sourceFile.ts b/packages/comms/src/ecl/sourceFile.ts index 64c627cce2..260dbb473d 100644 --- a/packages/comms/src/ecl/sourceFile.ts +++ b/packages/comms/src/ecl/sourceFile.ts @@ -1,24 +1,24 @@ import { StateObject } from "@hpcc-js/util"; import { IConnection, IOptions } from "../connection"; -import { WorkunitsService, WUInfo } from "../services/wsWorkunits"; +import { WorkunitsService, WsWorkunits } from "../services/wsWorkunits"; -export interface ECLSourceFileEx extends WUInfo.ECLSourceFile { +export interface ECLSourceFileEx extends WsWorkunits.ECLSourceFile { Wuid: string; } export class SourceFile extends StateObject implements ECLSourceFileEx { protected connection: WorkunitsService; - get properties(): WUInfo.ECLSourceFile { return this.get(); } + get properties(): WsWorkunits.ECLSourceFile { return this.get(); } get Wuid(): string { return this.get("Wuid"); } get FileCluster(): string { return this.get("FileCluster"); } get Name(): string { return this.get("Name"); } get IsSuperFile(): boolean { return this.get("IsSuperFile"); } get Subs(): number { return this.get("Subs"); } get Count(): number { return this.get("Count"); } - get ECLSourceFiles(): WUInfo.ECLSourceFiles { return this.get("ECLSourceFiles"); } + get ECLSourceFiles(): WsWorkunits.ECLSourceFiles { return this.get("ECLSourceFiles"); } - constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclSourceFile: WUInfo.ECLSourceFile) { + constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclSourceFile: WsWorkunits.ECLSourceFile) { super(); if (optsConnection instanceof WorkunitsService) { this.connection = optsConnection; diff --git a/packages/comms/src/ecl/timer.ts b/packages/comms/src/ecl/timer.ts index b0a2bd555c..a7b088935e 100644 --- a/packages/comms/src/ecl/timer.ts +++ b/packages/comms/src/ecl/timer.ts @@ -1,8 +1,8 @@ import { espTime2Seconds, StateObject } from "@hpcc-js/util"; import { IConnection, IOptions } from "../connection"; -import { WorkunitsService, WUInfo } from "../services/wsWorkunits"; +import { WorkunitsService, WsWorkunits } from "../services/wsWorkunits"; -export interface ECLTimerEx extends WUInfo.ECLTimer { +export interface ECLTimerEx extends WsWorkunits.ECLTimer { Wuid: string; Seconds: number; HasSubGraphId: boolean; @@ -11,7 +11,7 @@ export interface ECLTimerEx extends WUInfo.ECLTimer { export class Timer extends StateObject implements ECLTimerEx { protected connection: WorkunitsService; - get properties(): WUInfo.ECLTimer { return this.get(); } + get properties(): WsWorkunits.ECLTimer { return this.get(); } get Wuid(): string { return this.get("Wuid"); } get Name(): string { return this.get("Name"); } get Value(): string { return this.get("Value"); } @@ -20,8 +20,10 @@ export class Timer extends StateObject implements ECLTim get SubGraphId(): number { return this.get("SubGraphId"); } get HasSubGraphId(): boolean { return this.get("HasSubGraphId"); } get count(): number { return this.get("count"); } + get Timestamp(): number { return this.get("Timestamp"); } + get When(): string { return this.get("When"); } - constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclTimer: WUInfo.ECLTimer) { + constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclTimer: WsWorkunits.ECLTimer) { super(); if (optsConnection instanceof WorkunitsService) { this.connection = optsConnection; diff --git a/packages/comms/src/ecl/workunit.ts b/packages/comms/src/ecl/workunit.ts index 56a9b5dd7c..63e9560fd3 100644 --- a/packages/comms/src/ecl/workunit.ts +++ b/packages/comms/src/ecl/workunit.ts @@ -1,11 +1,11 @@ -import { Cache, deepMixinT, IEvent, scopedLogger, StateCallback, StateEvents, StateObject, StatePropCallback, StringAnyMap, XMLNode } from "@hpcc-js/util"; +import { Cache, deepMixinT, IEvent, RecursivePartial, scopedLogger, StateCallback, StateEvents, StateObject, StatePropCallback, StringAnyMap, XMLNode } from "@hpcc-js/util"; import { format as d3Format } from "d3-format"; import { utcFormat, utcParse } from "d3-time-format"; import { IConnection, IOptions } from "../connection"; import { ESPExceptions } from "../espConnection"; import { WsSMC } from "../services/wsSMC"; import * as WsTopology from "../services/wsTopology"; -import * as WsWorkunits from "../services/wsWorkunits"; +import { WsWorkunits, WUStateID, WorkunitsService, WorkunitsServiceEx, WUUpdate } from "../services/wsWorkunits"; import { createGraph, createXGMMLGraph, ECLGraph, GraphCache, ScopeGraph, XGMMLGraph, XGMMLVertex } from "./graph"; import { Resource } from "./resource"; import { Result, ResultCache } from "./result"; @@ -149,8 +149,6 @@ function formatValues(item: IScope, key: string, dedup: DedupProperties): IPrope const logger = scopedLogger("workunit.ts"); -const WUStateID = WsWorkunits.WUStateID; - export class WorkunitCache extends Cache<{ BaseUrl: string, Wuid: string }, Workunit> { constructor() { super((obj) => { @@ -167,7 +165,7 @@ export interface DebugState { } export interface IWorkunit { - ResultViews: WsWorkunits.WUInfo.ResultViews; + ResultViews: WsWorkunits.ResultViews; HelpersCount: number; } @@ -183,34 +181,34 @@ export interface ITimeElapsed { } export type WorkunitEvents = "completed" | StateEvents; -export type UWorkunitState = WsWorkunits.WUQuery.ECLWorkunit & WsWorkunits.WUInfo.Workunit & WsSMC.ActiveWorkunit & IWorkunit & IDebugWorkunit; -export type IWorkunitState = WsWorkunits.WUQuery.ECLWorkunit | WsWorkunits.WUInfo.Workunit | WsSMC.ActiveWorkunit | IWorkunit | IDebugWorkunit; -export class Workunit extends StateObject implements WsWorkunits.WUInfo.Workunit { - connection: WsWorkunits.WorkunitsService; +export type UWorkunitState = WsWorkunits.ECLWorkunit & WsWorkunits.Workunit & WsSMC.ActiveWorkunit & IWorkunit & IDebugWorkunit; +export type IWorkunitState = WsWorkunits.ECLWorkunit | WsWorkunits.Workunit | WsSMC.ActiveWorkunit | IWorkunit | IDebugWorkunit; +export class Workunit extends StateObject implements WsWorkunits.Workunit { + connection: WorkunitsService; topologyConnection: WsTopology.TopologyService; get BaseUrl() { return this.connection.baseUrl; } private _debugMode: boolean = false; private _debugAllGraph: any; - private _submitAction: WsWorkunits.WUUpdate.Action; + private _submitAction: WUUpdate.Action; // Accessors --- - get properties(): WsWorkunits.WUQuery.ECLWorkunit & WsWorkunits.WUInfo.Workunit { return this.get(); } + get properties(): WsWorkunits.ECLWorkunit & WsWorkunits.Workunit { return this.get(); } get Wuid(): string { return this.get("Wuid"); } get Owner(): string { return this.get("Owner", ""); } get Cluster(): string { return this.get("Cluster", ""); } get Jobname(): string { return this.get("Jobname", ""); } get Description(): string { return this.get("Description", ""); } get ActionEx(): string { return this.get("ActionEx", ""); } - get StateID(): WsWorkunits.WUStateID { return this.get("StateID", WsWorkunits.WUStateID.Unknown); } - get State(): string { return this.get("State") || WsWorkunits.WUStateID[this.StateID]; } + get StateID(): WUStateID { return this.get("StateID", WUStateID.Unknown); } + get State(): string { return this.get("State") || WUStateID[this.StateID]; } get Protected(): boolean { return this.get("Protected", false); } - get Exceptions(): WsWorkunits.WUInfo.Exceptions2 { return this.get("Exceptions", { ECLException: [] }); } - get ResultViews(): WsWorkunits.WUInfo.ResultViews { return this.get("ResultViews", { View: [] }); } + get Exceptions(): WsWorkunits.Exceptions2 { return this.get("Exceptions", { ECLException: [] }); } + get ResultViews(): WsWorkunits.ResultViews { return this.get("ResultViews", { View: [] }); } private _resultCache = new ResultCache(); get ResultCount(): number { return this.get("ResultCount", 0); } - get Results(): WsWorkunits.WUInfo.Results { return this.get("Results", { ECLResult: [] }); } + get Results(): WsWorkunits.Results { return this.get("Results", { ECLResult: [] }); } get CResults(): Result[] { return this.Results.ECLResult.map((eclResult) => { return this._resultCache.get(eclResult, () => { @@ -225,7 +223,7 @@ export class Workunit extends StateObject implem }); return retVal; } - get Timers(): WsWorkunits.WUInfo.Timers { return this.get("Timers", { ECLTimer: [] }); } + get Timers(): WsWorkunits.Timers { return this.get("Timers", { ECLTimer: [] }); } get CTimers(): Timer[] { return this.Timers.ECLTimer.map((eclTimer) => { return new Timer(this.connection, this.Wuid, eclTimer); @@ -234,7 +232,7 @@ export class Workunit extends StateObject implem private _graphCache = new GraphCache(); get GraphCount(): number { return this.get("GraphCount", 0); } - get Graphs(): WsWorkunits.WUInfo.Graphs { return this.get("Graphs", { ECLGraph: [] }); } + get Graphs(): WsWorkunits.Graphs { return this.get("Graphs", { ECLGraph: [] }); } get CGraphs(): ECLGraph[] { return this.Graphs.ECLGraph.map((eclGraph) => { return this._graphCache.get(eclGraph, () => { @@ -242,9 +240,9 @@ export class Workunit extends StateObject implem }); }); } - get ThorLogList(): WsWorkunits.WUInfo.ThorLogList { return this.get("ThorLogList"); } + get ThorLogList(): WsWorkunits.ThorLogList { return this.get("ThorLogList"); } get ResourceURLCount(): number { return this.get("ResourceURLCount", 0); } - get ResourceURLs(): WsWorkunits.WUInfo.ResourceURLs { return this.get("ResourceURLs", { URL: [] }); } + get ResourceURLs(): WsWorkunits.ResourceURLs { return this.get("ResourceURLs", { URL: [] }); } get CResourceURLs(): Resource[] { return this.ResourceURLs.URL.map((url) => { return new Resource(this, url); @@ -254,7 +252,7 @@ export class Workunit extends StateObject implem get DateTimeScheduled(): string { return this.get("DateTimeScheduled"); } get IsPausing(): boolean { return this.get("IsPausing"); } get ThorLCR(): boolean { return this.get("ThorLCR"); } - get ApplicationValues(): WsWorkunits.WUInfo.ApplicationValues { return this.get("ApplicationValues", { ApplicationValue: [] }); } + get ApplicationValues(): WsWorkunits.ApplicationValues { return this.get("ApplicationValues", { ApplicationValue: [] }); } get HasArchiveQuery(): boolean { return this.get("HasArchiveQuery"); } get StateEx(): string { return this.get("StateEx"); } get PriorityClass(): number { return this.get("PriorityClass"); } @@ -262,23 +260,22 @@ export class Workunit extends StateObject implem get Snapshot(): string { return this.get("Snapshot"); } get ResultLimit(): number { return this.get("ResultLimit"); } get EventSchedule(): number { return this.get("EventSchedule"); } - get HaveSubGraphTimings(): boolean { return this.get("HaveSubGraphTimings"); } - get Query(): WsWorkunits.WUInfo.Query { return this.get("Query"); } + get Query(): WsWorkunits.Query { return this.get("Query"); } get HelpersCount(): number { return this.get("HelpersCount", 0); } - get Helpers(): WsWorkunits.WUInfo.Helpers { return this.get("Helpers", { ECLHelpFile: [] }); } - get DebugValues(): WsWorkunits.WUInfo.DebugValues { return this.get("DebugValues"); } - get AllowedClusters(): WsWorkunits.WUInfo.AllowedClusters { return this.get("AllowedClusters"); } + get Helpers(): WsWorkunits.Helpers { return this.get("Helpers", { ECLHelpFile: [] }); } + get DebugValues(): WsWorkunits.DebugValues { return this.get("DebugValues"); } + get AllowedClusters(): WsWorkunits.AllowedClusters { return this.get("AllowedClusters"); } get ErrorCount(): number { return this.get("ErrorCount", 0); } get WarningCount(): number { return this.get("WarningCount", 0); } get InfoCount(): number { return this.get("InfoCount", 0); } get AlertCount(): number { return this.get("AlertCount", 0); } get SourceFileCount(): number { return this.get("SourceFileCount", 0); } - get SourceFiles(): WsWorkunits.WUInfo.SourceFiles { return this.get("SourceFiles", { ECLSourceFile: [] }); } + get SourceFiles(): WsWorkunits.SourceFiles { return this.get("SourceFiles", { ECLSourceFile: [] }); } get CSourceFiles(): SourceFile[] { return this.SourceFiles.ECLSourceFile.map(eclSourceFile => new SourceFile(this.connection, this.Wuid, eclSourceFile)); } get VariableCount(): number { return this.get("VariableCount", 0); } - get Variables(): WsWorkunits.WUInfo.Variables { return this.get("Variables", { ECLResult: [] }); } + get Variables(): WsWorkunits.Variables { return this.get("Variables", { ECLResult: [] }); } get TimerCount(): number { return this.get("TimerCount", 0); } get HasDebugValue(): boolean { return this.get("HasDebugValue"); } get ApplicationValueCount(): number { return this.get("ApplicationValueCount", 0); } @@ -297,8 +294,8 @@ export class Workunit extends StateObject implem get Scope(): string { return this.get("Scope"); } get AbortBy(): string { return this.get("AbortBy"); } get AbortTime(): string { return this.get("AbortTime"); } - get Workflows(): WsWorkunits.WUInfo.Workflows { return this.get("Workflows"); } - get TimingData(): WsWorkunits.WUInfo.TimingData { return this.get("TimingData"); } + get Workflows(): WsWorkunits.Workflows { return this.get("Workflows"); } + get TimingData(): WsWorkunits.TimingData { return this.get("TimingData"); } get HelpersDesc(): string { return this.get("HelpersDesc"); } get GraphsDesc(): string { return this.get("GraphsDesc"); } get SourceFilesDesc(): string { return this.get("SourceFilesDesc"); } @@ -308,10 +305,12 @@ export class Workunit extends StateObject implem get DebugValuesDesc(): string { return this.get("DebugValuesDesc"); } get ApplicationValuesDesc(): string { return this.get("ApplicationValuesDesc"); } get WorkflowsDesc(): string { return this.get("WorkflowsDesc"); } - get ServiceNames(): WsWorkunits.WUInfo.ServiceNames { return this.get("ServiceNames"); } + get ServiceNames(): WsWorkunits.ServiceNames { return this.get("ServiceNames"); } get CompileCost(): number { return this.get("CompileCost"); } get ExecuteCost(): number { return this.get("ExecuteCost"); } get FileAccessCost(): number { return this.get("FileAccessCost"); } + get NoAccess(): boolean { return this.get("NoAccess"); } + get ECLWUProcessList(): WsWorkunits.ECLWUProcessList { return this.get("ECLWUProcessList"); } // Factories --- static create(optsConnection: IOptions | IConnection): Promise { @@ -341,7 +340,7 @@ export class Workunit extends StateObject implem return Workunit.create(server).then((wu) => { return wu.update({ QueryText: ecl }); }).then((wu) => { - return compileOnly ? wu.submit(target, WsWorkunits.WUUpdate.Action.Compile) : wu.submit(target); + return compileOnly ? wu.submit(target, WUUpdate.Action.Compile) : wu.submit(target); }); } @@ -349,8 +348,8 @@ export class Workunit extends StateObject implem return Workunit.submit(server, target, ecl, true); } - static query(server: IOptions | IConnection, opts: WsWorkunits.WUQuery.Request): Promise { - const wsWorkunits = new WsWorkunits.WorkunitsService(server); + static query(server: IOptions | IConnection, opts: Partial): Promise { + const wsWorkunits = new WorkunitsService(server); return wsWorkunits.WUQuery(opts).then((response) => { return response.Workunits.ECLWorkunit.map(function (wu) { return Workunit.attach(server, wu.Wuid, wu); @@ -361,7 +360,7 @@ export class Workunit extends StateObject implem // --- --- --- protected constructor(optsConnection: IOptions | IConnection, wuid?: string) { super(); - this.connection = new WsWorkunits.WorkunitsService(optsConnection); + this.connection = new WorkunitsService(optsConnection); this.topologyConnection = new WsTopology.TopologyService(optsConnection); this.clearState(wuid); } @@ -373,12 +372,12 @@ export class Workunit extends StateObject implem }); } - update(request: Partial): Promise { + update(request: Partial): Promise { return this.connection.WUUpdate({ ...request, ...{ Wuid: this.Wuid, - StateOrig: this.State, + StateOrig: this.StateID, JobnameOrig: this.Jobname, DescriptionOrig: this.Description, ProtectedOrig: this.Protected, @@ -390,7 +389,7 @@ export class Workunit extends StateObject implem }); } - submit(_cluster?: string, action: WsWorkunits.WUUpdate.Action = WsWorkunits.WUUpdate.Action.Run, resultLimit?: number): Promise { + submit(_cluster?: string, action: WUUpdate.Action = WUUpdate.Action.Run, resultLimit?: number): Promise { let clusterPromise; if (_cluster !== void 0) { clusterPromise = Promise.resolve(_cluster); @@ -401,8 +400,8 @@ export class Workunit extends StateObject implem } this._debugMode = false; - if (action === WsWorkunits.WUUpdate.Action.Debug) { - action = WsWorkunits.WUUpdate.Action.Run; + if (action === WUUpdate.Action.Debug) { + action = WUUpdate.Action.Run; this._debugMode = true; } @@ -432,7 +431,7 @@ export class Workunit extends StateObject implem isComplete(): boolean { switch (this.StateID) { case WUStateID.Compiled: - return this.ActionEx === "compile" || this._submitAction === WsWorkunits.WUUpdate.Action.Compile; + return this.ActionEx === "compile" || this._submitAction === WUUpdate.Action.Compile; case WUStateID.Completed: case WUStateID.Failed: case WUStateID.Aborted: @@ -487,47 +486,47 @@ export class Workunit extends StateObject implem } setToFailed() { - return this.WUAction("SetToFailed"); + return this.WUAction(WsWorkunits.ECLWUActions.SetToFailed); } pause() { - return this.WUAction("Pause"); + return this.WUAction(WsWorkunits.ECLWUActions.Pause); } pauseNow() { - return this.WUAction("PauseNow"); + return this.WUAction(WsWorkunits.ECLWUActions.PauseNow); } resume() { - return this.WUAction("Resume"); + return this.WUAction(WsWorkunits.ECLWUActions.Resume); } abort() { - return this.WUAction("Abort"); + return this.WUAction(WsWorkunits.ECLWUActions.Abort); } protect() { - return this.WUAction("Protect"); + return this.WUAction(WsWorkunits.ECLWUActions.Protect); } unprotect() { - return this.WUAction("Unprotect"); + return this.WUAction(WsWorkunits.ECLWUActions.Unprotect); } delete() { - return this.WUAction("Delete"); + return this.WUAction(WsWorkunits.ECLWUActions.Delete); } restore() { - return this.WUAction("Restore"); + return this.WUAction(WsWorkunits.ECLWUActions.Restore); } deschedule() { - return this.WUAction("Deschedule"); + return this.WUAction(WsWorkunits.ECLWUActions.Deschedule); } reschedule() { - return this.WUAction("Reschedule"); + return this.WUAction(WsWorkunits.ECLWUActions.Reschedule); } resubmit(): Promise { @@ -563,7 +562,7 @@ export class Workunit extends StateObject implem return this; } - async refreshInfo(request?: Partial): Promise { + async refreshInfo(request?: Partial): Promise { await this.WUInfo(request); return this; } @@ -573,7 +572,7 @@ export class Workunit extends StateObject implem return this; } - async refresh(full: boolean = false, request?: Partial): Promise { + async refresh(full: boolean = false, request?: Partial): Promise { if (full) { await Promise.all([this.refreshInfo(request), this.refreshDebug()]); } else { @@ -582,18 +581,18 @@ export class Workunit extends StateObject implem return this; } - eclExceptions(): WsWorkunits.WUInfo.ECLException[] { + eclExceptions(): WsWorkunits.ECLException[] { return this.Exceptions.ECLException; } fetchArchive(): Promise { - return this.connection.WUFile({ + return this.connection.WUFileEx({ Wuid: this.Wuid, Type: "ArchiveQuery" }); } - fetchECLExceptions(): Promise { + fetchECLExceptions(): Promise { return this.WUInfo({ IncludeExceptions: true }).then(() => { return this.eclExceptions(); }); @@ -611,13 +610,13 @@ export class Workunit extends StateObject implem }); } - fetchQuery(): Promise { + fetchQuery(): Promise { return this.WUInfo({ IncludeECL: true, TruncateEclTo64k: false }).then(() => { return this.Query; }); } - fetchHelpers(): Promise { + fetchHelpers(): Promise { return this.WUInfo({ IncludeHelpers: true }).then(() => { return this.Helpers?.ECLHelpFile || []; }); @@ -641,15 +640,15 @@ export class Workunit extends StateObject implem }); } - fetchDetailsMeta(request: Partial = {}): Promise { + fetchDetailsMeta(request: RecursivePartial = {}): Promise { return this.WUDetailsMeta(request); } - fetchDetailsRaw(request: Partial = {}): Promise { + fetchDetailsRaw(request: RecursivePartial = {}): Promise { return this.WUDetails(request).then(response => response.Scopes.Scope); } - normalizeDetails(meta: WsWorkunits.WUDetailsMeta.Response, scopes: WsWorkunits.WUDetails.Scope[]): { meta: WsWorkunits.WUDetailsMeta.Response, columns: { [id: string]: any }, data: IScope[] } { + normalizeDetails(meta: WsWorkunits.WUDetailsMetaResponse, scopes: WsWorkunits.Scope[]): { meta: WsWorkunits.WUDetailsMetaResponse, columns: { [id: string]: any }, data: IScope[] } { const columns: { [id: string]: any } = { id: { Measure: "label" @@ -758,17 +757,17 @@ export class Workunit extends StateObject implem }; } - fetchDetailsNormalized(request: Partial = {}): Promise<{ meta: WsWorkunits.WUDetailsMeta.Response, columns: { [id: string]: any }, data: IScope[] }> { + fetchDetailsNormalized(request: RecursivePartial = {}): Promise<{ meta: WsWorkunits.WUDetailsMetaResponse, columns: { [id: string]: any }, data: IScope[] }> { return Promise.all([this.fetchDetailsMeta(), this.fetchDetailsRaw(request)]).then(promises => { return this.normalizeDetails(promises[0], promises[1]); }); } - fetchInfo(request: Partial = {}): Promise { + fetchInfo(request: Partial = {}): Promise { return this.WUInfo(request); } - fetchDetails(request: Partial = {}): Promise { + fetchDetails(request: RecursivePartial = {}): Promise { return this.WUDetails(request).then((response) => { return response.Scopes.Scope.map((rawScope) => { return new Scope(this, rawScope); @@ -776,7 +775,7 @@ export class Workunit extends StateObject implem }); } - fetchDetailsHierarchy(request: Partial = {}): Promise { + fetchDetailsHierarchy(request: Partial = {}): Promise { return this.WUDetails(request).then((response) => { const retVal: Scope[] = []; @@ -812,12 +811,12 @@ export class Workunit extends StateObject implem return this.fetchDetails({ ScopeFilter: { MaxDepth: 999999, - Ids: graphIDs, - ScopeTypes: rootTypes + Ids: { id: graphIDs }, + ScopeTypes: { ScopeType: rootTypes }, }, NestedFilter: { Depth: 999999, - ScopeTypes: ["graph", "subgraph", "activity", "edge", "function"] + ScopeTypes: { ScopeType: ["graph", "subgraph", "activity", "edge", "function"] } }, PropertiesToReturn: { AllStatistics: true, @@ -972,7 +971,7 @@ export class Workunit extends StateObject implem } // WsWorkunits passthroughs --- - protected WUQuery(_request: Partial = {}): Promise { + protected WUQuery(_request: Partial = {}): Promise { return this.connection.WUQuery({ ..._request, Wuid: this.Wuid }).then((response) => { this.set(response.Workunits.ECLWorkunit[0]); return response; @@ -990,7 +989,7 @@ export class Workunit extends StateObject implem logger.warning("Unexpected exception: "); throw e; } - return {} as WsWorkunits.WUQuery.Response; + return {} as WsWorkunits.WUQueryResponse; }); } @@ -1002,10 +1001,11 @@ export class Workunit extends StateObject implem }); } - protected WUInfo(_request: Partial = {}): Promise { + protected WUInfo(_request: Partial = {}): Promise { const includeResults = _request.IncludeResults || _request.IncludeResultsViewNames; return this.connection.WUInfo({ - ..._request, Wuid: this.Wuid, + ..._request, + Wuid: this.Wuid, IncludeResults: includeResults, IncludeResultsViewNames: includeResults, SuppressResultSchemas: false @@ -1031,22 +1031,22 @@ export class Workunit extends StateObject implem logger.warning("Unexpected exception: "); throw e; } - return {} as WsWorkunits.WUInfo.Response; + return {} as WsWorkunits.WUInfoResponse; }); } - protected WUResubmit(request: Partial): Promise { - return this.connection.WUResubmit(deepMixinT({}, request, { - Wuids: [this.Wuid] + protected WUResubmit(request: Partial): Promise { + return this.connection.WUResubmit(deepMixinT({}, request, { + Wuids: { Item: [this.Wuid] } })); } - protected WUDetailsMeta(request: Partial): Promise { + protected WUDetailsMeta(request: Partial): Promise { return this.connection.WUDetailsMeta(request); } - protected WUDetails(request: Partial): Promise { - return this.connection.WUDetails(deepMixinT({ + protected WUDetails(request: RecursivePartial): Promise { + return this.connection.WUDetails(deepMixinT({ ScopeFilter: { MaxDepth: 9999 }, @@ -1065,7 +1065,7 @@ export class Workunit extends StateObject implem IncludeCreatorType: false } }, request, { WUID: this.Wuid })).then((response) => { - return deepMixinT({ + return deepMixinT({ Scopes: { Scope: [] } @@ -1073,9 +1073,9 @@ export class Workunit extends StateObject implem }); } - protected WUAction(actionType: WsWorkunits.WUAction.Type): Promise { + protected WUAction(actionType: WsWorkunits.ECLWUActions): Promise { return this.connection.WUAction({ - Wuids: [this.Wuid], + Wuids: { Item: [this.Wuid] }, WUActionType: actionType }).then((response) => { return this.refresh().then(() => { @@ -1091,13 +1091,13 @@ export class Workunit extends StateObject implem Cluster: this.Cluster, JobName: name || this.Jobname, AllowForeignFiles: true, - Activate: true, + Activate: WsWorkunits.WUQueryActivationMode.ActivateQuery, Wait: 5000 }); } - publishEx(request: Partial) { - const service = new WsWorkunits.WorkunitsServiceEx({ baseUrl: "" }); + publishEx(request: Partial) { + const service = new WorkunitsServiceEx({ baseUrl: "" }); const publishRequest = { Wuid: this.Wuid, Cluster: this.Cluster, @@ -1117,7 +1117,7 @@ export class Workunit extends StateObject implem optsStr += ` ${key}='${opts[key]}'`; } } - return this.connection.WUCDebug({ + return this.connection.WUCDebugEx({ Wuid: this.Wuid, Command: `` }).then((response) => { diff --git a/packages/comms/src/services/wsWorkunits.ts b/packages/comms/src/services/wsWorkunits.ts index 0f3439d134..35f8a307f3 100644 --- a/packages/comms/src/services/wsWorkunits.ts +++ b/packages/comms/src/services/wsWorkunits.ts @@ -1,7 +1,7 @@ import { deepMixin, xml2json, XMLNode } from "@hpcc-js/util"; -import { WsWorkunits, WorkunitsServiceBase } from "./wsdl/WsWorkunits/v1.98/WsWorkunits"; +import { WsWorkunits, WorkunitsServiceBase } from "./wsdl/WsWorkunits/v2/WsWorkunits"; import { IConnection, IOptions } from "../connection"; -import { ESPConnection, Service } from "../espConnection"; +import { ESPConnection } from "../espConnection"; /* Response structures generated via: @@ -36,2595 +36,35 @@ export enum WUStateID { NotFound = 999 } -export namespace WUInfo { - export interface Request { - Wuid: string; - TruncateEclTo64k?: boolean; - Type?: string; - IncludeExceptions?: boolean; - IncludeGraphs?: boolean; - IncludeSourceFiles?: boolean; - IncludeResults?: boolean; - IncludeResultsViewNames?: boolean; - IncludeVariables?: boolean; - IncludeTimers?: boolean; - IncludeDebugValues?: boolean; - IncludeApplicationValues?: boolean; - IncludeWorkflows?: boolean; - IncludeXmlSchemas?: boolean; - IncludeResourceURLs?: boolean; - IncludeECL?: boolean; - IncludeHelpers?: boolean; - IncludeAllowedClusters?: boolean; - IncludeTotalClusterTime?: boolean; - IncludeServiceNames?: boolean; - SuppressResultSchemas?: boolean; - ThorSlaveIP?: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Query { - Text: string; - Cpp: string; - ResTxt: string; - Dll: string; - ThorLog: string; - QueryMainDefinition: string; - } - - export interface ECLHelpFile { - Name: string; - Type: string; - IPAddress: string; - Description: string; - FileSize: number; - PID: number; - minActivityId: number; - maxActivityId: number; - } - - export interface Helpers { - ECLHelpFile: ECLHelpFile[]; - } - - export interface ECLException { - Source: string; - Severity: string; - Code: number; - Message: string; - FileName: string; - LineNo: number; - Column: number; - Activity: number; - Scope?: string; - Priority?: number; - } - - export interface Exceptions2 { - ECLException: ECLException[]; - } - - export interface ECLGraph { - Name: string; - Label: string; - Type: string; - Running: boolean; - Complete: boolean; - Failed: boolean; - RunningId: number; - WhenStarted: string; - WhenFinished: string; - } - - export interface Graphs { - ECLGraph: ECLGraph[]; - } - - export interface ECLSourceFiles { - ECLSourceFile: any[]; - } - - export interface ECLSourceFile { - FileCluster: string; - Name: string; - IsSuperFile: boolean; - Subs: number; - Count: number; - ECLSourceFiles: ECLSourceFiles; - } - - export interface SourceFiles { - ECLSourceFile: ECLSourceFile[]; - } - - export interface ECLSchemaItem { - ColumnName: string; - ColumnType: string; - ColumnTypeCode: number; - isConditional: boolean; - } - - export interface ECLSchemas { - ECLSchemaItem: ECLSchemaItem[]; - } - - export interface ECLResult { - Name: string; - Sequence: number; - Value: string; - Link: string; - FileName: string; - IsSupplied: boolean; - ShowFileContent: boolean; - Total: number; - ECLSchemas: ECLSchemas; - XmlSchema: string; - } - - export interface Results { - ECLResult: ECLResult[]; - } - - export interface ECLSchemaItem2 { - ColumnName: string; - ColumnType: string; - ColumnTypeCode: number; - isConditional: boolean; - } - - export interface ECLSchemas2 { - ECLSchemaItem: ECLSchemaItem2[]; - } - - export interface ECLResult2 { - Name: string; - Sequence: number; - Value: string; - Link: string; - FileName: string; - IsSupplied: boolean; - ShowFileContent: boolean; - Total: number; - ECLSchemas: ECLSchemas2; - XmlSchema: string; - } - - export interface Variables { - ECLResult: ECLResult2[]; - } - - export interface ECLTimer { - Name: string; - Value: string; - count: number; - GraphName: string; - SubGraphId: number; - Timestamp?: number; - When?: string; - } - - export interface Timers { - ECLTimer: ECLTimer[]; - } - - export interface DebugValue { - Name: string; - Value: string; - } - - export interface DebugValues { - DebugValue: DebugValue[]; - } - - export interface ApplicationValue { - Application: string; - Name: string; - Value: string; - } - - export interface ApplicationValues { - ApplicationValue: ApplicationValue[]; - } - - export interface ECLWorkflow { - WFID: string; - EventName: string; - EventText: string; - Count: number; - CountRemaining: number; - } - - export interface Workflows { - ECLWorkflow: ECLWorkflow[]; - } - - export interface ECLTimingData { - Name: string; - GraphNum: number; - SubGraphNum: number; - GID: number; - Min: number; - MS: number; - } - - export interface TimingData { - ECLTimingData: ECLTimingData[]; - } - - export interface AllowedClusters { - AllowedCluster: string[]; - } - - export interface ThorLogInfo { - ProcessName: string; - ClusterGroup: string; - LogDate: string; - NumberSlaves: number; - } - - export interface ThorLogList { - ThorLogInfo: ThorLogInfo[]; - } - - export interface ResourceURLs { - URL: string[]; - } - - export interface ServiceNames { - Item: string[]; - } - - export interface Workunit { - Wuid: string; - Owner: string; - Cluster: string; - RoxieCluster: string; - Jobname: string; - Queue: string; - StateID: number; - State: string; - StateEx: string; - Description: string; - Protected: boolean; - Active: boolean; - Action: number; - ActionEx: string; - DateTimeScheduled: string; - PriorityClass: number; - PriorityLevel: number; - Scope: string; - Snapshot: string; - ResultLimit: number; - Archived: boolean; - IsPausing: boolean; - ThorLCR: boolean; - EventSchedule: number; - HaveSubGraphTimings?: boolean; - TotalClusterTime: string; - AbortBy: string; - AbortTime: string; - Query: Query; - Helpers: Helpers; - Exceptions: Exceptions2; - Graphs: Graphs; - SourceFiles: SourceFiles; - Results: Results; - Variables: Variables; - Timers: Timers; - DebugValues: DebugValues; - ApplicationValues: ApplicationValues; - Workflows: Workflows; - TimingData: TimingData; - AllowedClusters: AllowedClusters; - ErrorCount: number; - WarningCount: number; - InfoCount: number; - AlertCount: number; - GraphCount: number; - SourceFileCount: number; - ResultCount: number; - VariableCount: number; - TimerCount: number; - HasDebugValue: boolean; - ApplicationValueCount: number; - XmlParams: string; - AccessFlag: number; - ClusterFlag: number; - HelpersDesc: string; - GraphsDesc: string; - SourceFilesDesc: string; - ResultsDesc: string; - VariablesDesc: string; - TimersDesc: string; - DebugValuesDesc: string; - ApplicationValuesDesc: string; - WorkflowsDesc: string; - HasArchiveQuery: boolean; - ThorLogList: ThorLogList; - ResourceURLs: ResourceURLs; - ResultViewCount: number; - ResourceURLCount: number; - DebugValueCount: number; - WorkflowCount: number; - HelpersCount: number; - ServiceNames?: ServiceNames; - CompileCost?: number; - ExecuteCost?: number; - FileAccessCost?: number; - } - - export interface ResultViews { - View: string[]; - } - - export interface Response { - Exceptions: Exceptions; - Workunit: Workunit; - AutoRefresh: number; - CanCompile: boolean; - ThorSlaveIP: string; - ResultViews: ResultViews; - SecMethod: string; - } -} - -export function isECLResult(_: any): _ is WUInfo.ECLResult { - return typeof (_ as WUInfo.ECLResult).Name === "string"; -} - -export namespace WUQuery { - export interface ApplicationValue { - Application: string; - Name: string; - Value: string; - } - - export interface Request { - Wuid?: string; - Type?: string; - Cluster?: string; - RoxieCluster?: string; - Owner?: string; - State?: string; - StartDate?: string; - EndDate?: string; - ECL?: string; - Jobname?: string; - LogicalFile?: string; - LogicalFileSearchType?: string; - ApplicationValues?: { - ApplicationValue: ApplicationValue[] - }; - After?: string; - Before?: string; - Count?: number; - PageSize?: number; - PageStartFrom?: number; - PageEndAt?: number; - LastNDays?: number; - Sortby?: string; - Descending?: boolean; - CacheHint?: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Query { - Text: string; - Cpp: string; - ResTxt: string; - Dll: string; - ThorLog: string; - QueryMainDefinition: string; - } - - export interface ECLHelpFile { - Name: string; - Type: string; - IPAddress: string; - Description: string; - FileSize: number; - PID: number; - minActivityId: number; - maxActivityId: number; - } - - export interface Helpers { - ECLHelpFile: ECLHelpFile[]; - } - - export interface ECLException { - Source: string; - Severity: string; - Code: number; - Message: string; - FileName: string; - LineNo: number; - Column: number; - Activity: number; - } - - export interface Exceptions2 { - ECLException: ECLException[]; - } - - export interface ECLGraph { - Name: string; - Label: string; - Type: string; - Running: boolean; - Complete: boolean; - Failed: boolean; - RunningId: number; - WhenStarted: string; - WhenFinished: string; - } - - export interface Graphs { - ECLGraph: ECLGraph[]; - } - - export interface ECLSourceFiles { - ECLSourceFile: any[]; - } - - export interface ECLSourceFile { - FileCluster: string; - Name: string; - IsSuperFile: boolean; - Subs: number; - Count: number; - ECLSourceFiles: ECLSourceFiles; - } - - export interface SourceFiles { - ECLSourceFile: ECLSourceFile[]; - } - - export interface ECLSchemaItem { - ColumnName: string; - ColumnType: string; - ColumnTypeCode: number; - isConditional: boolean; - } - - export interface ECLSchemas { - ECLSchemaItem: ECLSchemaItem[]; - } - - export interface ECLResult { - Name: string; - Sequence: number; - Value: string; - Link: string; - FileName: string; - IsSupplied: boolean; - ShowFileContent: boolean; - Total: number; - ECLSchemas: ECLSchemas; - XmlSchema: string; - } - - export interface Results { - ECLResult: ECLResult[]; - } - - export interface ECLSchemaItem2 { - ColumnName: string; - ColumnType: string; - ColumnTypeCode: number; - isConditional: boolean; - } - - export interface ECLSchemas2 { - ECLSchemaItem: ECLSchemaItem2[]; - } - - export interface ECLResult2 { - Name: string; - Sequence: number; - Value: string; - Link: string; - FileName: string; - IsSupplied: boolean; - ShowFileContent: boolean; - Total: number; - ECLSchemas: ECLSchemas2; - XmlSchema: string; - } - - export interface Variables { - ECLResult: ECLResult2[]; - } - - export interface ECLTimer { - Name: string; - Value: string; - count: number; - GraphName: string; - SubGraphId: number; - } - - export interface Timers { - ECLTimer: ECLTimer[]; - } - - export interface DebugValue { - Name: string; - Value: string; - } - - export interface DebugValues { - DebugValue: DebugValue[]; - } - - export interface ApplicationValue { - Application: string; - Name: string; - Value: string; - } - - export interface ApplicationValues { - ApplicationValue: ApplicationValue[]; - } - - export interface ECLWorkflow { - WFID: string; - EventName: string; - EventText: string; - Count: number; - CountRemaining: number; - } - - export interface Workflows { - ECLWorkflow: ECLWorkflow[]; - } - - export interface ECLTimingData { - Name: string; - GraphNum: number; - SubGraphNum: number; - GID: number; - Min: number; - MS: number; - } - - export interface TimingData { - ECLTimingData: ECLTimingData[]; - } - - export interface AllowedClusters { - AllowedCluster: string[]; - } - - export interface ThorLogInfo { - ProcessName: string; - ClusterGroup: string; - LogDate: string; - NumberSlaves: number; - } - - export interface ThorLogList { - ThorLogInfo: ThorLogInfo[]; - } - - export interface ResourceURLs { - URL: string[]; - } - - export interface ECLWorkunit { - Wuid: string; - Owner: string; - Cluster: string; - RoxieCluster: string; - Jobname: string; - Queue: string; - StateID: number; - State: string; - StateEx: string; - Description: string; - Protected: boolean; - Active: boolean; - Action: number; - ActionEx: string; - DateTimeScheduled: string; - PriorityClass: number; - PriorityLevel: number; - Scope: string; - Snapshot: string; - ResultLimit: number; - Archived: boolean; - IsPausing: boolean; - ThorLCR: boolean; - EventSchedule: number; - HaveSubGraphTimings: boolean; - TotalClusterTime: string; - AbortBy: string; - AbortTime: string; - Query: Query; - Helpers: Helpers; - Exceptions: Exceptions2; - Graphs: Graphs; - SourceFiles: SourceFiles; - Results: Results; - Variables: Variables; - Timers: Timers; - DebugValues: DebugValues; - ApplicationValues: ApplicationValues; - Workflows: Workflows; - TimingData: TimingData; - AllowedClusters: AllowedClusters; - ErrorCount: number; - WarningCount: number; - InfoCount: number; - AlertCount: number; - GraphCount: number; - SourceFileCount: number; - ResultCount: number; - VariableCount: number; - TimerCount: number; - HasDebugValue: boolean; - ApplicationValueCount: number; - XmlParams: string; - AccessFlag: number; - ClusterFlag: number; - HelpersDesc: string; - GraphsDesc: string; - SourceFilesDesc: string; - ResultsDesc: string; - VariablesDesc: string; - TimersDesc: string; - DebugValuesDesc: string; - ApplicationValuesDesc: string; - WorkflowsDesc: string; - HasArchiveQuery: boolean; - ThorLogList: ThorLogList; - ResourceURLs: ResourceURLs; - ResultViewCount: number; - ResourceURLCount: number; - DebugValueCount: number; - WorkflowCount: number; - HelpersCount: number; - CompileCost?: number; - ExecuteCost?: number; - FileAccessCost?: number; - } - - export interface Workunits { - ECLWorkunit: ECLWorkunit[]; - } - - export interface Response { - Exceptions: Exceptions; - Type: string; - Cluster: string; - RoxieCluster: string; - Owner: string; - State: string; - StartDate: string; - EndDate: string; - ECL: string; - Jobname: string; - LogicalFile: string; - LogicalFileSearchType: string; - Current: string; - Next: string; - Count: number; - PageSize: number; - PrevPage: number; - NextPage: number; - LastPage: number; - NumWUs: number; - First: boolean; - PageStartFrom: number; - PageEndAt: number; - LastNDays: number; - Sortby: string; - Descending: boolean; - BasicQuery: string; - Filters: string; - CacheHint: number; - Workunits: Workunits; - } -} - -export namespace WUCreate { - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Query { - Text: string; - Cpp: string; - ResTxt: string; - Dll: string; - ThorLog: string; - QueryMainDefinition: string; - } - - export interface ECLHelpFile { - Name: string; - Type: string; - IPAddress: string; - Description: string; - FileSize: number; - PID: number; - minActivityId: number; - maxActivityId: number; - } - - export interface Helpers { - ECLHelpFile: ECLHelpFile[]; - } - - export interface ECLException { - Source: string; - Severity: string; - Code: number; - Message: string; - FileName: string; - LineNo: number; - Column: number; - Activity: number; - } - - export interface Exceptions2 { - ECLException: ECLException[]; - } - - export interface ECLGraph { - Name: string; - Label: string; - Type: string; - Running: boolean; - Complete: boolean; - Failed: boolean; - RunningId: number; - WhenStarted: string; - WhenFinished: string; - } - - export interface Graphs { - ECLGraph: ECLGraph[]; - } - - export interface ECLSourceFiles { - ECLSourceFile: any[]; - } - - export interface ECLSourceFile { - FileCluster: string; - Name: string; - IsSuperFile: boolean; - Subs: number; - Count: number; - ECLSourceFiles: ECLSourceFiles; - } - - export interface SourceFiles { - ECLSourceFile: ECLSourceFile[]; - } - - export interface ECLSchemaItem { - ColumnName: string; - ColumnType: string; - ColumnTypeCode: number; - isConditional: boolean; - } - - export interface ECLSchemas { - ECLSchemaItem: ECLSchemaItem[]; - } - - export interface ECLResult { - Name: string; - Sequence: number; - Value: string; - Link: string; - FileName: string; - IsSupplied: boolean; - ShowFileContent: boolean; - Total: number; - ECLSchemas: ECLSchemas; - XmlSchema: string; - } - - export interface Results { - ECLResult: ECLResult[]; - } - - export interface ECLSchemaItem2 { - ColumnName: string; - ColumnType: string; - ColumnTypeCode: number; - isConditional: boolean; - } - - export interface ECLSchemas2 { - ECLSchemaItem: ECLSchemaItem2[]; - } - - export interface ECLResult2 { - Name: string; - Sequence: number; - Value: string; - Link: string; - FileName: string; - IsSupplied: boolean; - ShowFileContent: boolean; - Total: number; - ECLSchemas: ECLSchemas2; - XmlSchema: string; - } - - export interface Variables { - ECLResult: ECLResult2[]; - } - - export interface ECLTimer { - Name: string; - Value: string; - count: number; - GraphName: string; - SubGraphId: number; - } - - export interface Timers { - ECLTimer: ECLTimer[]; - } - - export interface DebugValue { - Name: string; - Value: string; - } - - export interface DebugValues { - DebugValue: DebugValue[]; - } - - export interface ApplicationValue { - Application: string; - Name: string; - Value: string; - } - - export interface ApplicationValues { - ApplicationValue: ApplicationValue[]; - } - - export interface ECLWorkflow { - WFID: string; - EventName: string; - EventText: string; - Count: number; - CountRemaining: number; - } - - export interface Workflows { - ECLWorkflow: ECLWorkflow[]; - } - - export interface ECLTimingData { - Name: string; - GraphNum: number; - SubGraphNum: number; - GID: number; - Min: number; - MS: number; - } - - export interface TimingData { - ECLTimingData: ECLTimingData[]; - } - - export interface AllowedClusters { - AllowedCluster: string[]; - } - - export interface ThorLogInfo { - ProcessName: string; - ClusterGroup: string; - LogDate: string; - NumberSlaves: number; - } - - export interface ThorLogList { - ThorLogInfo: ThorLogInfo[]; - } - - export interface ResourceURLs { - URL: string[]; - } - - export interface Workunit { - Wuid: string; - Owner: string; - Cluster: string; - RoxieCluster: string; - Jobname: string; - Queue: string; - StateID: number; - State: string; - StateEx: string; - Description: string; - Protected: boolean; - Active: boolean; - Action: number; - ActionEx: string; - DateTimeScheduled: string; - PriorityClass: number; - PriorityLevel: number; - Scope: string; - Snapshot: string; - ResultLimit: number; - Archived: boolean; - IsPausing: boolean; - ThorLCR: boolean; - EventSchedule: number; - HaveSubGraphTimings: boolean; - TotalClusterTime: string; - AbortBy: string; - AbortTime: string; - Query: Query; - Helpers: Helpers; - Exceptions: Exceptions2; - Graphs: Graphs; - SourceFiles: SourceFiles; - Results: Results; - Variables: Variables; - Timers: Timers; - DebugValues: DebugValues; - ApplicationValues: ApplicationValues; - Workflows: Workflows; - TimingData: TimingData; - AllowedClusters: AllowedClusters; - ErrorCount: number; - WarningCount: number; - InfoCount: number; - AlertCount: number; - GraphCount: number; - SourceFileCount: number; - ResultCount: number; - VariableCount: number; - TimerCount: number; - HasDebugValue: boolean; - ApplicationValueCount: number; - XmlParams: string; - AccessFlag: number; - ClusterFlag: number; - HelpersDesc: string; - GraphsDesc: string; - SourceFilesDesc: string; - ResultsDesc: string; - VariablesDesc: string; - TimersDesc: string; - DebugValuesDesc: string; - ApplicationValuesDesc: string; - WorkflowsDesc: string; - HasArchiveQuery: boolean; - ThorLogList: ThorLogList; - ResourceURLs: ResourceURLs; - ResultViewCount: number; - ResourceURLCount: number; - DebugValueCount: number; - WorkflowCount: number; - HelpersCount: number; - } - - export interface Response { - Exceptions: Exceptions; - Workunit: Workunit; - } -} - -export namespace WUListQueries { - export interface Request { - QueryID: string; - QueryName: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface ClusterQueryState { - Cluster: string; - State: string; - Errors: string; - MixedNodeStates: boolean; - } - - export interface Clusters { - ClusterQueryState: ClusterQueryState[]; - } - - export interface QuerySetQuery { - Id: string; - Name: string; - Wuid: string; - Dll: string; - Suspended: boolean; - Clusters: Clusters; - memoryLimit: string; - timeLimit: number; - warnTimeLimit: number; - priority: string; - Comment: string; - QuerySetId: string; - IsLibrary: boolean; - Activated: boolean; - PublishedBy: string; - snapshot: string; - } - - export interface QuerysetQueries { - QuerySetQuery: QuerySetQuery[]; - } - - export interface Response { - Exceptions: Exceptions; - NumberOfQueries: number; - CacheHint: number; - QuerysetQueries: QuerysetQueries; - } -} - -export namespace WUPushEvent { - export interface Request { - EventName: string; - EventText: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Response { - Exceptions: Exceptions; - } -} - -export namespace WUUpdate { - export enum Action { - Unknown = 0, - Compile, - Check, - Run, - ExecuteExisting, - Pause, - PauseNow, - Resume, - Debug, - __size - } - - export interface Request { - Wuid: string; - State?: string; - StateOrig?: string; - Jobname?: string; - JobnameOrig?: string; - QueryText?: string; - Action?: Action; - Description?: string; - DescriptionOrig?: string; - AddDrilldownFields?: boolean; - ResultLimit?: number; - Protected?: boolean; - ProtectedOrig?: boolean; - PriorityClass?: string; - PriorityLevel?: string; - Scope?: string; - ScopeOrig?: string; - ClusterSelection?: string; - ClusterOrig?: string; - XmlParams?: string; - ThorSlaveIP?: string; - QueryMainDefinition?: string; - DebugValues?: DebugValues; - ApplicationValues?: ApplicationValues; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Query { - Text: string; - Cpp: string; - ResTxt: string; - Dll: string; - ThorLog: string; - QueryMainDefinition: string; - } - - export interface ECLHelpFile { - Name: string; - Type: string; - IPAddress: string; - Description: string; - FileSize: number; - PID: number; - minActivityId: number; - maxActivityId: number; - } - - export interface Helpers { - ECLHelpFile: ECLHelpFile[]; - } - - export interface ECLException { - Source: string; - Severity: string; - Code: number; - Message: string; - FileName: string; - LineNo: number; - Column: number; - Activity: number; - } - - export interface Exceptions2 { - ECLException: ECLException[]; - } - - export interface ECLGraph { - Name: string; - Label: string; - Type: string; - Running: boolean; - Complete: boolean; - Failed: boolean; - RunningId: number; - WhenStarted: string; - WhenFinished: string; - } - - export interface Graphs { - ECLGraph: ECLGraph[]; - } - - export interface ECLSourceFiles { - ECLSourceFile: any[]; - } - - export interface ECLSourceFile { - FileCluster: string; - Name: string; - IsSuperFile: boolean; - Subs: number; - Count: number; - ECLSourceFiles: ECLSourceFiles; - } - - export interface SourceFiles { - ECLSourceFile: ECLSourceFile[]; - } - - export interface ECLSchemaItem { - ColumnName: string; - ColumnType: string; - ColumnTypeCode: number; - isConditional: boolean; - } - - export interface ECLSchemas { - ECLSchemaItem: ECLSchemaItem[]; - } - - export interface ECLResult { - Name: string; - Sequence: number; - Value: string; - Link: string; - FileName: string; - IsSupplied: boolean; - ShowFileContent: boolean; - Total: number; - ECLSchemas: ECLSchemas; - XmlSchema: string; - } - - export interface Results { - ECLResult: ECLResult[]; - } - - export interface ECLSchemaItem2 { - ColumnName: string; - ColumnType: string; - ColumnTypeCode: number; - isConditional: boolean; - } - - export interface ECLSchemas2 { - ECLSchemaItem: ECLSchemaItem2[]; - } - - export interface ECLResult2 { - Name: string; - Sequence: number; - Value: string; - Link: string; - FileName: string; - IsSupplied: boolean; - ShowFileContent: boolean; - Total: number; - ECLSchemas: ECLSchemas2; - XmlSchema: string; - } - - export interface Variables { - ECLResult: ECLResult2[]; - } - - export interface ECLTimer { - Name: string; - Value: string; - count: number; - GraphName: string; - SubGraphId: number; - } - - export interface Timers { - ECLTimer: ECLTimer[]; - } - - export interface DebugValue { - Name: string; - Value: string; - } - - export interface DebugValues { - DebugValue: DebugValue[]; - } - - export interface ApplicationValue { - Application: string; - Name: string; - Value: string; - } - - export interface ApplicationValues { - ApplicationValue: ApplicationValue[]; - } - - export interface ECLWorkflow { - WFID: string; - EventName: string; - EventText: string; - Count: number; - CountRemaining: number; - } - - export interface Workflows { - ECLWorkflow: ECLWorkflow[]; - } - - export interface ECLTimingData { - Name: string; - GraphNum: number; - SubGraphNum: number; - GID: number; - Min: number; - MS: number; - } - - export interface TimingData { - ECLTimingData: ECLTimingData[]; - } - - export interface AllowedClusters { - AllowedCluster: string[]; - } - - export interface ThorLogInfo { - ProcessName: string; - ClusterGroup: string; - LogDate: string; - NumberSlaves: number; - } - - export interface ThorLogList { - ThorLogInfo: ThorLogInfo[]; - } - - export interface ResourceURLs { - URL: string[]; - } - - export interface Workunit { - Wuid: string; - Owner: string; - Cluster: string; - RoxieCluster: string; - Jobname: string; - Queue: string; - StateID: number; - State: string; - StateEx: string; - Description: string; - Protected: boolean; - Active: boolean; - Action: number; - ActionEx: string; - DateTimeScheduled: string; - PriorityClass: number; - PriorityLevel: number; - Scope: string; - Snapshot: string; - ResultLimit: number; - Archived: boolean; - IsPausing: boolean; - ThorLCR: boolean; - EventSchedule: number; - HaveSubGraphTimings: boolean; - TotalClusterTime: string; - AbortBy: string; - AbortTime: string; - Query: Query; - Helpers: Helpers; - Exceptions: Exceptions2; - Graphs: Graphs; - SourceFiles: SourceFiles; - Results: Results; - Variables: Variables; - Timers: Timers; - DebugValues: DebugValues; - ApplicationValues: ApplicationValues; - Workflows: Workflows; - TimingData: TimingData; - AllowedClusters: AllowedClusters; - ErrorCount: number; - WarningCount: number; - InfoCount: number; - AlertCount: number; - GraphCount: number; - SourceFileCount: number; - ResultCount: number; - VariableCount: number; - TimerCount: number; - HasDebugValue: boolean; - ApplicationValueCount: number; - XmlParams: string; - AccessFlag: number; - ClusterFlag: number; - HelpersDesc: string; - GraphsDesc: string; - SourceFilesDesc: string; - ResultsDesc: string; - VariablesDesc: string; - TimersDesc: string; - DebugValuesDesc: string; - ApplicationValuesDesc: string; - WorkflowsDesc: string; - HasArchiveQuery: boolean; - ThorLogList: ThorLogList; - ResourceURLs: ResourceURLs; - ResultViewCount: number; - ResourceURLCount: number; - DebugValueCount: number; - WorkflowCount: number; - HelpersCount: number; - } - - export interface Response { - Exceptions: Exceptions; - Workunit: Workunit; - } -} - -export namespace WUSubmit { - export interface Request { - Wuid: string; - Cluster: string; - Queue?: string; - Snapshot?: string; - MaxRunTime?: number; - BlockTillFinishTimer?: boolean; - SyntaxCheck?: boolean; - NotifyCluster?: boolean; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Response { - Exceptions: Exceptions; - } -} - -export namespace WUResubmit { - export interface Request { - Wuids: string[]; - ResetWorkflow: boolean; - CloneWorkunit: boolean; - BlockTillFinishTimer?: number; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface WU { - WUID: string; - ParentWUID: string; - } - - export interface WUs { - WU: WU[]; - } - - export interface Response { - Exceptions: Exceptions; - WUs: WUs; - } -} - -export namespace WUQueryDetails { - export interface Request { - QueryId: string; - QuerySet: string; - IncludeStateOnClusters: boolean; - IncludeSuperFiles: boolean; - IncludeWsEclAddresses: boolean; - CheckAllNodes: boolean; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface ClusterQueryState { - Cluster: string; - State: string; - Errors: string; - MixedNodeStates: boolean; - } - - export interface Clusters { - ClusterQueryState: ClusterQueryState[]; - } - - export interface LogicalFiles { - Item: string[]; - } - - export interface SubFiles { - File: string[]; - } - - export interface SuperFiles2 { - SuperFile: any[]; - } - - export interface SuperFile { - Name: string; - SubFiles: SubFiles; - SuperFiles: SuperFiles2; - } - - export interface SuperFiles { - SuperFile: SuperFile[]; - } - - export interface LibrariesUsed { - Item: string[]; - } - - export interface WsEclAddresses { - Address: string[]; - } - - export interface ECLGraph { - Name: string; - Label: string; - Type: string; - Running: boolean; - Complete: boolean; - Failed: boolean; - RunningId: number; - WhenStarted: string; - WhenFinished: string; - } - - export interface WUGraphs { - ECLGraph: ECLGraph[]; - } - - export interface ECLTimer { - Name: string; - Value: string; - count: number; - GraphName: string; - SubGraphId: number; - } - - export interface WUTimers { - ECLTimer: ECLTimer[]; - } - - export interface Response { - Exceptions: Exceptions; - QueryId: string; - QuerySet: string; - QueryName: string; - Wuid: string; - Dll: string; - Suspended: boolean; - Activated: boolean; - SuspendedBy: string; - Clusters: Clusters; - PublishedBy: string; - Comment: string; - LogicalFiles: LogicalFiles; - SuperFiles: SuperFiles; - IsLibrary: boolean; - Priority: string; - WUSnapShot: string; - CompileTime: string; - LibrariesUsed: LibrariesUsed; - CountGraphs: number; - ResourceURLCount: number; - WsEclAddresses: WsEclAddresses; - WUGraphs: WUGraphs; - WUTimers: WUTimers; - } -} - -export namespace WUAction { - export type Type = "SetToFailed" | "Pause" | "PauseNow" | "Resume" | "Abort" | "Delete" | "Restore" | "Deschedule" | "Reschedule" | "Protect" | "Unprotect"; - export interface Request { - Wuids: string[]; - WUActionType: Type; - Cluster?: string; - Owner?: string; - State?: string; - StartDate?: string; - EndDate?: string; - ECL?: string; - Jobname?: string; - Test?: string; - CurrentPage?: number; - PageSize?: number; - Sortby?: number; - Descending?: boolean; - EventServer?: string; - EventName?: string; - PageFrom?: number; - BlockTillFinishTimer?: number; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface WUActionResult { - Wuid: string; - Action: string; - Result: string; - } - - export interface ActionResults { - WUActionResult: WUActionResult[]; - } - - export interface Response { - Exceptions: Exceptions; - ActionResults: ActionResults; - } -} - -export namespace WUGetZAPInfo { - export interface Request { - WUID: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Response { - Exceptions: Exceptions; - WUID: string; - ESPIPAddress?: string; - ESPApplication?: string; - ThorIPAddress?: string; - ThorProcesses?: string; - BuildVersion: string; - Archive: string; - } -} - -export namespace WUShowScheduled { - export interface Request { - Cluster: string; - EventName: string; - PushEventName: string; - PushEventText: string; - State: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface ServerInfo { - Name: string; - NetAddress: string; - } - - export interface Clusters { - ServerInfo: ServerInfo[]; - } - - export interface ScheduledWU { - Wuid: string; - Cluster: string; - EventName: string; - EventText: string; - JobName: string; - StateID: number; - State: string; - Owner: string; - } - - export interface Workunits { - ScheduledWU: ScheduledWU[]; - } - - export interface Response { - Exceptions: Exceptions; - ClusterSelected: number; - EventName: string; - PushEventName: string; - PushEventText: string; - Query: string; - Clusters: Clusters; - Workunits: Workunits; - } -} - -export namespace WUQuerySetQueryAction { - export interface Request { - Action: string; - QuerySetName: string; - Queries: any[]; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Result { - QueryId: string; - Suspended: boolean; - Success: boolean; - Code: number; - Message: string; - } - - export interface Results { - Result: Result[]; - } - - export interface Response { - Exceptions: Exceptions; - Action: string; - QuerySetName: string; - Results: Results; - } -} - -export namespace WUQuerySetAliasAction { - export interface Request { - Action: string; - QuerySetName: string; - Queries: any[]; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Result { - Name: string; - Success: boolean; - Code: number; - Message: string; - } - - export interface Results { - Result: Result[]; - } - - export interface Response { - Exceptions: Exceptions; - Action: string; - QuerySetName: string; - Results: Results; - } -} - -export namespace WUQueryFiles { - export interface Request { - Target: string; - QueryId: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface File { - Error: string; - LogicalName: string; - } - - export interface Files { - File: File[]; - } - - export interface SubFiles { - File: string[]; - } - - export interface SuperFile { - Name: string; - SubFiles: SubFiles; - SuperFiles: SuperFiles; - } - - export interface SuperFiles { - SuperFile: SuperFile[]; - } - - export interface QueryUsingFile { - Id: string; - Package: string; - } - - export interface Queries { - QueryUsingFile: QueryUsingFile[]; - } - - export interface Response { - Exceptions: Exceptions; - Files: Files; - SuperFiles: SuperFiles; - Queries: Queries; - } -} - -export namespace WUPublishWorkunit { - export interface Request { - Wuid: string; - Cluster: string; - JobName: string; - Activate: boolean; - NotifyCluster?: boolean; - Wait?: number; - NoReload?: boolean; - UpdateWorkUnitName?: boolean; - memoryLimit?: string; - TimeLimit?: string; - WarnTimeLimit?: string; - Priority?: string; - RemoteDali?: string; - Comment?: string; - DontCopyFiles?: boolean; - SourceProcess?: string; - AllowForeignFiles: boolean; - UpdateDfs?: boolean; - UpdateSuperFiles?: boolean; - UpdateCloneFrom?: boolean; - AppendCluster?: boolean; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Clusters { - Item: string[]; - } - - export interface WULogicalFileCopyInfo { - IsIndex: boolean; - LogicalName: string; - DfuCopyWuid: string; - DfuCopyError: string; - Clusters: Clusters; - } - - export interface OnCluster { - WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; - } - - export interface Clusters2 { - Item: string[]; - } - - export interface WULogicalFileCopyInfo2 { - IsIndex: boolean; - LogicalName: string; - DfuCopyWuid: string; - DfuCopyError: string; - Clusters: Clusters2; - } - - export interface NotOnCluster { - WULogicalFileCopyInfo: WULogicalFileCopyInfo2[]; - } - - export interface Clusters3 { - Item: string[]; - } - - export interface WULogicalFileCopyInfo3 { - IsIndex: boolean; - LogicalName: string; - DfuCopyWuid: string; - DfuCopyError: string; - Clusters: Clusters3; - } - - export interface Foreign { - WULogicalFileCopyInfo: WULogicalFileCopyInfo3[]; - } - - export interface Clusters4 { - Item: string[]; - } - - export interface WULogicalFileCopyInfo4 { - IsIndex: boolean; - LogicalName: string; - DfuCopyWuid: string; - DfuCopyError: string; - Clusters: Clusters4; - } - - export interface NotFound { - WULogicalFileCopyInfo: WULogicalFileCopyInfo4[]; - } - - export interface Cluster { - ClusterName: string; - OnCluster: OnCluster; - NotOnCluster: NotOnCluster; - Foreign: Foreign; - NotFound: NotFound; - } - - export interface ClusterFiles { - Cluster: Cluster[]; - } - - export interface File { - Error: string; - LogicalName: string; - } - - export interface FileErrors { - File: File[]; - } - - export interface Response { - Exceptions: Exceptions; - Wuid: string; - Result: string; - QuerySet: string; - QueryName: string; - QueryId: string; - ReloadFailed: boolean; - Suspended: boolean; - ErrorMessage: string; - ClusterFiles: ClusterFiles; - FileErrors: FileErrors; - } -} - -export namespace WUGetGraph { - - export interface Request { - Wuid: string; - GraphName: string; - SubGraphId: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface ECLGraphEx { - Name: string; - Label: string; - Type: string; - Graph: string; - Running: boolean; - RunningId: number; - Complete: boolean; - Failed: boolean; - } - - export interface Graphs { - ECLGraphEx: ECLGraphEx[]; - } - - export interface Response { - Exceptions: Exceptions; - Graphs: Graphs; - } -} - -export namespace WUResult { - export interface Request { - Wuid?: string; - Sequence?: number; - ResultName?: string; - LogicalName?: string; - Cluster?: string; - SuppressXmlSchema?: boolean; - BypassCachedResult?: boolean; - FilterBy?: any; - Start: number; - Count: number; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface XmlSchema { - "@name": string; - xml: string; - } - - export interface Result { - XmlSchema: XmlSchema; - "@xmlSchema": string; - Row: any[]; - } - - export interface Response { - Exceptions: Exceptions; - Wuid: string; - Sequence: number; - LogicalName: string; - Cluster: string; - Name: string; - Start: number; - Requested: number; - Count: number; - Total: number; - Result: Result; - } -} - -export namespace WUQueryGetGraph { - export interface Request { - Target: string; - QueryId: string; - GraphName: string; - SubGraphId: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface ECLGraphEx { - Name: string; - Label: string; - Type: string; - Graph: string; - Running: boolean; - RunningId: number; - Complete: boolean; - Failed: boolean; - } - - export interface Graphs { - ECLGraphEx: ECLGraphEx[]; - } - - export interface Response { - Exceptions: Exceptions; - Graphs: Graphs; - } -} - -export interface WUFileRequest { - Wuid: string; - Type: string; - Name?: string; - Option?: string; - SlaveIP?: string; - IPAddress?: string; - Description?: string; - QuerySet?: string; - Query?: string; - Process?: string; - ClusterGroup?: string; - LogDate?: string; - SlaveNumber?: number; - SizeLimit?: number; - PlainText?: string; -} - -export namespace WUGetStats { - export interface Request { - WUID: string; - CreatorType: string; - Creator: string; - ScopeType: string; - Scope: string; - Kind: string; - Measure: string; - MinScopeDepth: number; - MaxScopeDepth: number; - IncludeGraphs: boolean; - CreateDescriptions: boolean; - MinValue: number; - MaxValue: number; - Filter: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface WUStatisticItem { - Creator: string; - CreatorType: string; - Scope: string; - ScopeType: string; - Description: string; - TimeStamp: string; - Measure: string; - Kind: string; - Value: string; - RawValue: number; - Count: number; - Max: number; - Wuid: string; - } - - export interface Statistics { - WUStatisticItem: WUStatisticItem[]; - } - - export interface Response { - Exceptions: Exceptions; - WUID: string; - Statistics: Statistics; - } -} - -export namespace WUCDebug { - export interface Request { - Wuid: string; - Command: string; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Response { - Exceptions: Exceptions; - Result: string; - } -} - -export namespace WUDetailsMeta { - export interface Request { - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Property { - Name: string; - ValueType: string; - } - - export interface Properties { - Property: Property[]; - } - - export interface ScopeTypes { - ScopeType: string[]; - } - - export interface Measures { - Measure: string[]; - } - - export interface Activity { - Kind: number; - Name: string; - IsSink: boolean; - IsSource: boolean; - } - - export interface Activities { - Activity: Activity[]; - } - - export interface Response { - Exceptions: Exceptions; - Properties: Properties; - ScopeTypes: ScopeTypes; - Measures: Measures; - Activities: Activities; - } -} - -export namespace WUDetails { - export namespace RequestNS { - - export interface Scopes { - Scope: string[]; - } - - export interface Ids { - id: string[]; - } - - export interface ScopeTypes { - ScopeType: string[]; - } - - export interface PropertyFilter { - Name?: string; - ExactValue?: string; - MinValue?: string; - MaxValue?: string; - } - - export interface PropertyFilters { - PropertyFilter: PropertyFilter[]; - } - - export interface ScopeFilter { - MaxDepth?: number; - Scopes?: Scopes; - Ids?: string[]; - ScopeTypes?: string[]; - PropertyFilters?: PropertyFilters; - } - - export interface ScopeTypes2 { - ScopeType: string[]; - } - - export interface NestedFilter { - Depth?: number; - ScopeTypes: string[]; - } - - export interface Properties { - Property: string[]; - } - - export interface Properties2 { - Property: string[]; - } - - export interface Extra { - scopeType: string; - Properties: Properties2; - } - - export interface ExtraProperties { - Extra: Extra[]; - } - - export interface PropertiesToReturn { - AllStatistics?: boolean; - AllAttributes?: boolean; - AllHints?: boolean; - AllScopes?: boolean; - AllProperties?: boolean; - AllNotes?: boolean; - MinVersion?: string; - Measure?: string; - Properties?: string[]; - ExtraProperties?: ExtraProperties; - } - - export interface ScopeOptions { - IncludeMatchedScopesInResults?: boolean; - IncludeScope?: boolean; - IncludeId?: boolean; - IncludeScopeType?: boolean; - } - - export interface PropertyOptions { - IncludeName?: boolean; - IncludeRawValue?: boolean; - IncludeFormatted?: boolean; - IncludeMeasure?: boolean; - IncludeCreator?: boolean; - IncludeCreatorType?: boolean; - } - } - - export interface Request { - WUID: string; - ScopeFilter?: RequestNS.ScopeFilter; - NestedFilter?: RequestNS.NestedFilter; - PropertiesToReturn: RequestNS.PropertiesToReturn; - Filter?: string; - ScopeOptions: RequestNS.ScopeOptions; - PropertyOptions: RequestNS.PropertyOptions; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface Property { - Name: string; - RawValue: string; - Formatted: string; - Measure: string; - Creator: string; - CreatorType: string; - } - - export interface Properties { - Property: Property[]; - } - - export interface Note { - Source: string; - Message: string; - ErrorCode: number; - Severity: string; - Cost: number; - } - - export interface Notes { - Note: Note[]; - } - - export interface Scope { - ScopeName: string; - Id: string; - ScopeType: string; - Properties: Properties; - Notes: Notes; - } - - export interface Scopes { - Scope: Scope[]; - } - - export interface Response { - Exceptions: Exceptions; - MaxVersion: string; - WUID: string; - Scopes: Scopes; +export namespace WUUpdate { + export enum Action { + Unknown = 0, + Compile, + Check, + Run, + ExecuteExisting, + Pause, + PauseNow, + Resume, + Debug, + __size } } - -export function isWUQueryECLWorkunit(_: WUQuery.ECLWorkunit | WUInfo.Workunit): _ is WUQuery.ECLWorkunit { - return (_ as WUQuery.ECLWorkunit).TotalClusterTime !== undefined; -} - -export function isWUInfoWorkunit(_: WUQuery.ECLWorkunit | WUInfo.Workunit): _ is WUInfo.Workunit { - return (_ as WUInfo.Workunit).StateEx !== undefined; +export function isECLResult(_: any): _ is WsWorkunits.ECLResult { + return typeof (_ as WsWorkunits.ECLResult).Name === "string"; } -export namespace Ping { - export interface Response { - result: boolean; - error?: any; - } +export function isWUQueryECLWorkunit(_: WsWorkunits.ECLWorkunit | WsWorkunits.Workunit): _ is WsWorkunits.ECLWorkunit { + return (_ as WsWorkunits.ECLWorkunit).TotalClusterTime !== undefined; } -export namespace WUQueryGetSummaryStats { - - export interface Request { - Target: string; - QueryId: string; - FromTime?: string; - ToTime?: string; - IncludeRawStats?: boolean; - } - - export interface Exception { - Code: string; - Audience: string; - Source: string; - Message: string; - } - - export interface Exceptions { - Source: string; - Exception: Exception[]; - } - - export interface QuerySummaryStat { - Endpoint: string; - Status: string; - StartTime: string; - EndTime: string; - CountTotal: number; - CountFailed: number; - AverageSlavesReplyLen: number; - AverageBytesOut: number; - SizeAvgPeakMemory: number; - TimeAvgTotalExecuteMinutes: number; - TimeMinTotalExecuteMinutes: number; - TimeMaxTotalExecuteMinutes: number; - Percentile97: number; - Percentile97Estimate: boolean; - } - - export interface StatsList { - QuerySummaryStats: QuerySummaryStat[]; - } - - export interface QuerySummaryStat2 { - Endpoint: string; - Status: string; - StartTime: string; - EndTime: string; - CountTotal: number; - CountFailed: number; - AverageSlavesReplyLen: number; - AverageBytesOut: number; - SizeAvgPeakMemory: number; - TimeAvgTotalExecuteMinutes: number; - TimeMinTotalExecuteMinutes: number; - TimeMaxTotalExecuteMinutes: number; - Percentile97: number; - Percentile97Estimate: boolean; - } - - export interface AggregateQueryStatsList { - QuerySummaryStats: QuerySummaryStat2[]; - } - - export interface QueryStatsRecord { - StartTime: string; - ElapsedTimeMs: number; - MemoryUsed: number; - BytesOut: number; - SlavesReplyLen: number; - Failed: boolean; - } - - export interface QueryStatsRecordList { - QueryStatsRecord: QueryStatsRecord[]; - } - - export interface QueryStat { - ID: string; - AggregateQueryStatsList: AggregateQueryStatsList; - QueryStatsRecordList: QueryStatsRecordList; - } - - export interface QueryStatsList2 { - QueryStats: QueryStat[]; - } - - export interface EndpointQueryStat { - Endpoint: string; - Status: string; - QueryStatsList: QueryStatsList2; - } - - export interface QueryStatsList { - EndpointQueryStats: EndpointQueryStat[]; - } - - export interface Response { - Exceptions: Exceptions; - StatsList: StatsList; - QueryStatsList: QueryStatsList; - } - +export function isWUInfoWorkunit(_: WsWorkunits.ECLWorkunit | WsWorkunits.Workunit): _ is WsWorkunits.Workunit { + return (_ as WsWorkunits.Workunit).StateEx !== undefined; } - -export class WorkunitsService extends Service { +export class WorkunitsService extends WorkunitsServiceBase { constructor(optsConnection: IOptions | IConnection) { - super(optsConnection, "WsWorkunits", "1.95"); + super(optsConnection); } opts() { @@ -2635,7 +75,7 @@ export class WorkunitsService extends Service { return this._connection.clone(); } - Ping(): Promise { + Ping(): Promise { return this._connection.send("Ping", {}, "json", false, undefined, "WsWorkunitsPingResponse").then((response) => { return { result: true }; }).catch((e: Error) => { @@ -2643,14 +83,14 @@ export class WorkunitsService extends Service { }); } - WUQuery(request: WUQuery.Request = {}): Promise { - return this._connection.send("WUQuery", request).then((response) => { + WUQuery(request: Partial = {}): Promise { + return super.WUQuery(request).then((response) => { return deepMixin({ Workunits: { ECLWorkunit: [] } }, response); }); } - WUInfo(_request: WUInfo.Request): Promise { - const request: WUInfo.Request = { + WUInfo(_request: Partial): Promise { + const request: Partial = { Wuid: "", TruncateEclTo64k: true, IncludeExceptions: false, @@ -2673,104 +113,44 @@ export class WorkunitsService extends Service { SuppressResultSchemas: true, ..._request }; - return this._connection.send("WUInfo", request); + return super.WUInfo(request); } - WUCreate(): Promise { - return this._connection.send("WUCreate"); + WUCreate(): Promise { + return super.WUCreate({}); } - WUUpdate(request: WUUpdate.Request): Promise { + WUUpdate(request: Partial): Promise { return this._connection.send("WUUpdate", request, "json", true); } - WUSubmit(request: WUSubmit.Request): Promise { - return this._connection.send("WUSubmit", request); - } - - WUResubmit(request: WUResubmit.Request): Promise { + WUResubmit(request: WsWorkunits.WUResubmit): Promise { this._connection.toESPStringArray(request, "Wuids"); - return this._connection.send("WUResubmit", request); - } - - WUQueryDetails(request: WUQueryDetails.Request): Promise { - return this._connection.send("WUQueryDetails", request); - } - - WUListQueries(request: WUListQueries.Request): Promise { - return this._connection.send("WUListQueries", request); - } - - WUPushEvent(request: WUPushEvent.Request): Promise { - return this._connection.send("WUPushEvent", request); + return super.WUResubmit(request); } - WUAction(request: WUAction.Request): Promise { + WUAction(request: Partial): Promise { (request as any).ActionType = request.WUActionType; // v5.x compatibility - return this._connection.send("WUAction", request); - } - - WUGetZAPInfo(request: WUGetZAPInfo.Request): Promise { - return this._connection.send("WUGetZAPInfo", request); - } - - WUShowScheduled(request: WUShowScheduled.Request): Promise { - return this._connection.send("WUShowScheduled", request); - } - - WUQuerySetAliasAction(request: WUQuerySetAliasAction.Request): Promise { - return this._connection.send("WUQuerySetAliasAction", request); - } - - WUQuerySetQueryAction(request: WUQuerySetQueryAction.Request): Promise { - return this._connection.send("WUQuerySetQueryAction", request); - } - - WUPublishWorkunit(request: WUPublishWorkunit.Request): Promise { - return this._connection.send("WUPublishWorkunit", request); - } - - WUQueryFiles(request: WUQueryFiles.Request): Promise { - return this._connection.send("WUQueryFiles", request); - } - - WUGetGraph(request: WUGetGraph.Request): Promise { - return this._connection.send("WUGetGraph", request); + return super.WUAction(request); } - WUResult(request: WUResult.Request, abortSignal?: AbortSignal): Promise { + WUResult(request: Partial, abortSignal?: AbortSignal): Promise { return this._connection.send("WUResult", request, "json", false, abortSignal); } - WUQueryGetGraph(request: WUQueryGetGraph.Request): Promise { - return this._connection.send("WUQueryGetGraph", request); - } - - WUFile(request: WUFileRequest): Promise { + WUFileEx(request: Partial): Promise { return this._connection.send("WUFile", request, "text"); } - WUGetStats(request: WUGetStats.Request): Promise { - return this._connection.send("WUGetStats", request); - } - - WUQueryGetSummaryStats(request: WUQueryGetSummaryStats.Request): Promise { - return this._connection.send("WUQueryGetSummaryStats", request); - } - - private _WUDetailsMetaPromise: Promise; - WUDetailsMeta(request: WUDetailsMeta.Request): Promise { + private _WUDetailsMetaPromise: Promise; + WUDetailsMeta(request: WsWorkunits.WUDetailsMeta): Promise { if (!this._WUDetailsMetaPromise) { - this._WUDetailsMetaPromise = this._connection.send("WUDetailsMeta", request); + this._WUDetailsMetaPromise = super.WUDetailsMeta(request); } return this._WUDetailsMetaPromise; } - WUDetails(request: WUDetails.Request): Promise { - return this._connection.send("WUDetails", request); - } - - WUCDebug(request: WUCDebug.Request): Promise { + WUCDebugEx(request: WsWorkunits.WUCDebug): Promise { return this._connection.send("WUCDebug", request, undefined, undefined, undefined, "WUDebug").then((response) => { const retVal = xml2json(response.Result); const children = retVal.children(); diff --git a/packages/comms/src/services/wsdl/WsWorkunits/v1.97/WsWorkunits.ts b/packages/comms/src/services/wsdl/WsWorkunits/v1.97/WsWorkunits.ts new file mode 100644 index 0000000000..a7412ef115 --- /dev/null +++ b/packages/comms/src/services/wsdl/WsWorkunits/v1.97/WsWorkunits.ts @@ -0,0 +1,3134 @@ +import { IConnection, IOptions } from "../../../../connection"; +import { Service } from "../../../../espConnection"; + +export namespace WsWorkunits { + + export type int = number; + export type double = number; + export type long = number; + export type nonNegativeInteger = number; + export type unsignedInt = number; + export type base64Binary = string; + export type dateTime = string; + export type integer = number; + + export enum ECLWUActions { + Abort = "Abort", + Delete = "Delete", + Deschedule = "Deschedule", + Reschedule = "Reschedule", + Pause = "Pause", + PauseNow = "PauseNow", + Protect = "Protect", + Unprotect = "Unprotect", + Restore = "Restore", + Resume = "Resume", + SetToFailed = "SetToFailed", + Archive = "Archive" + } + + export enum LogSelectColumnMode { + MIN = 0, + DEFAULT = 1, + ALL = 2, + CUSTOM = 3 + } + + export enum SortDirection { + ASC = 0, + DSC = 1 + } + + export enum LogEventClass { + ALL = "ALL", + DIS = "DIS", + ERR = "ERR", + WRN = "WRN", + INF = "INF", + PRO = "PRO", + MET = "MET", + EVT = "EVT" + } + + export enum WUDetailsAttrValueType { + Single = "Single", + List = "List", + Multi = "Multi" + } + + export enum EclDefinitionActions { + SyntaxCheck = "SyntaxCheck", + Deploy = "Deploy", + Publish = "Publish" + } + + export enum ErrorMessageFormat { + xml = "xml", + json = "json", + text = "text" + } + + export enum LogAccessLogFormat { + XML = 0, + JSON = 1, + CSV = 2 + } + + export enum WUExceptionSeverity { + info = "info", + warning = "warning", + error = "error", + alert = "alert" + } + + export enum WUQueryFilterSuspendedType { + Allqueries = "Allqueries", + Notsuspended = "Notsuspended", + Suspended = "Suspended", + Suspendedbyuser = "Suspendedbyuser", + Suspendedbyfirstnode = "Suspendedbyfirstnode", + Suspendedbyanynode = "Suspendedbyanynode" + } + + export enum WUQuerySetFilterType { + All = "All", + Id = "Id", + Name = "Name", + Alias = "Alias", + Status = "Status" + } + + export enum WUProtectFilter { + All = "All", + Protected = "Protected", + NotProtected = "NotProtected" + } + + export enum QuerySetAliasActionTypes { + Deactivate = "Deactivate" + } + + export enum QuerysetImportActivation { + None = "None", + ActivateImportedActive = "ActivateImportedActive" + } + + export enum QuerySetQueryActionTypes { + Suspend = "Suspend", + Unsuspend = "Unsuspend", + ToggleSuspend = "ToggleSuspend", + Activate = "Activate", + Delete = "Delete", + DeleteQueriesAndWUs = "DeleteQueriesAndWUs", + RemoveAllAliases = "RemoveAllAliases", + ResetQueryStats = "ResetQueryStats" + } + + export enum WUQueryActivationMode { + DoNotActivateQuery = 0, + ActivateQuery = 1, + ActivateQuerySuspendPrevious = 2, + ActivateQueryDeletePrevious = 3 + } + + export interface GVCAjaxGraph { + Name: string; + GraphName: string; + SubGraphId: int; + SubGraphOnly: boolean; + } + + export interface GVCAjaxGraphResponse { + Name: string; + GraphName: string; + GraphType: string; + SubGraphId: int; + SubGraphOnly: boolean; + } + + export interface Ping { + + } + + export interface WsWorkunitsPingResponse { + + } + + export interface Wuids { + Item: string[]; + } + + export interface WUAbort { + Wuids: Wuids; + BlockTillFinishTimer: int; + } + + export interface Exception { + Code: string; + Audience: string; + Source: string; + Message: string; + } + + export interface Exceptions { + Source: string; + Exception: Exception[]; + } + + export interface WUActionResult { + Wuid: string; + Action: string; + Result: string; + } + + export interface ActionResults { + WUActionResult: WUActionResult[]; + } + + export interface WUAbortResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface WUAction { + Wuids: Wuids; + WUActionType: ECLWUActions; + Cluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + ECL: string; + Jobname: string; + Test: string; + CurrentPage: string; + PageSize: string; + Sortby: string; + Descending: boolean; + EventServer: string; + EventName: string; + PageFrom: string; + BlockTillFinishTimer: int; + } + + export interface WUActionResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface WUAddLocalFileToWorkunit { + Wuid: string; + Name: string; + Val: string; + DefVal: string; + Type: int; + Length: int; + } + + export interface WUAddLocalFileToWorkunitResponse { + Exceptions: Exceptions; + Wuid: string; + Name: string; + Result: string; + } + + export interface PropertyOptions { + IncludeName: boolean; + IncludeRawValue: boolean; + IncludeFormatted: boolean; + IncludeMeasure: boolean; + IncludeCreator: boolean; + IncludeCreatorType: boolean; + } + + export interface WUAnalyseHotspot { + Wuid: string; + RootScope: string; + OptOnlyActive: boolean; + OnlyCriticalPath: boolean; + IncludeProperties: boolean; + IncludeStatistics: boolean; + ThresholdPercent: double; + PropertyOptions: PropertyOptions; + } + + export interface Property { + Name: string; + RawValue: string; + Formatted: string; + Measure: string; + Creator: string; + CreatorType: string; + } + + export interface Properties { + Property: Property[]; + } + + export interface Note { + Source: string; + Message: string; + ErrorCode: nonNegativeInteger; + Severity: string; + Cost: nonNegativeInteger; + } + + export interface Notes { + Note: Note[]; + } + + export interface Activity { + ScopeName: string; + Id: string; + ScopeType: string; + Properties: Properties; + Notes: Notes; + SinkActivity: string; + } + + export interface Activities { + Activity: Activity[]; + } + + export interface Dependency { + ScopeName: string; + Id: string; + ScopeType: string; + Properties: Properties; + Notes: Notes; + SinkActivity: string; + } + + export interface Dependencies { + Dependency: Dependency[]; + } + + export interface WUAnalyseHotspotResponse { + Exceptions: Exceptions; + RootScope: string; + RootTime: long; + Activities: Activities; + Dependencies: Dependencies; + } + + export interface WUCDebug { + Wuid: string; + Command: string; + } + + export interface WUDebugResponse { + Exceptions: Exceptions; + Result: string; + } + + export interface WUCheckFeatures { + IncludeFullVersion: boolean; + } + + export interface Deployment { + UseCompression: boolean; + } + + export interface WUCheckFeaturesResponse { + Exceptions: Exceptions; + BuildVersionMajor: int; + BuildVersionMinor: int; + BuildVersionPoint: int; + maxRequestEntityLength: unsignedInt; + Deployment: Deployment; + BuildVersion: string; + BuildMaturity: string; + BuildTagTimestamp: string; + } + + export interface WUClusterJobQueueLOG { + Cluster: string; + StartDate: string; + EndDate: string; + } + + export interface WUClusterJobQueueLOGResponse { + Exceptions: Exceptions; + thefile: base64Binary; + } + + export interface WUClusterJobQueueXLS { + Cluster: string; + StartDate: string; + EndDate: string; + ShowType: string; + } + + export interface WUClusterJobQueueXLSResponse { + Exceptions: Exceptions; + Result: base64Binary; + } + + export interface WUClusterJobSummaryXLS { + Cluster: string; + StartDate: string; + EndDate: string; + ShowAll: boolean; + BusinessStartTime: string; + BusinessEndTime: string; + } + + export interface WUClusterJobSummaryXLSResponse { + Exceptions: Exceptions; + Result: base64Binary; + } + + export interface WUClusterJobXLS { + Cluster: string; + StartDate: string; + EndDate: string; + ShowAll: boolean; + BusinessStartTime: string; + BusinessEndTime: string; + } + + export interface WUClusterJobXLSResponse { + Exceptions: Exceptions; + Result: base64Binary; + } + + export interface WUCompileECL { + ECL: string; + ModuleName: string; + AttributeName: string; + Queue: string; + Cluster: string; + Snapshot: string; + IncludeDependencies: boolean; + IncludeComplexity: boolean; + TimeToWait: int; + } + + export interface ECLException { + Source: string; + Severity: string; + Code: int; + Message: string; + FileName: string; + LineNo: int; + Column: int; + Activity: int; + Scope: string; + Priority: int; + } + + export interface Errors { + ECLException: ECLException[]; + } + + export interface ECLAttribute { + ModuleName: string; + AttributeName: string; + IsLocked: boolean; + IsCheckedOut: boolean; + IsSandbox: boolean; + IsOrphaned: boolean; + } + + export interface Dependencies2 { + ECLAttribute: ECLAttribute[]; + } + + export interface WUCompileECLResponse { + Exceptions: Exceptions; + Complexity: string; + Errors: Errors; + Dependencies: Dependencies2; + } + + export interface WUCopyLogicalFiles { + Wuid: string; + Cluster: string; + CopyLocal: boolean; + } + + export interface Clusters { + Item: string[]; + } + + export interface WULogicalFileCopyInfo { + IsIndex: boolean; + LogicalName: string; + DfuCopyWuid: string; + DfuCopyError: string; + Clusters: Clusters; + } + + export interface OnCluster { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface NotOnCluster { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface Foreign { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface NotFound { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface Cluster { + ClusterName: string; + OnCluster: OnCluster; + NotOnCluster: NotOnCluster; + Foreign: Foreign; + NotFound: NotFound; + } + + export interface ClusterFiles { + Cluster: Cluster[]; + } + + export interface WUCopyLogicalFilesResponse { + Exceptions: Exceptions; + Wuid: string; + ClusterFiles: ClusterFiles; + } + + export interface WUCopyQuerySet { + Source: string; + Target: string; + ActiveOnly: boolean; + CloneActiveState: boolean; + AllowForeignFiles: boolean; + DfsServer: string; + CopyFiles: boolean; + OverwriteDfs: boolean; + SourceProcess: string; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + SourceSSL: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + } + + export interface CopiedQueries { + QueryId: string[]; + } + + export interface ExistingQueries { + QueryId: string[]; + } + + export interface File { + Error: string; + LogicalName: string; + } + + export interface FileErrors { + File: File[]; + } + + export interface WUCopyQuerySetResponse { + Exceptions: Exceptions; + CopiedQueries: CopiedQueries; + ExistingQueries: ExistingQueries; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUCreate { + + } + + export interface Query { + Text: string; + Cpp: string; + ResTxt: string; + Dll: string; + ThorLog: string; + QueryMainDefinition: string; + } + + export interface ECLHelpFile { + Name: string; + Type: string; + IPAddress: string; + Description: string; + FileSize: long; + PID: unsignedInt; + minActivityId: unsignedInt; + maxActivityId: unsignedInt; + IsAvailable: boolean; + } + + export interface Helpers { + ECLHelpFile: ECLHelpFile[]; + } + + export interface Exceptions2 { + ECLException: ECLException[]; + } + + export interface ECLGraph { + Name: string; + Label: string; + Type: string; + Running: boolean; + Complete: boolean; + Failed: boolean; + RunningId: long; + WhenStarted: string; + WhenFinished: string; + } + + export interface Graphs { + ECLGraph: ECLGraph[]; + } + + export interface ECLSourceFiles { + ECLSourceFile: ECLSourceFile[]; + } + + export interface ECLSourceFile { + FileCluster: string; + Name: string; + IsSuperFile: boolean; + Subs: int; + Count: int; + ECLSourceFiles: ECLSourceFiles; + } + + export interface SourceFiles { + ECLSourceFile: ECLSourceFile[]; + } + + export interface ECLSchemaItem { + ColumnName: string; + ColumnType: string; + ColumnTypeCode: int; + isConditional: boolean; + } + + export interface ECLSchemas { + ECLSchemaItem: ECLSchemaItem[]; + } + + export interface ECLResult { + Name: string; + Sequence: int; + Value: string; + Link: string; + FileName: string; + IsSupplied: boolean; + ShowFileContent: boolean; + Total: long; + ECLSchemas: ECLSchemas; + XmlSchema: string; + } + + export interface Results { + ECLResult: ECLResult[]; + } + + export interface Variables { + ECLResult: ECLResult[]; + } + + export interface ECLTimer { + Name: string; + Value: string; + count: int; + GraphName: string; + SubGraphId: int; + Timestamp: long; + When: string; + } + + export interface Timers { + ECLTimer: ECLTimer[]; + } + + export interface DebugValue { + Name: string; + Value: string; + } + + export interface DebugValues { + DebugValue: DebugValue[]; + } + + export interface ApplicationValue { + Application: string; + Name: string; + Value: string; + } + + export interface ApplicationValues { + ApplicationValue: ApplicationValue[]; + } + + export interface ECLWorkflow { + WFID: string; + EventName: string; + EventText: string; + Count: int; + CountRemaining: int; + } + + export interface Workflows { + ECLWorkflow: ECLWorkflow[]; + } + + export interface ECLTimingData { + Name: string; + GraphNum: int; + SubGraphNum: int; + GID: int; + Min: int; + MS: int; + } + + export interface TimingData { + ECLTimingData: ECLTimingData[]; + } + + export interface AllowedClusters { + AllowedCluster: string[]; + } + + export interface ThorLogInfo { + ProcessName: string; + ClusterGroup: string; + LogDate: string; + NumberSlaves: int; + } + + export interface ThorLogList { + ThorLogInfo: ThorLogInfo[]; + } + + export interface ResourceURLs { + URL: string[]; + } + + export interface ServiceNames { + Item: string[]; + } + + export interface Workunit { + Wuid: string; + Owner: string; + Cluster: string; + RoxieCluster: string; + Jobname: string; + Queue: string; + StateID: int; + State: string; + StateEx: string; + Description: string; + Protected: boolean; + Active: boolean; + Action: int; + ActionEx: string; + DateTimeScheduled: dateTime; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + Snapshot: string; + ResultLimit: int; + Archived: boolean; + IsPausing: boolean; + ThorLCR: boolean; + EventSchedule: int; + TotalClusterTime: string; + AbortBy: string; + AbortTime: string; + Query: Query; + Helpers: Helpers; + Exceptions: Exceptions2; + Graphs: Graphs; + SourceFiles: SourceFiles; + Results: Results; + Variables: Variables; + Timers: Timers; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + Workflows: Workflows; + TimingData: TimingData; + AllowedClusters: AllowedClusters; + ErrorCount: int; + WarningCount: int; + InfoCount: int; + AlertCount: int; + GraphCount: int; + SourceFileCount: int; + ResultCount: int; + VariableCount: int; + TimerCount: int; + HasDebugValue: boolean; + ApplicationValueCount: int; + XmlParams: string; + AccessFlag: int; + ClusterFlag: int; + HelpersDesc: string; + GraphsDesc: string; + SourceFilesDesc: string; + ResultsDesc: string; + VariablesDesc: string; + TimersDesc: string; + DebugValuesDesc: string; + ApplicationValuesDesc: string; + WorkflowsDesc: string; + HasArchiveQuery: boolean; + ThorLogList: ThorLogList; + ResourceURLs: ResourceURLs; + ResultViewCount: int; + ResourceURLCount: int; + DebugValueCount: int; + WorkflowCount: int; + HelpersCount: int; + ServiceNames: ServiceNames; + ExecuteCost: double; + FileAccessCost: double; + CompileCost: double; + NoAccess: boolean; + } + + export interface WUCreateResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface WUCreateAndUpdate { + Wuid: string; + State: int; + StateOrig: int; + Jobname: string; + JobnameOrig: string; + QueryText: string; + Action: int; + Description: string; + DescriptionOrig: string; + AddDrilldownFields: boolean; + ResultLimit: int; + Protected: boolean; + ProtectedOrig: boolean; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + ScopeOrig: string; + ClusterSelection: string; + ClusterOrig: string; + XmlParams: string; + ThorSlaveIP: string; + QueryMainDefinition: string; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + } + + export interface WUUpdateResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface AbsoluteTimeRange { + StartDate: dateTime; + EndDate: dateTime; + } + + export interface CustomColumns { + Item: string[]; + } + + export interface ComponentsFilter { + Item: string[]; + } + + export interface LogFilter { + WildcardFilter: string; + AbsoluteTimeRange: AbsoluteTimeRange; + RelativeTimeRangeBuffer: unsignedInt; + LineLimit: unsignedInt; + LineStartFrom: long; + SelectColumnMode: LogSelectColumnMode; + CustomColumns: CustomColumns; + ComponentsFilter: ComponentsFilter; + Format: string; + sortByTimeDirection: SortDirection; + LogEventType: LogEventClass; + } + + export interface WUCreateZAPInfo { + Wuid: string; + ESPApplication: string; + ThorProcesses: string; + BuildVersion: string; + ProblemDescription: string; + WhatChanged: string; + WhereSlow: string; + ZAPFileName: string; + IncludeThorSlaveLog: string; + ZAPPassword: string; + SendEmail: boolean; + AttachZAPReportToEmail: boolean; + EmailFrom: string; + EmailSubject: string; + EmailBody: string; + LogFilter: LogFilter; + } + + export interface WUCreateZAPInfoResponse { + Exceptions: Exceptions; + thefile: base64Binary; + ZAPFileName: string; + } + + export interface WUDelete { + Wuids: Wuids; + BlockTillFinishTimer: int; + } + + export interface WUDeleteResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface NamedValue { + Name: string; + Value: string; + } + + export interface DebugValues2 { + NamedValue: NamedValue[]; + } + + export interface WUDeployWorkunit { + Cluster: string; + Name: string; + Wait: int; + ObjType: string; + FileName: string; + Object: base64Binary; + ResultLimit: int; + QueryMainDefinition: string; + Snapshot: string; + DebugValues: DebugValues2; + Protect: boolean; + } + + export interface WUDeployWorkunitResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface Scopes { + Scope: string[]; + } + + export interface Ids { + id: string[]; + } + + export interface ScopeTypes { + ScopeType: string[]; + } + + export interface PropertyFilter { + Name: string; + ExactValue: string; + MinValue: string; + MaxValue: string; + } + + export interface PropertyFilters { + PropertyFilter: PropertyFilter[]; + } + + export interface ScopeFilter { + MaxDepth: integer; + Scopes: Scopes; + Ids: Ids; + ScopeTypes: ScopeTypes; + PropertyFilters: PropertyFilters; + } + + export interface NestedFilter { + Depth: unsignedInt; + ScopeTypes: ScopeTypes; + } + + export interface Properties2 { + Property: string[]; + } + + export interface Extra { + scopeType: string; + Properties: Properties2; + } + + export interface ExtraProperties { + Extra: Extra[]; + } + + export interface PropertiesToReturn { + AllStatistics: boolean; + AllAttributes: boolean; + AllHints: boolean; + AllScopes: boolean; + AllProperties: boolean; + AllNotes: boolean; + MinVersion: string; + Measure: string; + Properties: Properties2; + ExtraProperties: ExtraProperties; + } + + export interface ScopeOptions { + IncludeMatchedScopesInResults: boolean; + IncludeScope: boolean; + IncludeId: boolean; + IncludeScopeType: boolean; + } + + export interface WUDetails { + WUID: string; + ScopeFilter: ScopeFilter; + NestedFilter: NestedFilter; + PropertiesToReturn: PropertiesToReturn; + Filter: string; + ScopeOptions: ScopeOptions; + PropertyOptions: PropertyOptions; + } + + export interface Scope { + ScopeName: string; + Id: string; + ScopeType: string; + Properties: Properties; + Notes: Notes; + SinkActivity: string; + } + + export interface Scopes2 { + Scope: Scope[]; + } + + export interface WUDetailsResponse { + Exceptions: Exceptions; + MaxVersion: string; + WUID: string; + Scopes: Scopes2; + } + + export interface WUDetailsMeta { + + } + + export interface Property2 { + Name: string; + ValueType: WUDetailsAttrValueType; + } + + export interface Properties3 { + Property: Property2[]; + } + + export interface Measures { + Measure: string[]; + } + + export interface Activity2 { + Kind: unsignedInt; + Name: string; + IsSink: boolean; + IsSource: boolean; + } + + export interface Activities2 { + Activity: Activity2[]; + } + + export interface WUDetailsMetaResponse { + Exceptions: Exceptions; + Properties: Properties3; + ScopeTypes: ScopeTypes; + Measures: Measures; + Activities: Activities2; + } + + export interface EclDefinitions { + Item: string[]; + } + + export interface WUEclDefinitionAction { + EclDefinitions: EclDefinitions; + ActionType: EclDefinitionActions; + Target: string; + RemoteDali: string; + SourceProcess: string; + Priority: string; + Comment: string; + MemoryLimit: string; + DeletePrevious: boolean; + SuspendPrevious: boolean; + NoActivate: boolean; + NoReload: boolean; + DontCopyFiles: boolean; + AllowForeign: boolean; + UpdateDfs: boolean; + UpdateSuperfiles: boolean; + UpdateCloneFrom: boolean; + DontAppendCluster: boolean; + MsToWait: int; + TimeLimit: int; + WarnTimeLimit: int; + DfuCopyFiles: boolean; + DfuOverwrite: boolean; + DfuQueue: string; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + } + + export interface WUEclDefinitionActionResult { + EclDefinition: string; + Action: string; + WUID: string; + QueryID: string; + Result: string; + } + + export interface ActionResults2 { + WUEclDefinitionActionResult: WUEclDefinitionActionResult[]; + } + + export interface WUEclDefinitionActionResponse { + Exceptions: Exceptions; + ActionResults: ActionResults2; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUExport { + Cluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + Jobname: string; + } + + export interface WUExportResponse { + Exceptions: Exceptions; + ExportData: base64Binary; + } + + export interface LogColumns { + Item: string[]; + } + + export interface WUFile { + Name: string; + Wuid: string; + Type: string; + Option: int; + SlaveIP: string; + IPAddress: string; + Description: string; + QuerySet: string; + Query: string; + Process: string; + ClusterGroup: string; + LogDate: string; + SlaveNumber: int; + SizeLimit: long; + ErrorMessageFormat: ErrorMessageFormat; + PlainText: string; + MaxLogRecords: unsignedInt; + LogSelectColumnMode: LogSelectColumnMode; + LogFormat: LogAccessLogFormat; + LogSearchTimeBuffSecs: unsignedInt; + LogColumns: LogColumns; + } + + export interface WULogFileResponse { + Exceptions: Exceptions; + Wuid: string; + QuerySet: string; + QueryName: string; + QueryId: string; + FileName: string; + DaliServer: string; + thefile: base64Binary; + } + + export interface WUFullResult { + Wuid: string; + NoRootTag: boolean; + ExceptionSeverity: WUExceptionSeverity; + } + + export interface WUFullResultResponse { + Exceptions: Exceptions; + Wuid: string; + Results: string; + } + + export interface WUGVCGraphInfo { + Wuid: string; + Name: string; + GID: string; + BatchWU: int; + SubgraphId: int; + } + + export interface WUGVCGraphInfoResponse { + Exceptions: Exceptions; + Wuid: string; + Name: string; + GID: string; + Running: boolean; + TheGraph: string; + BatchWU: int; + } + + export interface WUGetArchiveFile { + WUID: string; + ModuleName: string; + FileName: string; + Path: string; + } + + export interface WUGetArchiveFileResponse { + Exceptions: Exceptions; + File: string; + Message: string; + } + + export interface WUGetDependancyTrees { + Cluster: string; + Queue: string; + Snapshot: string; + Items: string; + TimeoutMilliSec: string; + } + + export interface WUGetDependancyTreesResponse { + Exceptions: Exceptions; + Errors: Errors; + DependancyTrees: base64Binary; + } + + export interface WUGetGraph { + Wuid: string; + GraphName: string; + SubGraphId: string; + } + + export interface ECLGraphEx { + Name: string; + Label: string; + Type: string; + Graph: string; + Running: boolean; + RunningId: long; + Complete: boolean; + Failed: boolean; + } + + export interface Graphs2 { + ECLGraphEx: ECLGraphEx[]; + } + + export interface WUGetGraphResponse { + Exceptions: Exceptions; + Graphs: Graphs2; + } + + export interface WUGetGraphNameAndTypes { + Wuid: string; + Type: string; + } + + export interface GraphNameAndType { + Name: string; + Type: string; + } + + export interface GraphNameAndTypes { + GraphNameAndType: GraphNameAndType[]; + } + + export interface WUGetGraphNameAndTypesResponse { + Exceptions: Exceptions; + GraphNameAndTypes: GraphNameAndTypes; + } + + export interface WUGetNumFileToCopy { + ClusterName: string; + TargetName: string; + PageSize: long; + PageStartFrom: long; + Sortby: string; + Descending: boolean; + CacheHint: long; + } + + export interface Endpoint { + URL: string; + Status: string; + NumQueryFileToCopy: int; + } + + export interface Endpoints { + Endpoint: Endpoint[]; + } + + export interface WUGetNumFileToCopyResponse { + Exceptions: Exceptions; + Endpoints: Endpoints; + CacheHint: long; + Total: long; + } + + export interface WUGetPlugins { + + } + + export interface Plugins { + WUEclPluginsInFolder: WUEclPluginsInFolder[]; + } + + export interface WUEclPluginsInFolder { + Path: string; + Plugins: Plugins; + } + + export interface WUGetPluginsResponse { + Exceptions: Exceptions; + Plugins: Plugins; + } + + export interface WUGetStats { + WUID: string; + CreatorType: string; + Creator: string; + ScopeType: string; + Scope: string; + Kind: string; + Measure: string; + MinScopeDepth: unsignedInt; + MaxScopeDepth: unsignedInt; + IncludeGraphs: boolean; + CreateDescriptions: boolean; + MinValue: long; + MaxValue: long; + Filter: string; + } + + export interface WUStatisticItem { + Creator: string; + CreatorType: string; + Scope: string; + ScopeType: string; + Description: string; + TimeStamp: string; + Measure: string; + Kind: string; + Value: string; + RawValue: long; + Count: long; + Max: long; + Wuid: string; + } + + export interface Statistics { + WUStatisticItem: WUStatisticItem[]; + } + + export interface WUGetStatsResponse { + Exceptions: Exceptions; + WUID: string; + Statistics: Statistics; + } + + export interface WUGetThorJobList { + Cluster: string; + StartDate: string; + EndDate: string; + MaxJobsToReturn: unsignedInt; + } + + export interface ECLJob { + Wuid: string; + Graph: string; + State: string; + StartedDate: string; + FinishedDate: string; + Cluster: string; + GraphNum: string; + SubGraphNum: string; + NumOfRuns: string; + Duration: int; + } + + export interface JobList { + ECLJob: ECLJob[]; + } + + export interface InProgressJobList { + ECLJob: ECLJob[]; + } + + export interface WUGetThorJobListResponse { + Exceptions: Exceptions; + JobList: JobList; + InProgressJobList: InProgressJobList; + Warning: string; + } + + export interface WUGetThorJobQueue { + Cluster: string; + StartDate: string; + EndDate: string; + MaxJobQueueItemsToReturn: unsignedInt; + } + + export interface ThorQueue { + DT: string; + RunningWUs: string; + QueuedWUs: string; + WaitingThors: string; + ConnectedThors: string; + IdledThors: string; + RunningWU1: string; + RunningWU2: string; + } + + export interface QueueList { + ThorQueue: ThorQueue[]; + } + + export interface WUGetThorJobQueueResponse { + Exceptions: Exceptions; + LongestQueue: int; + MaxThorConnected: int; + QueueList: QueueList; + Warning: string; + } + + export interface WUGetZAPInfo { + WUID: string; + } + + export interface WUGetZAPInfoResponse { + Exceptions: Exceptions; + WUID: string; + ESPApplication: string; + ThorProcesses: string; + BuildVersion: string; + Archive: string; + EmailTo: string; + EmailFrom: string; + Message: string; + } + + export interface WUGraphInfo { + Wuid: string; + Name: string; + GID: string; + BatchWU: int; + } + + export interface WUGraphInfoResponse { + Exceptions: Exceptions; + Wuid: string; + Name: string; + GID: string; + BatchWU: int; + Running: boolean; + } + + export interface WUGraphTiming { + Wuid: string; + } + + export interface WUGraphTimingResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface WUInfo { + Wuid: string; + TruncateEclTo64k: boolean; + Type: string; + IncludeExceptions: boolean; + IncludeGraphs: boolean; + IncludeSourceFiles: boolean; + IncludeResults: boolean; + IncludeResultsViewNames: boolean; + IncludeVariables: boolean; + IncludeTimers: boolean; + IncludeDebugValues: boolean; + IncludeApplicationValues: boolean; + IncludeWorkflows: boolean; + IncludeXmlSchemas: boolean; + IncludeResourceURLs: boolean; + IncludeECL: boolean; + IncludeHelpers: boolean; + IncludeAllowedClusters: boolean; + IncludeTotalClusterTime: boolean; + IncludeServiceNames: boolean; + SuppressResultSchemas: boolean; + ThorSlaveIP: string; + } + + export interface ResultViews { + View: string[]; + } + + export interface WUInfoResponse { + Exceptions: Exceptions; + Workunit: Workunit; + AutoRefresh: int; + CanCompile: boolean; + ThorSlaveIP: string; + ResultViews: ResultViews; + SecMethod: string; + } + + export interface WUInfoDetails { + Wuid: string; + TruncateEclTo64k: boolean; + Type: string; + IncludeExceptions: boolean; + IncludeGraphs: boolean; + IncludeSourceFiles: boolean; + IncludeResults: boolean; + IncludeResultsViewNames: boolean; + IncludeVariables: boolean; + IncludeTimers: boolean; + IncludeDebugValues: boolean; + IncludeApplicationValues: boolean; + IncludeWorkflows: boolean; + IncludeXmlSchemas: boolean; + IncludeResourceURLs: boolean; + IncludeECL: boolean; + IncludeHelpers: boolean; + IncludeAllowedClusters: boolean; + IncludeTotalClusterTime: boolean; + IncludeServiceNames: boolean; + SuppressResultSchemas: boolean; + ThorSlaveIP: string; + } + + export interface WUJobList { + Cluster: string; + Process: string; + StartDate: string; + EndDate: string; + ShowAll: boolean; + BusinessStartHour: int; + BusinessEndHour: int; + } + + export interface Jobs { + ECLJob: ECLJob[]; + } + + export interface WUJobListResponse { + Exceptions: Exceptions; + StartDate: string; + EndDate: string; + Jobs: Jobs; + } + + export interface WULightWeightQuery { + Wuid: string; + Type: string; + Cluster: string; + Owner: string; + JobName: string; + StartDate: string; + EndDate: string; + BeforeWU: string; + AfterWU: string; + State: string; + ApplicationValues: ApplicationValues; + PageStartFrom: long; + PageSize: unsignedInt; + SortBy: string; + Descending: boolean; + CacheHint: long; + } + + export interface ECLWorkunitLW { + Wuid: string; + Owner: string; + JobName: string; + WuScope: string; + ClusterName: string; + State: int; + StateDesc: string; + Action: int; + ActionDesc: string; + Priority: int; + PriorityDesc: string; + PriorityLevel: int; + IsProtected: boolean; + DateTimeScheduled: dateTime; + TotalClusterTime: unsignedInt; + ApplicationValues: ApplicationValues; + NoAccess: boolean; + } + + export interface Workunits { + ECLWorkunitLW: ECLWorkunitLW[]; + } + + export interface WULightWeightQueryResponse { + Exceptions: Exceptions; + NumWUs: int; + CacheHint: long; + Workunits: Workunits; + } + + export interface WUListArchiveFiles { + WUID: string; + } + + export interface ArchiveModules { + ArchiveModule: ArchiveModule[]; + } + + export interface File2 { + Name: string; + Key: string; + SourcePath: string; + Path: string; + } + + export interface Files { + File: File2[]; + } + + export interface ArchiveModule { + Name: string; + FullName: string; + Flags: unsignedInt; + Key: string; + Plugin: string; + SourcePath: string; + Version: string; + Path: string; + ArchiveModules: ArchiveModules; + Files: Files; + } + + export interface WUListArchiveFilesResponse { + Exceptions: Exceptions; + ArchiveModules: ArchiveModules; + Files: Files; + Message: string; + } + + export interface WUListLocalFileRequired { + Wuid: string; + } + + export interface LogicalFileUpload { + Type: int; + Source: string; + Destination: string; + EventTag: string; + } + + export interface LocalFileUploads { + LogicalFileUpload: LogicalFileUpload[]; + } + + export interface WUListLocalFileRequiredResponse { + Exceptions: Exceptions; + LocalFileUploads: LocalFileUploads; + } + + export interface WUListQueries { + QuerySetName: string; + ClusterName: string; + LibraryName: string; + MemoryLimitLow: long; + MemoryLimitHigh: long; + TimeLimitLow: nonNegativeInteger; + TimeLimitHigh: nonNegativeInteger; + WarnTimeLimitLow: nonNegativeInteger; + WarnTimeLimitHigh: nonNegativeInteger; + PriorityLow: nonNegativeInteger; + PriorityHigh: nonNegativeInteger; + Activated: boolean; + SuspendedFilter: WUQueryFilterSuspendedType; + WUID: string; + QueryID: string; + QueryName: string; + PublishedBy: string; + PageSize: nonNegativeInteger; + PageStartFrom: nonNegativeInteger; + Sortby: string; + Descending: boolean; + CacheHint: long; + FileName: string; + CheckAllNodes: boolean; + } + + export interface ClusterQueryState { + Cluster: string; + State: string; + Errors: string; + MixedNodeStates: boolean; + } + + export interface Clusters2 { + ClusterQueryState: ClusterQueryState[]; + } + + export interface QuerySetQuery { + Id: string; + Name: string; + Wuid: string; + Dll: string; + Suspended: boolean; + Clusters: Clusters2; + memoryLimit: string; + timeLimit: nonNegativeInteger; + warnTimeLimit: nonNegativeInteger; + priority: string; + Comment: string; + QuerySetId: string; + IsLibrary: boolean; + Activated: boolean; + PublishedBy: string; + snapshot: string; + PriorityID: int; + } + + export interface QuerysetQueries { + QuerySetQuery: QuerySetQuery[]; + } + + export interface WUListQueriesResponse { + Exceptions: Exceptions; + NumberOfQueries: int; + CacheHint: long; + QuerysetQueries: QuerysetQueries; + } + + export interface WUListQueriesUsingFile { + Target: string; + Process: string; + FileName: string; + } + + export interface QueryUsingFile { + Id: string; + Package: string; + } + + export interface Queries { + QueryUsingFile: QueryUsingFile[]; + } + + export interface TargetQueriesUsingFile { + Target: string; + PackageMap: string; + Queries: Queries; + } + + export interface Targets { + TargetQueriesUsingFile: TargetQueriesUsingFile[]; + } + + export interface WUListQueriesUsingFileResponse { + Exceptions: Exceptions; + Process: string; + FileName: string; + Targets: Targets; + } + + export interface WUMultiQuerysetDetails { + ClusterName: string; + QuerySetName: string; + Filter: string; + FilterType: WUQuerySetFilterType; + CheckAllNodes: boolean; + } + + export interface Queries2 { + QuerySetQuery: QuerySetQuery[]; + } + + export interface QuerySetAlias { + Id: string; + Name: string; + } + + export interface Aliases { + QuerySetAlias: QuerySetAlias[]; + } + + export interface WUQuerySetDetail { + QuerySetName: string; + Queries: Queries2; + Aliases: Aliases; + } + + export interface Querysets { + WUQuerySetDetail: WUQuerySetDetail[]; + } + + export interface WUMultiQuerySetDetailsResponse { + Exceptions: Exceptions; + ClusterName: string; + Querysets: Querysets; + } + + export interface WUProcessGraph { + Wuid: string; + Name: string; + } + + export interface WUProcessGraphResponse { + Exceptions: Exceptions; + theGraph: string; + } + + export interface WUProtect { + Wuids: Wuids; + Protect: boolean; + } + + export interface WUProtectResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface WUPublishWorkunit { + Wuid: string; + Cluster: string; + QueryName: string; + WorkUnitJobName: string; + JobName: string; + Activate: int; + NotifyCluster: boolean; + Wait: int; + NoReload: boolean; + UpdateWorkUnitName: boolean; + memoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + RemoteDali: string; + Comment: string; + DontCopyFiles: boolean; + SourceProcess: string; + AllowForeignFiles: boolean; + UpdateDfs: boolean; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + } + + export interface WUPublishWorkunitResponse { + Exceptions: Exceptions; + Wuid: string; + Result: string; + QuerySet: string; + QueryName: string; + QueryId: string; + ReloadFailed: boolean; + Suspended: boolean; + ErrorMessage: string; + ClusterFiles: ClusterFiles; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUPushEvent { + EventName: string; + EventText: string; + } + + export interface WUPushEventResponse { + Exceptions: Exceptions; + } + + export interface WUQuery { + Wuid: string; + Type: string; + Cluster: string; + RoxieCluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + ECL: string; + Jobname: string; + LogicalFile: string; + LogicalFileSearchType: string; + ApplicationValues: ApplicationValues; + BeforeWU: string; + AfterWU: string; + TotalClusterTimeThresholdMilliSec: unsignedInt; + Count: int; + PageSize: long; + PageStartFrom: long; + PageEndAt: long; + Protected: WUProtectFilter; + Sortby: string; + Descending: boolean; + CacheHint: long; + } + + export interface ECLWorkunit { + Wuid: string; + Owner: string; + Cluster: string; + RoxieCluster: string; + Jobname: string; + Queue: string; + StateID: int; + State: string; + StateEx: string; + Description: string; + Protected: boolean; + Active: boolean; + Action: int; + ActionEx: string; + DateTimeScheduled: dateTime; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + Snapshot: string; + ResultLimit: int; + Archived: boolean; + IsPausing: boolean; + ThorLCR: boolean; + EventSchedule: int; + TotalClusterTime: string; + AbortBy: string; + AbortTime: string; + Query: Query; + Helpers: Helpers; + Exceptions: Exceptions2; + Graphs: Graphs; + SourceFiles: SourceFiles; + Results: Results; + Variables: Variables; + Timers: Timers; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + Workflows: Workflows; + TimingData: TimingData; + AllowedClusters: AllowedClusters; + ErrorCount: int; + WarningCount: int; + InfoCount: int; + AlertCount: int; + GraphCount: int; + SourceFileCount: int; + ResultCount: int; + VariableCount: int; + TimerCount: int; + HasDebugValue: boolean; + ApplicationValueCount: int; + XmlParams: string; + AccessFlag: int; + ClusterFlag: int; + HelpersDesc: string; + GraphsDesc: string; + SourceFilesDesc: string; + ResultsDesc: string; + VariablesDesc: string; + TimersDesc: string; + DebugValuesDesc: string; + ApplicationValuesDesc: string; + WorkflowsDesc: string; + HasArchiveQuery: boolean; + ThorLogList: ThorLogList; + ResourceURLs: ResourceURLs; + ResultViewCount: int; + ResourceURLCount: int; + DebugValueCount: int; + WorkflowCount: int; + HelpersCount: int; + ServiceNames: ServiceNames; + ExecuteCost: double; + FileAccessCost: double; + CompileCost: double; + NoAccess: boolean; + } + + export interface Workunits2 { + ECLWorkunit: ECLWorkunit[]; + } + + export interface WUQueryResponse { + Exceptions: Exceptions; + Type: string; + Cluster: string; + RoxieCluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + ECL: string; + Jobname: string; + LogicalFile: string; + LogicalFileSearchType: string; + Current: string; + Next: string; + Count: int; + PageSize: long; + PrevPage: long; + NextPage: long; + LastPage: long; + NumWUs: int; + First: boolean; + PageStartFrom: long; + PageEndAt: long; + Sortby: string; + Descending: boolean; + BasicQuery: string; + Filters: string; + CacheHint: long; + Workunits: Workunits2; + } + + export interface WUQueryConfig { + Target: string; + QueryId: string; + Wait: int; + NoReload: boolean; + memoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + Comment: string; + } + + export interface Result { + QueryId: string; + } + + export interface Results2 { + Result: Result[]; + } + + export interface WUQueryConfigResponse { + Exceptions: Exceptions; + ReloadFailed: boolean; + Results: Results2; + } + + export interface WUQueryDetails { + QueryId: string; + QuerySet: string; + IncludeStateOnClusters: boolean; + IncludeSuperFiles: boolean; + IncludeWsEclAddresses: boolean; + CheckAllNodes: boolean; + IncludeWUDetails: boolean; + IncludeWUQueryFiles: boolean; + } + + export interface LogicalFiles { + Item: string[]; + } + + export interface SubFiles { + File: string[]; + } + + export interface SuperFiles { + SuperFile: SuperFile[]; + } + + export interface SuperFile { + Name: string; + SubFiles: SubFiles; + SuperFiles: SuperFiles; + } + + export interface LibrariesUsed { + Item: string[]; + } + + export interface WsEclAddresses { + Address: string[]; + } + + export interface WUGraphs { + ECLGraph: ECLGraph[]; + } + + export interface WUTimers { + ECLTimer: ECLTimer[]; + } + + export interface WUQueryDetailsResponse { + Exceptions: Exceptions; + QueryId: string; + QuerySet: string; + QueryName: string; + Wuid: string; + Dll: string; + Suspended: boolean; + Activated: boolean; + SuspendedBy: string; + Clusters: Clusters2; + PublishedBy: string; + Comment: string; + LogicalFiles: LogicalFiles; + SuperFiles: SuperFiles; + IsLibrary: boolean; + Priority: string; + PriorityID: int; + WUSnapShot: string; + CompileTime: string; + LibrariesUsed: LibrariesUsed; + CountGraphs: int; + ResourceURLCount: int; + WsEclAddresses: WsEclAddresses; + WUGraphs: WUGraphs; + WUTimers: WUTimers; + } + + export interface WUQueryDetailsLightWeight { + QueryId: string; + QuerySet: string; + IncludeWUDetails: boolean; + IncludeWUQueryFiles: boolean; + IncludeSuperFiles: boolean; + IncludeWsEclAddresses: boolean; + IncludeStateOnClusters: boolean; + CheckAllNodes: boolean; + } + + export interface WUQueryFiles { + Target: string; + QueryId: string; + } + + export interface File3 { + FileName: string; + FileSize: long; + NumberOfParts: unsignedInt; + } + + export interface Files2 { + File: File3[]; + } + + export interface Query2 { + QueryId: string; + Files: Files2; + SuperFiles: SuperFiles; + } + + export interface Queries3 { + Query: Query2[]; + } + + export interface WUQueryFilesResponse { + Exceptions: Exceptions; + Files: Files2; + SuperFiles: SuperFiles; + Queries: Queries3; + } + + export interface WUQueryGetGraph { + Target: string; + QueryId: string; + GraphName: string; + SubGraphId: string; + } + + export interface WUQueryGetGraphResponse { + Exceptions: Exceptions; + Graphs: Graphs2; + } + + export interface WUQueryGetSummaryStats { + Target: string; + QueryId: string; + FromTime: string; + ToTime: string; + IncludeRawStats: boolean; + } + + export interface QuerySummaryStats { + Endpoint: string; + Status: string; + StartTime: string; + EndTime: string; + CountTotal: int; + CountFailed: int; + AverageSlavesReplyLen: int; + AverageBytesOut: long; + SizeAvgPeakMemory: long; + TimeAvgTotalExecuteMinutes: long; + TimeMinTotalExecuteMinutes: long; + TimeMaxTotalExecuteMinutes: long; + Percentile97: long; + Percentile97Estimate: boolean; + } + + export interface StatsList { + QuerySummaryStats: QuerySummaryStats[]; + } + + export interface AggregateQueryStatsList { + QuerySummaryStats: QuerySummaryStats[]; + } + + export interface QueryStatsRecord { + StartTime: string; + ElapsedTimeMs: long; + MemoryUsed: long; + BytesOut: long; + SlavesReplyLen: int; + Failed: boolean; + } + + export interface QueryStatsRecordList { + QueryStatsRecord: QueryStatsRecord[]; + } + + export interface QueryStats { + ID: string; + AggregateQueryStatsList: AggregateQueryStatsList; + QueryStatsRecordList: QueryStatsRecordList; + } + + export interface QueryStatsList { + EndpointQueryStats: EndpointQueryStats[]; + } + + export interface EndpointQueryStats { + Endpoint: string; + Status: string; + QueryStatsList: QueryStatsList; + } + + export interface WUQueryGetSummaryStatsResponse { + Exceptions: Exceptions; + StatsList: StatsList; + QueryStatsList: QueryStatsList; + } + + export interface Alias { + Name: string; + } + + export interface Aliases2 { + Alias: Alias[]; + } + + export interface WUQuerysetAliasAction { + Action: QuerySetAliasActionTypes; + QuerySetName: string; + Aliases: Aliases2; + } + + export interface Result2 { + Name: string; + Success: boolean; + Code: int; + Message: string; + } + + export interface Results3 { + Result: Result2[]; + } + + export interface WUQuerySetAliasActionResponse { + Exceptions: Exceptions; + Action: QuerySetAliasActionTypes; + QuerySetName: string; + Results: Results3; + } + + export interface WUQuerysetCopyQuery { + Source: string; + Target: string; + Cluster: string; + DaliServer: string; + Activate: int; + Overwrite: boolean; + DontCopyFiles: boolean; + Wait: int; + NoReload: boolean; + memoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + priority: string; + Comment: string; + SourceProcess: string; + DestName: string; + AllowForeignFiles: boolean; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + SourceSSL: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + } + + export interface WUQuerySetCopyQueryResponse { + Exceptions: Exceptions; + QueryId: string; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUQuerysetDetails { + QuerySetName: string; + Filter: string; + ClusterName: string; + FilterType: WUQuerySetFilterType; + CheckAllNodes: boolean; + } + + export interface QuerysetAliases { + QuerySetAlias: QuerySetAlias[]; + } + + export interface ClusterNames { + Item: string[]; + } + + export interface WUQuerySetDetailsResponse { + Exceptions: Exceptions; + QuerySetName: string; + QuerysetQueries: QuerysetQueries; + QuerysetAliases: QuerysetAliases; + ClusterName: string; + Filter: string; + FilterType: WUQuerySetFilterType; + ClusterNames: ClusterNames; + } + + export interface WUQuerysetExport { + Target: string; + Compress: boolean; + ActiveOnly: boolean; + Protect: boolean; + } + + export interface WUQuerysetExportResponse { + Exceptions: Exceptions; + Target: string; + Compressed: boolean; + Data: base64Binary; + } + + export interface WUQuerysetImport { + Target: string; + QueryMask: string; + Replace: boolean; + ActiveOnly: boolean; + Activation: QuerysetImportActivation; + Compressed: boolean; + Data: base64Binary; + AllowForeignFiles: boolean; + DfsServer: string; + CopyFiles: boolean; + OverwriteDfs: boolean; + SourceProcess: string; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + } + + export interface ImportedQueries { + QueryId: string[]; + } + + export interface MissingWuids { + QueryId: string[]; + } + + export interface WUQuerysetImportResponse { + Exceptions: Exceptions; + Target: string; + ClearedExisting: boolean; + Success: boolean; + ImportedQueries: ImportedQueries; + ExistingQueries: ExistingQueries; + MissingWuids: MissingWuids; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface ClientState { + Suspended: string; + } + + export interface Query3 { + QueryId: string; + Activated: boolean; + SuspendedByUser: boolean; + ClientState: ClientState; + } + + export interface Queries4 { + Query: Query3[]; + } + + export interface WUQuerysetQueryAction { + Action: QuerySetQueryActionTypes; + QuerySetName: string; + Queries: Queries4; + } + + export interface Result3 { + QueryId: string; + WUID: string; + Suspended: boolean; + Success: boolean; + Code: int; + Message: string; + } + + export interface Results4 { + Result: Result3[]; + } + + export interface WUQuerySetQueryActionResponse { + Exceptions: Exceptions; + Action: QuerySetQueryActionTypes; + QuerySetName: string; + Results: Results4; + } + + export interface WUQuerysets { + test: boolean; + } + + export interface QuerySet { + QuerySetName: string; + } + + export interface Querysets2 { + QuerySet: QuerySet[]; + } + + export interface WUQuerysetsResponse { + Exceptions: Exceptions; + Querysets: Querysets2; + } + + export interface WURecreateQuery { + Target: string; + QueryId: string; + DebugValues: DebugValues2; + DestTarget: string; + Republish: boolean; + Activate: WUQueryActivationMode; + NoReload: boolean; + MemoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + Comment: string; + RemoteDali: string; + DontCopyFiles: boolean; + SourceProcess: string; + AllowForeignFiles: boolean; + UpdateDfs: boolean; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + Wait: int; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + } + + export interface WURecreateQueryResponse { + Exceptions: Exceptions; + Wuid: string; + QuerySet: string; + QueryName: string; + QueryId: string; + MemoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + Comment: string; + ReloadFailed: boolean; + Suspended: boolean; + ErrorMessage: string; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUResubmit { + Wuids: Wuids; + BlockTillFinishTimer: int; + ResetWorkflow: boolean; + CloneWorkunit: boolean; + } + + export interface WU { + WUID: string; + ParentWUID: string; + } + + export interface WUs { + WU: WU[]; + } + + export interface WUResubmitResponse { + Exceptions: Exceptions; + WUs: WUs; + } + + export interface FilterBy { + NamedValue: NamedValue[]; + } + + export interface WUResult { + Wuid: string; + Sequence: int; + ResultName: string; + LogicalName: string; + Cluster: string; + SuppressXmlSchema: boolean; + BypassCachedResult: boolean; + FilterBy: FilterBy; + Start: long; + Count: int; + } + + export interface WUResultResponse { + Exceptions: Exceptions; + Wuid: string; + Sequence: int; + LogicalName: string; + Cluster: string; + Name: string; + Start: long; + Requested: int; + Count: int; + Total: long; + Result: string; + } + + export interface WUResultBin { + LogicalName: string; + Wuid: string; + ResultName: string; + Sequence: int; + Format: string; + Cluster: string; + FilterBy: FilterBy; + Start: long; + Count: int; + } + + export interface WUResultBinResponse { + Exceptions: Exceptions; + Wuid: string; + Sequence: int; + Name: string; + Start: long; + Count: int; + Requested: int; + Total: long; + Result: base64Binary; + Format: string; + } + + export interface WUResultSummary { + Wuid: string; + Sequence: int; + } + + export interface Result4 { + Name: string; + Sequence: int; + Value: string; + Link: string; + FileName: string; + IsSupplied: boolean; + ShowFileContent: boolean; + Total: long; + ECLSchemas: ECLSchemas; + XmlSchema: string; + } + + export interface WUResultSummaryResponse { + Exceptions: Exceptions; + Wuid: string; + Sequence: int; + Format: int; + Result: Result4; + } + + export interface WUResultView { + Wuid: string; + ViewName: string; + Sequence: int; + ResultName: string; + } + + export interface WUResultViewResponse { + Exceptions: Exceptions; + Wuid: string; + ViewName: string; + Result: string; + } + + export interface Variables2 { + NamedValue: NamedValue[]; + } + + export interface WURun { + QuerySet: string; + Query: string; + Wuid: string; + CloneWorkunit: boolean; + Cluster: string; + Wait: int; + Input: string; + NoRootTag: boolean; + DebugValues: DebugValues2; + Variables: Variables2; + ApplicationValues: ApplicationValues; + ExceptionSeverity: WUExceptionSeverity; + } + + export interface WURunResponse { + Exceptions: Exceptions; + Wuid: string; + State: string; + Results: string; + } + + export interface WUSchedule { + Wuid: string; + Cluster: string; + Queue: string; + Snapshot: string; + When: dateTime; + MaxRunTime: int; + } + + export interface WUScheduleResponse { + Exceptions: Exceptions; + } + + export interface WUShowScheduled { + Cluster: string; + EventName: string; + PushEventName: string; + PushEventText: string; + State: string; + JobName: string; + Owner: string; + EventText: string; + } + + export interface ServerInfo { + Name: string; + NetAddress: string; + } + + export interface Clusters3 { + ServerInfo: ServerInfo[]; + } + + export interface ScheduledWU { + Wuid: string; + Cluster: string; + EventName: string; + EventText: string; + JobName: string; + StateID: int; + State: string; + Owner: string; + } + + export interface Workunits3 { + ScheduledWU: ScheduledWU[]; + } + + export interface WUShowScheduledResponse { + Exceptions: Exceptions; + ClusterSelected: int; + EventName: string; + PushEventName: string; + PushEventText: string; + Query: string; + Clusters: Clusters3; + Workunits: Workunits3; + } + + export interface WUSubmit { + Wuid: string; + Cluster: string; + Queue: string; + Snapshot: string; + MaxRunTime: int; + MaxCost: int; + BlockTillFinishTimer: int; + SyntaxCheck: boolean; + NotifyCluster: boolean; + } + + export interface WUSubmitResponse { + Exceptions: Exceptions; + } + + export interface WUSyntaxCheckECL { + ECL: string; + ModuleName: string; + AttributeName: string; + Queue: string; + Cluster: string; + Snapshot: string; + TimeToWait: int; + PersistWorkunit: boolean; + DebugValues: DebugValues; + } + + export interface WUSyntaxCheckResponse { + Exceptions: Exceptions; + Errors: Errors; + Message: string; + } + + export interface WUUpdate { + Wuid: string; + State: int; + StateOrig: int; + Jobname: string; + JobnameOrig: string; + QueryText: string; + Action: int; + Description: string; + DescriptionOrig: string; + AddDrilldownFields: boolean; + ResultLimit: int; + Protected: boolean; + ProtectedOrig: boolean; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + ScopeOrig: string; + ClusterSelection: string; + ClusterOrig: string; + XmlParams: string; + ThorSlaveIP: string; + QueryMainDefinition: string; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + } + + export interface WUUpdateQueryEntry { + QuerySet: string; + QueryId: string; + Comment: string; + } + + export interface WUUpdateQueryEntryResponse { + Exceptions: Exceptions; + } + + export interface WUWaitCompiled { + Wuid: string; + Wait: int; + ReturnOnWait: boolean; + } + + export interface WUWaitResponse { + Exceptions: Exceptions; + StateID: int; + } + + export interface WUWaitComplete { + Wuid: string; + Wait: int; + ReturnOnWait: boolean; + } + +} + +export class WorkunitsServiceBase extends Service { + + constructor(optsConnection: IOptions | IConnection) { + super(optsConnection, "WsWorkunits", "1.97"); + } + + GVCAjaxGraph(request: Partial): Promise { + return this._connection.send("GVCAjaxGraph", request, "json", false, undefined, "GVCAjaxGraphResponse"); + } + + Ping(request: Partial): Promise { + return this._connection.send("Ping", request, "json", false, undefined, "WsWorkunitsPingResponse"); + } + + WUAbort(request: Partial): Promise { + return this._connection.send("WUAbort", request, "json", false, undefined, "WUAbortResponse"); + } + + WUAction(request: Partial): Promise { + return this._connection.send("WUAction", request, "json", false, undefined, "WUActionResponse"); + } + + WUAddLocalFileToWorkunit(request: Partial): Promise { + return this._connection.send("WUAddLocalFileToWorkunit", request, "json", false, undefined, "WUAddLocalFileToWorkunitResponse"); + } + + WUAnalyseHotspot(request: Partial): Promise { + return this._connection.send("WUAnalyseHotspot", request, "json", false, undefined, "WUAnalyseHotspotResponse"); + } + + WUCDebug(request: Partial): Promise { + return this._connection.send("WUCDebug", request, "json", false, undefined, "WUDebugResponse"); + } + + WUCheckFeatures(request: Partial): Promise { + return this._connection.send("WUCheckFeatures", request, "json", false, undefined, "WUCheckFeaturesResponse"); + } + + WUClusterJobQueueLOG(request: Partial): Promise { + return this._connection.send("WUClusterJobQueueLOG", request, "json", false, undefined, "WUClusterJobQueueLOGResponse"); + } + + WUClusterJobQueueXLS(request: Partial): Promise { + return this._connection.send("WUClusterJobQueueXLS", request, "json", false, undefined, "WUClusterJobQueueXLSResponse"); + } + + WUClusterJobSummaryXLS(request: Partial): Promise { + return this._connection.send("WUClusterJobSummaryXLS", request, "json", false, undefined, "WUClusterJobSummaryXLSResponse"); + } + + WUClusterJobXLS(request: Partial): Promise { + return this._connection.send("WUClusterJobXLS", request, "json", false, undefined, "WUClusterJobXLSResponse"); + } + + WUCompileECL(request: Partial): Promise { + return this._connection.send("WUCompileECL", request, "json", false, undefined, "WUCompileECLResponse"); + } + + WUCopyLogicalFiles(request: Partial): Promise { + return this._connection.send("WUCopyLogicalFiles", request, "json", false, undefined, "WUCopyLogicalFilesResponse"); + } + + WUCopyQuerySet(request: Partial): Promise { + return this._connection.send("WUCopyQuerySet", request, "json", false, undefined, "WUCopyQuerySetResponse"); + } + + WUCreate(request: Partial): Promise { + return this._connection.send("WUCreate", request, "json", false, undefined, "WUCreateResponse"); + } + + WUCreateAndUpdate(request: Partial): Promise { + return this._connection.send("WUCreateAndUpdate", request, "json", false, undefined, "WUUpdateResponse"); + } + + WUCreateZAPInfo(request: Partial): Promise { + return this._connection.send("WUCreateZAPInfo", request, "json", false, undefined, "WUCreateZAPInfoResponse"); + } + + WUDelete(request: Partial): Promise { + return this._connection.send("WUDelete", request, "json", false, undefined, "WUDeleteResponse"); + } + + WUDeployWorkunit(request: Partial): Promise { + return this._connection.send("WUDeployWorkunit", request, "json", false, undefined, "WUDeployWorkunitResponse"); + } + + WUDetails(request: Partial): Promise { + return this._connection.send("WUDetails", request, "json", false, undefined, "WUDetailsResponse"); + } + + WUDetailsMeta(request: Partial): Promise { + return this._connection.send("WUDetailsMeta", request, "json", false, undefined, "WUDetailsMetaResponse"); + } + + WUEclDefinitionAction(request: Partial): Promise { + return this._connection.send("WUEclDefinitionAction", request, "json", false, undefined, "WUEclDefinitionActionResponse"); + } + + WUExport(request: Partial): Promise { + return this._connection.send("WUExport", request, "json", false, undefined, "WUExportResponse"); + } + + WUFile(request: Partial): Promise { + return this._connection.send("WUFile", request, "json", false, undefined, "WULogFileResponse"); + } + + WUFullResult(request: Partial): Promise { + return this._connection.send("WUFullResult", request, "json", false, undefined, "WUFullResultResponse"); + } + + WUGVCGraphInfo(request: Partial): Promise { + return this._connection.send("WUGVCGraphInfo", request, "json", false, undefined, "WUGVCGraphInfoResponse"); + } + + WUGetArchiveFile(request: Partial): Promise { + return this._connection.send("WUGetArchiveFile", request, "json", false, undefined, "WUGetArchiveFileResponse"); + } + + WUGetDependancyTrees(request: Partial): Promise { + return this._connection.send("WUGetDependancyTrees", request, "json", false, undefined, "WUGetDependancyTreesResponse"); + } + + WUGetGraph(request: Partial): Promise { + return this._connection.send("WUGetGraph", request, "json", false, undefined, "WUGetGraphResponse"); + } + + WUGetGraphNameAndTypes(request: Partial): Promise { + return this._connection.send("WUGetGraphNameAndTypes", request, "json", false, undefined, "WUGetGraphNameAndTypesResponse"); + } + + WUGetNumFileToCopy(request: Partial): Promise { + return this._connection.send("WUGetNumFileToCopy", request, "json", false, undefined, "WUGetNumFileToCopyResponse"); + } + + WUGetPlugins(request: Partial): Promise { + return this._connection.send("WUGetPlugins", request, "json", false, undefined, "WUGetPluginsResponse"); + } + + WUGetStats(request: Partial): Promise { + return this._connection.send("WUGetStats", request, "json", false, undefined, "WUGetStatsResponse"); + } + + WUGetThorJobList(request: Partial): Promise { + return this._connection.send("WUGetThorJobList", request, "json", false, undefined, "WUGetThorJobListResponse"); + } + + WUGetThorJobQueue(request: Partial): Promise { + return this._connection.send("WUGetThorJobQueue", request, "json", false, undefined, "WUGetThorJobQueueResponse"); + } + + WUGetZAPInfo(request: Partial): Promise { + return this._connection.send("WUGetZAPInfo", request, "json", false, undefined, "WUGetZAPInfoResponse"); + } + + WUGraphInfo(request: Partial): Promise { + return this._connection.send("WUGraphInfo", request, "json", false, undefined, "WUGraphInfoResponse"); + } + + WUGraphTiming(request: Partial): Promise { + return this._connection.send("WUGraphTiming", request, "json", false, undefined, "WUGraphTimingResponse"); + } + + WUInfo(request: Partial): Promise { + return this._connection.send("WUInfo", request, "json", false, undefined, "WUInfoResponse"); + } + + WUInfoDetails(request: Partial): Promise { + return this._connection.send("WUInfoDetails", request, "json", false, undefined, "WUInfoResponse"); + } + + WUJobList(request: Partial): Promise { + return this._connection.send("WUJobList", request, "json", false, undefined, "WUJobListResponse"); + } + + WULightWeightQuery(request: Partial): Promise { + return this._connection.send("WULightWeightQuery", request, "json", false, undefined, "WULightWeightQueryResponse"); + } + + WUListArchiveFiles(request: Partial): Promise { + return this._connection.send("WUListArchiveFiles", request, "json", false, undefined, "WUListArchiveFilesResponse"); + } + + WUListLocalFileRequired(request: Partial): Promise { + return this._connection.send("WUListLocalFileRequired", request, "json", false, undefined, "WUListLocalFileRequiredResponse"); + } + + WUListQueries(request: Partial): Promise { + return this._connection.send("WUListQueries", request, "json", false, undefined, "WUListQueriesResponse"); + } + + WUListQueriesUsingFile(request: Partial): Promise { + return this._connection.send("WUListQueriesUsingFile", request, "json", false, undefined, "WUListQueriesUsingFileResponse"); + } + + WUMultiQuerysetDetails(request: Partial): Promise { + return this._connection.send("WUMultiQuerysetDetails", request, "json", false, undefined, "WUMultiQuerySetDetailsResponse"); + } + + WUProcessGraph(request: Partial): Promise { + return this._connection.send("WUProcessGraph", request, "json", false, undefined, "WUProcessGraphResponse"); + } + + WUProtect(request: Partial): Promise { + return this._connection.send("WUProtect", request, "json", false, undefined, "WUProtectResponse"); + } + + WUPublishWorkunit(request: Partial): Promise { + return this._connection.send("WUPublishWorkunit", request, "json", false, undefined, "WUPublishWorkunitResponse"); + } + + WUPushEvent(request: Partial): Promise { + return this._connection.send("WUPushEvent", request, "json", false, undefined, "WUPushEventResponse"); + } + + WUQuery(request: Partial): Promise { + return this._connection.send("WUQuery", request, "json", false, undefined, "WUQueryResponse"); + } + + WUQueryConfig(request: Partial): Promise { + return this._connection.send("WUQueryConfig", request, "json", false, undefined, "WUQueryConfigResponse"); + } + + WUQueryDetails(request: Partial): Promise { + return this._connection.send("WUQueryDetails", request, "json", false, undefined, "WUQueryDetailsResponse"); + } + + WUQueryDetailsLightWeight(request: Partial): Promise { + return this._connection.send("WUQueryDetailsLightWeight", request, "json", false, undefined, "WUQueryDetailsResponse"); + } + + WUQueryFiles(request: Partial): Promise { + return this._connection.send("WUQueryFiles", request, "json", false, undefined, "WUQueryFilesResponse"); + } + + WUQueryGetGraph(request: Partial): Promise { + return this._connection.send("WUQueryGetGraph", request, "json", false, undefined, "WUQueryGetGraphResponse"); + } + + WUQueryGetSummaryStats(request: Partial): Promise { + return this._connection.send("WUQueryGetSummaryStats", request, "json", false, undefined, "WUQueryGetSummaryStatsResponse"); + } + + WUQuerysetAliasAction(request: Partial): Promise { + return this._connection.send("WUQuerysetAliasAction", request, "json", false, undefined, "WUQuerySetAliasActionResponse"); + } + + WUQuerysetCopyQuery(request: Partial): Promise { + return this._connection.send("WUQuerysetCopyQuery", request, "json", false, undefined, "WUQuerySetCopyQueryResponse"); + } + + WUQuerysetDetails(request: Partial): Promise { + return this._connection.send("WUQuerysetDetails", request, "json", false, undefined, "WUQuerySetDetailsResponse"); + } + + WUQuerysetExport(request: Partial): Promise { + return this._connection.send("WUQuerysetExport", request, "json", false, undefined, "WUQuerysetExportResponse"); + } + + WUQuerysetImport(request: Partial): Promise { + return this._connection.send("WUQuerysetImport", request, "json", false, undefined, "WUQuerysetImportResponse"); + } + + WUQuerysetQueryAction(request: Partial): Promise { + return this._connection.send("WUQuerysetQueryAction", request, "json", false, undefined, "WUQuerySetQueryActionResponse"); + } + + WUQuerysets(request: Partial): Promise { + return this._connection.send("WUQuerysets", request, "json", false, undefined, "WUQuerysetsResponse"); + } + + WURecreateQuery(request: Partial): Promise { + return this._connection.send("WURecreateQuery", request, "json", false, undefined, "WURecreateQueryResponse"); + } + + WUResubmit(request: Partial): Promise { + return this._connection.send("WUResubmit", request, "json", false, undefined, "WUResubmitResponse"); + } + + WUResult(request: Partial): Promise { + return this._connection.send("WUResult", request, "json", false, undefined, "WUResultResponse"); + } + + WUResultBin(request: Partial): Promise { + return this._connection.send("WUResultBin", request, "json", false, undefined, "WUResultBinResponse"); + } + + WUResultSummary(request: Partial): Promise { + return this._connection.send("WUResultSummary", request, "json", false, undefined, "WUResultSummaryResponse"); + } + + WUResultView(request: Partial): Promise { + return this._connection.send("WUResultView", request, "json", false, undefined, "WUResultViewResponse"); + } + + WURun(request: Partial): Promise { + return this._connection.send("WURun", request, "json", false, undefined, "WURunResponse"); + } + + WUSchedule(request: Partial): Promise { + return this._connection.send("WUSchedule", request, "json", false, undefined, "WUScheduleResponse"); + } + + WUShowScheduled(request: Partial): Promise { + return this._connection.send("WUShowScheduled", request, "json", false, undefined, "WUShowScheduledResponse"); + } + + WUSubmit(request: Partial): Promise { + return this._connection.send("WUSubmit", request, "json", false, undefined, "WUSubmitResponse"); + } + + WUSyntaxCheckECL(request: Partial): Promise { + return this._connection.send("WUSyntaxCheckECL", request, "json", false, undefined, "WUSyntaxCheckResponse"); + } + + WUUpdate(request: Partial): Promise { + return this._connection.send("WUUpdate", request, "json", false, undefined, "WUUpdateResponse"); + } + + WUUpdateQueryEntry(request: Partial): Promise { + return this._connection.send("WUUpdateQueryEntry", request, "json", false, undefined, "WUUpdateQueryEntryResponse"); + } + + WUWaitCompiled(request: Partial): Promise { + return this._connection.send("WUWaitCompiled", request, "json", false, undefined, "WUWaitResponse"); + } + + WUWaitComplete(request: Partial): Promise { + return this._connection.send("WUWaitComplete", request, "json", false, undefined, "WUWaitResponse"); + } + +} diff --git a/packages/comms/src/services/wsdl/WsWorkunits/v1.99/WsWorkunits.ts b/packages/comms/src/services/wsdl/WsWorkunits/v1.99/WsWorkunits.ts new file mode 100644 index 0000000000..1e179531d0 --- /dev/null +++ b/packages/comms/src/services/wsdl/WsWorkunits/v1.99/WsWorkunits.ts @@ -0,0 +1,3162 @@ +import { IConnection, IOptions } from "../../../../connection"; +import { Service } from "../../../../espConnection"; + +export namespace WsWorkunits { + + export type int = number; + export type double = number; + export type long = number; + export type nonNegativeInteger = number; + export type unsignedInt = number; + export type base64Binary = string; + export type dateTime = string; + export type integer = number; + export type uint64 = number; + + export enum ECLWUActions { + Abort = "Abort", + Delete = "Delete", + Deschedule = "Deschedule", + Reschedule = "Reschedule", + Pause = "Pause", + PauseNow = "PauseNow", + Protect = "Protect", + Unprotect = "Unprotect", + Restore = "Restore", + Resume = "Resume", + SetToFailed = "SetToFailed", + Archive = "Archive" + } + + export enum LogSelectColumnMode { + MIN = 0, + DEFAULT = 1, + ALL = 2, + CUSTOM = 3 + } + + export enum SortDirection { + ASC = 0, + DSC = 1 + } + + export enum LogEventClass { + ALL = "ALL", + DIS = "DIS", + ERR = "ERR", + WRN = "WRN", + INF = "INF", + PRO = "PRO", + MET = "MET", + EVT = "EVT" + } + + export enum WUDetailsAttrValueType { + Single = "Single", + List = "List", + Multi = "Multi" + } + + export enum EclDefinitionActions { + SyntaxCheck = "SyntaxCheck", + Deploy = "Deploy", + Publish = "Publish" + } + + export enum ErrorMessageFormat { + xml = "xml", + json = "json", + text = "text" + } + + export enum LogAccessLogFormat { + XML = 0, + JSON = 1, + CSV = 2 + } + + export enum WUExceptionSeverity { + info = "info", + warning = "warning", + error = "error", + alert = "alert" + } + + export enum WUQueryFilterSuspendedType { + Allqueries = "Allqueries", + Notsuspended = "Notsuspended", + Suspended = "Suspended", + Suspendedbyuser = "Suspendedbyuser", + Suspendedbyfirstnode = "Suspendedbyfirstnode", + Suspendedbyanynode = "Suspendedbyanynode" + } + + export enum WUQuerySetFilterType { + All = "All", + Id = "Id", + Name = "Name", + Alias = "Alias", + Status = "Status" + } + + export enum WUProtectFilter { + All = "All", + Protected = "Protected", + NotProtected = "NotProtected" + } + + export enum QuerySetAliasActionTypes { + Deactivate = "Deactivate" + } + + export enum QuerysetImportActivation { + None = "None", + ActivateImportedActive = "ActivateImportedActive" + } + + export enum QuerySetQueryActionTypes { + Suspend = "Suspend", + Unsuspend = "Unsuspend", + ToggleSuspend = "ToggleSuspend", + Activate = "Activate", + Delete = "Delete", + DeleteQueriesAndWUs = "DeleteQueriesAndWUs", + RemoveAllAliases = "RemoveAllAliases", + ResetQueryStats = "ResetQueryStats" + } + + export enum WUQueryActivationMode { + DoNotActivateQuery = 0, + ActivateQuery = 1, + ActivateQuerySuspendPrevious = 2, + ActivateQueryDeletePrevious = 3 + } + + export interface GVCAjaxGraph { + Name: string; + GraphName: string; + SubGraphId: int; + SubGraphOnly: boolean; + } + + export interface GVCAjaxGraphResponse { + Name: string; + GraphName: string; + GraphType: string; + SubGraphId: int; + SubGraphOnly: boolean; + } + + export interface Ping { + + } + + export interface WsWorkunitsPingResponse { + + } + + export interface Wuids { + Item: string[]; + } + + export interface WUAbort { + Wuids: Wuids; + BlockTillFinishTimer: int; + } + + export interface Exception { + Code: string; + Audience: string; + Source: string; + Message: string; + } + + export interface Exceptions { + Source: string; + Exception: Exception[]; + } + + export interface WUActionResult { + Wuid: string; + Action: string; + Result: string; + } + + export interface ActionResults { + WUActionResult: WUActionResult[]; + } + + export interface WUAbortResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface WUAction { + Wuids: Wuids; + WUActionType: ECLWUActions; + Cluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + ECL: string; + Jobname: string; + Test: string; + CurrentPage: string; + PageSize: string; + Sortby: string; + Descending: boolean; + EventServer: string; + EventName: string; + PageFrom: string; + BlockTillFinishTimer: int; + } + + export interface WUActionResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface WUAddLocalFileToWorkunit { + Wuid: string; + Name: string; + Val: string; + DefVal: string; + Type: int; + Length: int; + } + + export interface WUAddLocalFileToWorkunitResponse { + Exceptions: Exceptions; + Wuid: string; + Name: string; + Result: string; + } + + export interface PropertyOptions { + IncludeName: boolean; + IncludeRawValue: boolean; + IncludeFormatted: boolean; + IncludeMeasure: boolean; + IncludeCreator: boolean; + IncludeCreatorType: boolean; + } + + export interface WUAnalyseHotspot { + Wuid: string; + RootScope: string; + OptOnlyActive: boolean; + OnlyCriticalPath: boolean; + IncludeProperties: boolean; + IncludeStatistics: boolean; + ThresholdPercent: double; + PropertyOptions: PropertyOptions; + } + + export interface Property { + Name: string; + RawValue: string; + Formatted: string; + Measure: string; + Creator: string; + CreatorType: string; + } + + export interface Properties { + Property: Property[]; + } + + export interface Note { + Source: string; + Message: string; + ErrorCode: nonNegativeInteger; + Severity: string; + Cost: nonNegativeInteger; + } + + export interface Notes { + Note: Note[]; + } + + export interface Activity { + ScopeName: string; + Id: string; + ScopeType: string; + Properties: Properties; + Notes: Notes; + SinkActivity: string; + } + + export interface Activities { + Activity: Activity[]; + } + + export interface Dependency { + ScopeName: string; + Id: string; + ScopeType: string; + Properties: Properties; + Notes: Notes; + SinkActivity: string; + } + + export interface Dependencies { + Dependency: Dependency[]; + } + + export interface WUAnalyseHotspotResponse { + Exceptions: Exceptions; + RootScope: string; + RootTime: long; + Activities: Activities; + Dependencies: Dependencies; + } + + export interface WUCDebug { + Wuid: string; + Command: string; + } + + export interface WUDebugResponse { + Exceptions: Exceptions; + Result: string; + } + + export interface WUCheckFeatures { + IncludeFullVersion: boolean; + } + + export interface Deployment { + UseCompression: boolean; + } + + export interface WUCheckFeaturesResponse { + Exceptions: Exceptions; + BuildVersionMajor: int; + BuildVersionMinor: int; + BuildVersionPoint: int; + maxRequestEntityLength: unsignedInt; + Deployment: Deployment; + BuildVersion: string; + BuildMaturity: string; + BuildTagTimestamp: string; + } + + export interface WUClusterJobQueueLOG { + Cluster: string; + StartDate: string; + EndDate: string; + } + + export interface WUClusterJobQueueLOGResponse { + Exceptions: Exceptions; + thefile: base64Binary; + } + + export interface WUClusterJobQueueXLS { + Cluster: string; + StartDate: string; + EndDate: string; + ShowType: string; + } + + export interface WUClusterJobQueueXLSResponse { + Exceptions: Exceptions; + Result: base64Binary; + } + + export interface WUClusterJobSummaryXLS { + Cluster: string; + StartDate: string; + EndDate: string; + ShowAll: boolean; + BusinessStartTime: string; + BusinessEndTime: string; + } + + export interface WUClusterJobSummaryXLSResponse { + Exceptions: Exceptions; + Result: base64Binary; + } + + export interface WUClusterJobXLS { + Cluster: string; + StartDate: string; + EndDate: string; + ShowAll: boolean; + BusinessStartTime: string; + BusinessEndTime: string; + } + + export interface WUClusterJobXLSResponse { + Exceptions: Exceptions; + Result: base64Binary; + } + + export interface WUCompileECL { + ECL: string; + ModuleName: string; + AttributeName: string; + Queue: string; + Cluster: string; + Snapshot: string; + IncludeDependencies: boolean; + IncludeComplexity: boolean; + TimeToWait: int; + } + + export interface ECLException { + Severity: string; + Source: string; + Code: int; + Message: string; + Column: int; + LineNo: int; + FileName: string; + Activity: int; + Scope: string; + Priority: int; + Cost: double; + } + + export interface Errors { + ECLException: ECLException[]; + } + + export interface ECLAttribute { + ModuleName: string; + AttributeName: string; + IsLocked: boolean; + IsCheckedOut: boolean; + IsSandbox: boolean; + IsOrphaned: boolean; + } + + export interface Dependencies2 { + ECLAttribute: ECLAttribute[]; + } + + export interface WUCompileECLResponse { + Exceptions: Exceptions; + Complexity: string; + Errors: Errors; + Dependencies: Dependencies2; + } + + export interface WUCopyLogicalFiles { + Wuid: string; + Cluster: string; + CopyLocal: boolean; + } + + export interface Clusters { + Item: string[]; + } + + export interface WULogicalFileCopyInfo { + IsIndex: boolean; + LogicalName: string; + DfuCopyWuid: string; + DfuCopyError: string; + Clusters: Clusters; + } + + export interface OnCluster { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface NotOnCluster { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface Foreign { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface NotFound { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface Cluster { + ClusterName: string; + OnCluster: OnCluster; + NotOnCluster: NotOnCluster; + Foreign: Foreign; + NotFound: NotFound; + } + + export interface ClusterFiles { + Cluster: Cluster[]; + } + + export interface WUCopyLogicalFilesResponse { + Exceptions: Exceptions; + Wuid: string; + ClusterFiles: ClusterFiles; + } + + export interface WUCopyQuerySet { + Source: string; + Target: string; + ActiveOnly: boolean; + CloneActiveState: boolean; + AllowForeignFiles: boolean; + DfsServer: string; + CopyFiles: boolean; + OverwriteDfs: boolean; + SourceProcess: string; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + SourceSSL: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface CopiedQueries { + QueryId: string[]; + } + + export interface ExistingQueries { + QueryId: string[]; + } + + export interface File { + Error: string; + LogicalName: string; + } + + export interface FileErrors { + File: File[]; + } + + export interface WUCopyQuerySetResponse { + Exceptions: Exceptions; + CopiedQueries: CopiedQueries; + ExistingQueries: ExistingQueries; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUCreate { + + } + + export interface Query { + Text: string; + Cpp: string; + ResTxt: string; + Dll: string; + ThorLog: string; + QueryMainDefinition: string; + } + + export interface ECLHelpFile { + Name: string; + Type: string; + IPAddress: string; + Description: string; + FileSize: long; + PID: unsignedInt; + minActivityId: unsignedInt; + maxActivityId: unsignedInt; + IsAvailable: boolean; + } + + export interface Helpers { + ECLHelpFile: ECLHelpFile[]; + } + + export interface Exceptions2 { + ECLException: ECLException[]; + } + + export interface ECLGraph { + Name: string; + Label: string; + Type: string; + Running: boolean; + Complete: boolean; + Failed: boolean; + RunningId: long; + WhenStarted: string; + WhenFinished: string; + } + + export interface Graphs { + ECLGraph: ECLGraph[]; + } + + export interface ECLSourceFiles { + ECLSourceFile: ECLSourceFile[]; + } + + export interface ECLSourceFile { + FileCluster: string; + Name: string; + IsSuperFile: boolean; + Subs: int; + Count: int; + ECLSourceFiles: ECLSourceFiles; + } + + export interface SourceFiles { + ECLSourceFile: ECLSourceFile[]; + } + + export interface ECLSchemaItem { + ColumnName: string; + ColumnType: string; + ColumnTypeCode: int; + isConditional: boolean; + } + + export interface ECLSchemas { + ECLSchemaItem: ECLSchemaItem[]; + } + + export interface ECLResult { + Name: string; + Sequence: int; + Value: string; + Link: string; + FileName: string; + IsSupplied: boolean; + ShowFileContent: boolean; + Total: long; + ECLSchemas: ECLSchemas; + XmlSchema: string; + } + + export interface Results { + ECLResult: ECLResult[]; + } + + export interface Variables { + ECLResult: ECLResult[]; + } + + export interface ECLTimer { + Name: string; + Value: string; + count: int; + GraphName: string; + SubGraphId: int; + Timestamp: long; + When: string; + } + + export interface Timers { + ECLTimer: ECLTimer[]; + } + + export interface DebugValue { + Name: string; + Value: string; + } + + export interface DebugValues { + DebugValue: DebugValue[]; + } + + export interface ApplicationValue { + Application: string; + Name: string; + Value: string; + } + + export interface ApplicationValues { + ApplicationValue: ApplicationValue[]; + } + + export interface ECLWorkflow { + WFID: string; + EventName: string; + EventText: string; + Count: int; + CountRemaining: int; + } + + export interface Workflows { + ECLWorkflow: ECLWorkflow[]; + } + + export interface ECLTimingData { + Name: string; + GraphNum: int; + SubGraphNum: int; + GID: int; + Min: int; + MS: int; + } + + export interface TimingData { + ECLTimingData: ECLTimingData[]; + } + + export interface AllowedClusters { + AllowedCluster: string[]; + } + + export interface ThorLogInfo { + ProcessName: string; + ClusterGroup: string; + LogDate: string; + NumberSlaves: int; + } + + export interface ThorLogList { + ThorLogInfo: ThorLogInfo[]; + } + + export interface ResourceURLs { + URL: string[]; + } + + export interface ServiceNames { + Item: string[]; + } + + export interface ECLWUProcess { + Name: string; + Type: string; + PodName: string; + InstanceNumber: int; + Log: string; + PID: string; + Pattern: string; + Max: int; + } + + export interface ECLWUProcessList { + ECLWUProcess: ECLWUProcess[]; + } + + export interface Workunit { + Wuid: string; + Owner: string; + Cluster: string; + RoxieCluster: string; + Jobname: string; + Queue: string; + StateID: int; + State: string; + StateEx: string; + Description: string; + Protected: boolean; + Active: boolean; + Action: int; + ActionEx: string; + DateTimeScheduled: dateTime; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + Snapshot: string; + ResultLimit: int; + Archived: boolean; + IsPausing: boolean; + ThorLCR: boolean; + EventSchedule: int; + TotalClusterTime: string; + AbortBy: string; + AbortTime: string; + Query: Query; + Helpers: Helpers; + Exceptions: Exceptions2; + Graphs: Graphs; + SourceFiles: SourceFiles; + Results: Results; + Variables: Variables; + Timers: Timers; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + Workflows: Workflows; + TimingData: TimingData; + AllowedClusters: AllowedClusters; + ErrorCount: int; + WarningCount: int; + InfoCount: int; + AlertCount: int; + GraphCount: int; + SourceFileCount: int; + ResultCount: int; + VariableCount: int; + TimerCount: int; + HasDebugValue: boolean; + ApplicationValueCount: int; + XmlParams: string; + AccessFlag: int; + ClusterFlag: int; + HelpersDesc: string; + GraphsDesc: string; + SourceFilesDesc: string; + ResultsDesc: string; + VariablesDesc: string; + TimersDesc: string; + DebugValuesDesc: string; + ApplicationValuesDesc: string; + WorkflowsDesc: string; + HasArchiveQuery: boolean; + ThorLogList: ThorLogList; + ResourceURLs: ResourceURLs; + ResultViewCount: int; + ResourceURLCount: int; + DebugValueCount: int; + WorkflowCount: int; + HelpersCount: int; + ServiceNames: ServiceNames; + ExecuteCost: double; + FileAccessCost: double; + CompileCost: double; + NoAccess: boolean; + ECLWUProcessList: ECLWUProcessList; + } + + export interface WUCreateResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface WUCreateAndUpdate { + Wuid: string; + State: int; + StateOrig: int; + Jobname: string; + JobnameOrig: string; + QueryText: string; + Action: int; + Description: string; + DescriptionOrig: string; + AddDrilldownFields: boolean; + ResultLimit: int; + Protected: boolean; + ProtectedOrig: boolean; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + ScopeOrig: string; + ClusterSelection: string; + ClusterOrig: string; + XmlParams: string; + ThorSlaveIP: string; + QueryMainDefinition: string; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + } + + export interface WUUpdateResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface AbsoluteTimeRange { + StartDate: dateTime; + EndDate: dateTime; + } + + export interface CustomColumns { + Item: string[]; + } + + export interface ComponentsFilter { + Item: string[]; + } + + export interface LogFilter { + WildcardFilter: string; + AbsoluteTimeRange: AbsoluteTimeRange; + RelativeTimeRangeBuffer: unsignedInt; + LineLimit: unsignedInt; + LineStartFrom: long; + SelectColumnMode: LogSelectColumnMode; + CustomColumns: CustomColumns; + ComponentsFilter: ComponentsFilter; + Format: LogAccessLogFormat; + sortByTimeDirection: SortDirection; + LogEventType: LogEventClass; + } + + export interface WUCreateZAPInfo { + Wuid: string; + ESPApplication: string; + ThorProcesses: string; + BuildVersion: string; + ProblemDescription: string; + WhatChanged: string; + WhereSlow: string; + ZAPFileName: string; + IncludeThorSlaveLog: string; + ZAPPassword: string; + SendEmail: boolean; + AttachZAPReportToEmail: boolean; + EmailFrom: string; + EmailSubject: string; + EmailBody: string; + LogFilter: LogFilter; + } + + export interface WUCreateZAPInfoResponse { + Exceptions: Exceptions; + thefile: base64Binary; + ZAPFileName: string; + } + + export interface WUDelete { + Wuids: Wuids; + BlockTillFinishTimer: int; + } + + export interface WUDeleteResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface NamedValue { + Name: string; + Value: string; + } + + export interface DebugValues2 { + NamedValue: NamedValue[]; + } + + export interface WUDeployWorkunit { + Cluster: string; + Name: string; + Wait: int; + ObjType: string; + FileName: string; + Object: base64Binary; + ResultLimit: int; + QueryMainDefinition: string; + Snapshot: string; + DebugValues: DebugValues2; + Protect: boolean; + } + + export interface WUDeployWorkunitResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface Scopes { + Scope: string[]; + } + + export interface Ids { + id: string[]; + } + + export interface ScopeTypes { + ScopeType: string[]; + } + + export interface PropertyFilter { + Name: string; + ExactValue: string; + MinValue: string; + MaxValue: string; + } + + export interface PropertyFilters { + PropertyFilter: PropertyFilter[]; + } + + export interface ScopeFilter { + MaxDepth: integer; + Scopes: Scopes; + Ids: Ids; + ScopeTypes: ScopeTypes; + PropertyFilters: PropertyFilters; + } + + export interface NestedFilter { + Depth: unsignedInt; + ScopeTypes: ScopeTypes; + } + + export interface Properties2 { + Property: string[]; + } + + export interface Extra { + scopeType: string; + Properties: Properties2; + } + + export interface ExtraProperties { + Extra: Extra[]; + } + + export interface PropertiesToReturn { + AllStatistics: boolean; + AllAttributes: boolean; + AllHints: boolean; + AllScopes: boolean; + AllProperties: boolean; + AllNotes: boolean; + MinVersion: uint64; + Measure: string; + Properties: Properties2; + ExtraProperties: ExtraProperties; + } + + export interface ScopeOptions { + IncludeMatchedScopesInResults: boolean; + IncludeScope: boolean; + IncludeId: boolean; + IncludeScopeType: boolean; + } + + export interface WUDetails { + WUID: string; + ScopeFilter: ScopeFilter; + NestedFilter: NestedFilter; + PropertiesToReturn: PropertiesToReturn; + Filter: string; + ScopeOptions: ScopeOptions; + PropertyOptions: PropertyOptions; + } + + export interface Scope { + ScopeName: string; + Id: string; + ScopeType: string; + Properties: Properties; + Notes: Notes; + SinkActivity: string; + } + + export interface Scopes2 { + Scope: Scope[]; + } + + export interface WUDetailsResponse { + Exceptions: Exceptions; + MaxVersion: uint64; + WUID: string; + Scopes: Scopes2; + } + + export interface WUDetailsMeta { + + } + + export interface Property2 { + Name: string; + ValueType: WUDetailsAttrValueType; + Description: string; + } + + export interface Properties3 { + Property: Property2[]; + } + + export interface Measures { + Measure: string[]; + } + + export interface Activity2 { + Kind: unsignedInt; + Name: string; + IsSink: boolean; + IsSource: boolean; + } + + export interface Activities2 { + Activity: Activity2[]; + } + + export interface WUDetailsMetaResponse { + Exceptions: Exceptions; + Properties: Properties3; + ScopeTypes: ScopeTypes; + Measures: Measures; + Activities: Activities2; + } + + export interface EclDefinitions { + Item: string[]; + } + + export interface WUEclDefinitionAction { + EclDefinitions: EclDefinitions; + ActionType: EclDefinitionActions; + Target: string; + RemoteDali: string; + SourceProcess: string; + Priority: string; + Comment: string; + MemoryLimit: string; + DeletePrevious: boolean; + SuspendPrevious: boolean; + NoActivate: boolean; + NoReload: boolean; + DontCopyFiles: boolean; + AllowForeign: boolean; + UpdateDfs: boolean; + UpdateSuperfiles: boolean; + UpdateCloneFrom: boolean; + DontAppendCluster: boolean; + MsToWait: int; + TimeLimit: int; + WarnTimeLimit: int; + DfuCopyFiles: boolean; + DfuOverwrite: boolean; + DfuQueue: string; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface WUEclDefinitionActionResult { + EclDefinition: string; + Action: string; + WUID: string; + QueryID: string; + Result: string; + } + + export interface ActionResults2 { + WUEclDefinitionActionResult: WUEclDefinitionActionResult[]; + } + + export interface WUEclDefinitionActionResponse { + Exceptions: Exceptions; + ActionResults: ActionResults2; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUExport { + Cluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + Jobname: string; + } + + export interface WUExportResponse { + Exceptions: Exceptions; + ExportData: base64Binary; + } + + export interface LogColumns { + Item: string[]; + } + + export interface WUFile { + Name: string; + Wuid: string; + Type: string; + Option: int; + SlaveIP: string; + IPAddress: string; + Description: string; + QuerySet: string; + Query: string; + Process: string; + ClusterGroup: string; + LogDate: string; + SlaveNumber: int; + SizeLimit: long; + ErrorMessageFormat: ErrorMessageFormat; + PlainText: string; + MaxLogRecords: unsignedInt; + LogSelectColumnMode: LogSelectColumnMode; + LogFormat: LogAccessLogFormat; + LogSearchTimeBuffSecs: unsignedInt; + LogColumns: LogColumns; + } + + export interface WULogFileResponse { + Exceptions: Exceptions; + Wuid: string; + QuerySet: string; + QueryName: string; + QueryId: string; + FileName: string; + DaliServer: string; + thefile: base64Binary; + } + + export interface WUFullResult { + Wuid: string; + NoRootTag: boolean; + ExceptionSeverity: WUExceptionSeverity; + } + + export interface WUFullResultResponse { + Exceptions: Exceptions; + Wuid: string; + Results: string; + } + + export interface WUGVCGraphInfo { + Wuid: string; + Name: string; + GID: string; + BatchWU: int; + SubgraphId: int; + } + + export interface WUGVCGraphInfoResponse { + Exceptions: Exceptions; + Wuid: string; + Name: string; + GID: string; + Running: boolean; + TheGraph: string; + BatchWU: int; + } + + export interface WUGetArchiveFile { + WUID: string; + ModuleName: string; + FileName: string; + Path: string; + } + + export interface WUGetArchiveFileResponse { + Exceptions: Exceptions; + File: string; + Message: string; + } + + export interface WUGetDependancyTrees { + Cluster: string; + Queue: string; + Snapshot: string; + Items: string; + TimeoutMilliSec: string; + } + + export interface WUGetDependancyTreesResponse { + Exceptions: Exceptions; + Errors: Errors; + DependancyTrees: base64Binary; + } + + export interface WUGetGraph { + Wuid: string; + GraphName: string; + SubGraphId: string; + } + + export interface ECLGraphEx { + Name: string; + Label: string; + Type: string; + Graph: string; + Running: boolean; + RunningId: long; + Complete: boolean; + Failed: boolean; + } + + export interface Graphs2 { + ECLGraphEx: ECLGraphEx[]; + } + + export interface WUGetGraphResponse { + Exceptions: Exceptions; + Graphs: Graphs2; + } + + export interface WUGetGraphNameAndTypes { + Wuid: string; + Type: string; + } + + export interface GraphNameAndType { + Name: string; + Type: string; + } + + export interface GraphNameAndTypes { + GraphNameAndType: GraphNameAndType[]; + } + + export interface WUGetGraphNameAndTypesResponse { + Exceptions: Exceptions; + GraphNameAndTypes: GraphNameAndTypes; + } + + export interface WUGetNumFileToCopy { + ClusterName: string; + TargetName: string; + PageSize: long; + PageStartFrom: long; + Sortby: string; + Descending: boolean; + CacheHint: long; + } + + export interface Endpoint { + URL: string; + Status: string; + NumQueryFileToCopy: int; + } + + export interface Endpoints { + Endpoint: Endpoint[]; + } + + export interface WUGetNumFileToCopyResponse { + Exceptions: Exceptions; + Endpoints: Endpoints; + CacheHint: long; + Total: long; + } + + export interface WUGetPlugins { + + } + + export interface Plugins { + WUEclPluginsInFolder: WUEclPluginsInFolder[]; + } + + export interface WUEclPluginsInFolder { + Path: string; + Plugins: Plugins; + } + + export interface WUGetPluginsResponse { + Exceptions: Exceptions; + Plugins: Plugins; + } + + export interface WUGetStats { + WUID: string; + CreatorType: string; + Creator: string; + ScopeType: string; + Scope: string; + Kind: string; + Measure: string; + MinScopeDepth: unsignedInt; + MaxScopeDepth: unsignedInt; + IncludeGraphs: boolean; + CreateDescriptions: boolean; + MinValue: long; + MaxValue: long; + Filter: string; + } + + export interface WUStatisticItem { + Creator: string; + CreatorType: string; + Scope: string; + ScopeType: string; + Description: string; + TimeStamp: string; + Measure: string; + Kind: string; + Value: string; + RawValue: long; + Count: long; + Max: long; + Wuid: string; + } + + export interface Statistics { + WUStatisticItem: WUStatisticItem[]; + } + + export interface WUGetStatsResponse { + Exceptions: Exceptions; + WUID: string; + Statistics: Statistics; + } + + export interface WUGetThorJobList { + Cluster: string; + StartDate: string; + EndDate: string; + MaxJobsToReturn: unsignedInt; + } + + export interface ECLJob { + Wuid: string; + Graph: string; + State: string; + StartedDate: string; + FinishedDate: string; + Cluster: string; + GraphNum: string; + SubGraphNum: string; + NumOfRuns: string; + Duration: int; + } + + export interface JobList { + ECLJob: ECLJob[]; + } + + export interface InProgressJobList { + ECLJob: ECLJob[]; + } + + export interface WUGetThorJobListResponse { + Exceptions: Exceptions; + JobList: JobList; + InProgressJobList: InProgressJobList; + Warning: string; + } + + export interface WUGetThorJobQueue { + Cluster: string; + StartDate: string; + EndDate: string; + MaxJobQueueItemsToReturn: unsignedInt; + } + + export interface ThorQueue { + DT: string; + RunningWUs: string; + QueuedWUs: string; + WaitingThors: string; + ConnectedThors: string; + IdledThors: string; + RunningWU1: string; + RunningWU2: string; + } + + export interface QueueList { + ThorQueue: ThorQueue[]; + } + + export interface WUGetThorJobQueueResponse { + Exceptions: Exceptions; + LongestQueue: int; + MaxThorConnected: int; + QueueList: QueueList; + Warning: string; + } + + export interface WUGetZAPInfo { + WUID: string; + } + + export interface WUGetZAPInfoResponse { + Exceptions: Exceptions; + WUID: string; + ESPApplication: string; + ThorProcesses: string; + BuildVersion: string; + Archive: string; + EmailTo: string; + EmailFrom: string; + Message: string; + } + + export interface WUGraphInfo { + Wuid: string; + Name: string; + GID: string; + BatchWU: int; + } + + export interface WUGraphInfoResponse { + Exceptions: Exceptions; + Wuid: string; + Name: string; + GID: string; + BatchWU: int; + Running: boolean; + } + + export interface WUGraphTiming { + Wuid: string; + } + + export interface WUGraphTimingResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface WUInfo { + Wuid: string; + TruncateEclTo64k: boolean; + Type: string; + IncludeExceptions: boolean; + IncludeGraphs: boolean; + IncludeSourceFiles: boolean; + IncludeResults: boolean; + IncludeResultsViewNames: boolean; + IncludeVariables: boolean; + IncludeTimers: boolean; + IncludeDebugValues: boolean; + IncludeApplicationValues: boolean; + IncludeWorkflows: boolean; + IncludeXmlSchemas: boolean; + IncludeResourceURLs: boolean; + IncludeECL: boolean; + IncludeHelpers: boolean; + IncludeAllowedClusters: boolean; + IncludeTotalClusterTime: boolean; + IncludeServiceNames: boolean; + IncludeProcesses: boolean; + SuppressResultSchemas: boolean; + ThorSlaveIP: string; + } + + export interface ResultViews { + View: string[]; + } + + export interface WUInfoResponse { + Exceptions: Exceptions; + Workunit: Workunit; + AutoRefresh: int; + CanCompile: boolean; + ThorSlaveIP: string; + ResultViews: ResultViews; + SecMethod: string; + } + + export interface WUInfoDetails { + Wuid: string; + TruncateEclTo64k: boolean; + Type: string; + IncludeExceptions: boolean; + IncludeGraphs: boolean; + IncludeSourceFiles: boolean; + IncludeResults: boolean; + IncludeResultsViewNames: boolean; + IncludeVariables: boolean; + IncludeTimers: boolean; + IncludeDebugValues: boolean; + IncludeApplicationValues: boolean; + IncludeWorkflows: boolean; + IncludeXmlSchemas: boolean; + IncludeResourceURLs: boolean; + IncludeECL: boolean; + IncludeHelpers: boolean; + IncludeAllowedClusters: boolean; + IncludeTotalClusterTime: boolean; + IncludeServiceNames: boolean; + IncludeProcesses: boolean; + SuppressResultSchemas: boolean; + ThorSlaveIP: string; + } + + export interface WUJobList { + Cluster: string; + Process: string; + StartDate: string; + EndDate: string; + ShowAll: boolean; + BusinessStartHour: int; + BusinessEndHour: int; + } + + export interface Jobs { + ECLJob: ECLJob[]; + } + + export interface WUJobListResponse { + Exceptions: Exceptions; + StartDate: string; + EndDate: string; + Jobs: Jobs; + } + + export interface WULightWeightQuery { + Wuid: string; + Type: string; + Cluster: string; + Owner: string; + JobName: string; + StartDate: string; + EndDate: string; + BeforeWU: string; + AfterWU: string; + State: string; + ApplicationValues: ApplicationValues; + PageStartFrom: long; + PageSize: unsignedInt; + SortBy: string; + Descending: boolean; + CacheHint: long; + } + + export interface ECLWorkunitLW { + Wuid: string; + Owner: string; + JobName: string; + WuScope: string; + ClusterName: string; + State: int; + StateDesc: string; + Action: int; + ActionDesc: string; + Priority: int; + PriorityDesc: string; + PriorityLevel: int; + IsProtected: boolean; + DateTimeScheduled: dateTime; + TotalClusterTime: unsignedInt; + ApplicationValues: ApplicationValues; + NoAccess: boolean; + } + + export interface Workunits { + ECLWorkunitLW: ECLWorkunitLW[]; + } + + export interface WULightWeightQueryResponse { + Exceptions: Exceptions; + NumWUs: int; + CacheHint: long; + Workunits: Workunits; + } + + export interface WUListArchiveFiles { + WUID: string; + } + + export interface ArchiveModules { + ArchiveModule: ArchiveModule[]; + } + + export interface File2 { + Name: string; + Key: string; + SourcePath: string; + Path: string; + } + + export interface Files { + File: File2[]; + } + + export interface ArchiveModule { + Name: string; + FullName: string; + Flags: unsignedInt; + Key: string; + Plugin: string; + SourcePath: string; + Version: string; + Path: string; + ArchiveModules: ArchiveModules; + Files: Files; + } + + export interface WUListArchiveFilesResponse { + Exceptions: Exceptions; + ArchiveModules: ArchiveModules; + Files: Files; + Message: string; + } + + export interface WUListLocalFileRequired { + Wuid: string; + } + + export interface LogicalFileUpload { + Type: int; + Source: string; + Destination: string; + EventTag: string; + } + + export interface LocalFileUploads { + LogicalFileUpload: LogicalFileUpload[]; + } + + export interface WUListLocalFileRequiredResponse { + Exceptions: Exceptions; + LocalFileUploads: LocalFileUploads; + } + + export interface WUListQueries { + QuerySetName: string; + ClusterName: string; + LibraryName: string; + MemoryLimitLow: long; + MemoryLimitHigh: long; + TimeLimitLow: nonNegativeInteger; + TimeLimitHigh: nonNegativeInteger; + WarnTimeLimitLow: nonNegativeInteger; + WarnTimeLimitHigh: nonNegativeInteger; + PriorityLow: nonNegativeInteger; + PriorityHigh: nonNegativeInteger; + Activated: boolean; + SuspendedFilter: WUQueryFilterSuspendedType; + WUID: string; + QueryID: string; + QueryName: string; + PublishedBy: string; + PageSize: nonNegativeInteger; + PageStartFrom: nonNegativeInteger; + Sortby: string; + Descending: boolean; + CacheHint: long; + FileName: string; + CheckAllNodes: boolean; + } + + export interface ClusterQueryState { + Cluster: string; + State: string; + Errors: string; + MixedNodeStates: boolean; + } + + export interface Clusters2 { + ClusterQueryState: ClusterQueryState[]; + } + + export interface QuerySetQuery { + Id: string; + Name: string; + Wuid: string; + Dll: string; + Suspended: boolean; + Clusters: Clusters2; + memoryLimit: string; + timeLimit: nonNegativeInteger; + warnTimeLimit: nonNegativeInteger; + priority: string; + Comment: string; + QuerySetId: string; + IsLibrary: boolean; + Activated: boolean; + PublishedBy: string; + snapshot: string; + PriorityID: int; + } + + export interface QuerysetQueries { + QuerySetQuery: QuerySetQuery[]; + } + + export interface WUListQueriesResponse { + Exceptions: Exceptions; + NumberOfQueries: int; + CacheHint: long; + QuerysetQueries: QuerysetQueries; + } + + export interface WUListQueriesUsingFile { + Target: string; + Process: string; + FileName: string; + } + + export interface QueryUsingFile { + Id: string; + Package: string; + } + + export interface Queries { + QueryUsingFile: QueryUsingFile[]; + } + + export interface TargetQueriesUsingFile { + Target: string; + PackageMap: string; + Queries: Queries; + } + + export interface Targets { + TargetQueriesUsingFile: TargetQueriesUsingFile[]; + } + + export interface WUListQueriesUsingFileResponse { + Exceptions: Exceptions; + Process: string; + FileName: string; + Targets: Targets; + } + + export interface WUMultiQuerysetDetails { + ClusterName: string; + QuerySetName: string; + Filter: string; + FilterType: WUQuerySetFilterType; + CheckAllNodes: boolean; + } + + export interface Queries2 { + QuerySetQuery: QuerySetQuery[]; + } + + export interface QuerySetAlias { + Id: string; + Name: string; + } + + export interface Aliases { + QuerySetAlias: QuerySetAlias[]; + } + + export interface WUQuerySetDetail { + QuerySetName: string; + Queries: Queries2; + Aliases: Aliases; + } + + export interface Querysets { + WUQuerySetDetail: WUQuerySetDetail[]; + } + + export interface WUMultiQuerySetDetailsResponse { + Exceptions: Exceptions; + ClusterName: string; + Querysets: Querysets; + } + + export interface WUProcessGraph { + Wuid: string; + Name: string; + } + + export interface WUProcessGraphResponse { + Exceptions: Exceptions; + theGraph: string; + } + + export interface WUProtect { + Wuids: Wuids; + Protect: boolean; + } + + export interface WUProtectResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface WUPublishWorkunit { + Wuid: string; + Cluster: string; + QueryName: string; + WorkUnitJobName: string; + JobName: string; + Activate: int; + NotifyCluster: boolean; + Wait: int; + NoReload: boolean; + UpdateWorkUnitName: boolean; + memoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + RemoteDali: string; + Comment: string; + DontCopyFiles: boolean; + SourceProcess: string; + AllowForeignFiles: boolean; + UpdateDfs: boolean; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface WUPublishWorkunitResponse { + Exceptions: Exceptions; + Wuid: string; + Result: string; + QuerySet: string; + QueryName: string; + QueryId: string; + ReloadFailed: boolean; + Suspended: boolean; + ErrorMessage: string; + ClusterFiles: ClusterFiles; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUPushEvent { + EventName: string; + EventText: string; + } + + export interface WUPushEventResponse { + Exceptions: Exceptions; + } + + export interface WUQuery { + Wuid: string; + Type: string; + Cluster: string; + RoxieCluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + ECL: string; + Jobname: string; + LogicalFile: string; + LogicalFileSearchType: string; + ApplicationValues: ApplicationValues; + BeforeWU: string; + AfterWU: string; + TotalClusterTimeThresholdMilliSec: unsignedInt; + Count: int; + PageSize: long; + PageStartFrom: long; + PageEndAt: long; + Protected: WUProtectFilter; + Sortby: string; + Descending: boolean; + CacheHint: long; + } + + export interface ECLWorkunit { + Wuid: string; + Owner: string; + Cluster: string; + RoxieCluster: string; + Jobname: string; + Queue: string; + StateID: int; + State: string; + StateEx: string; + Description: string; + Protected: boolean; + Active: boolean; + Action: int; + ActionEx: string; + DateTimeScheduled: dateTime; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + Snapshot: string; + ResultLimit: int; + Archived: boolean; + IsPausing: boolean; + ThorLCR: boolean; + EventSchedule: int; + TotalClusterTime: string; + AbortBy: string; + AbortTime: string; + Query: Query; + Helpers: Helpers; + Exceptions: Exceptions2; + Graphs: Graphs; + SourceFiles: SourceFiles; + Results: Results; + Variables: Variables; + Timers: Timers; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + Workflows: Workflows; + TimingData: TimingData; + AllowedClusters: AllowedClusters; + ErrorCount: int; + WarningCount: int; + InfoCount: int; + AlertCount: int; + GraphCount: int; + SourceFileCount: int; + ResultCount: int; + VariableCount: int; + TimerCount: int; + HasDebugValue: boolean; + ApplicationValueCount: int; + XmlParams: string; + AccessFlag: int; + ClusterFlag: int; + HelpersDesc: string; + GraphsDesc: string; + SourceFilesDesc: string; + ResultsDesc: string; + VariablesDesc: string; + TimersDesc: string; + DebugValuesDesc: string; + ApplicationValuesDesc: string; + WorkflowsDesc: string; + HasArchiveQuery: boolean; + ThorLogList: ThorLogList; + ResourceURLs: ResourceURLs; + ResultViewCount: int; + ResourceURLCount: int; + DebugValueCount: int; + WorkflowCount: int; + HelpersCount: int; + ServiceNames: ServiceNames; + ExecuteCost: double; + FileAccessCost: double; + CompileCost: double; + NoAccess: boolean; + ECLWUProcessList: ECLWUProcessList; + } + + export interface Workunits2 { + ECLWorkunit: ECLWorkunit[]; + } + + export interface WUQueryResponse { + Exceptions: Exceptions; + Type: string; + Cluster: string; + RoxieCluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + ECL: string; + Jobname: string; + LogicalFile: string; + LogicalFileSearchType: string; + Current: string; + Next: string; + Count: int; + PageSize: long; + PrevPage: long; + NextPage: long; + LastPage: long; + NumWUs: int; + First: boolean; + PageStartFrom: long; + PageEndAt: long; + Sortby: string; + Descending: boolean; + BasicQuery: string; + Filters: string; + CacheHint: long; + Workunits: Workunits2; + } + + export interface WUQueryConfig { + Target: string; + QueryId: string; + Wait: int; + NoReload: boolean; + memoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + Comment: string; + } + + export interface Result { + QueryId: string; + } + + export interface Results2 { + Result: Result[]; + } + + export interface WUQueryConfigResponse { + Exceptions: Exceptions; + ReloadFailed: boolean; + Results: Results2; + } + + export interface WUQueryDetails { + QueryId: string; + QuerySet: string; + IncludeStateOnClusters: boolean; + IncludeSuperFiles: boolean; + IncludeWsEclAddresses: boolean; + CheckAllNodes: boolean; + IncludeWUDetails: boolean; + IncludeWUQueryFiles: boolean; + } + + export interface LogicalFiles { + Item: string[]; + } + + export interface SubFiles { + File: string[]; + } + + export interface SuperFiles { + SuperFile: SuperFile[]; + } + + export interface SuperFile { + Name: string; + SubFiles: SubFiles; + SuperFiles: SuperFiles; + } + + export interface LibrariesUsed { + Item: string[]; + } + + export interface WsEclAddresses { + Address: string[]; + } + + export interface WUGraphs { + ECLGraph: ECLGraph[]; + } + + export interface WUTimers { + ECLTimer: ECLTimer[]; + } + + export interface WUQueryDetailsResponse { + Exceptions: Exceptions; + QueryId: string; + QuerySet: string; + QueryName: string; + Wuid: string; + Dll: string; + Suspended: boolean; + Activated: boolean; + SuspendedBy: string; + Clusters: Clusters2; + PublishedBy: string; + Comment: string; + LogicalFiles: LogicalFiles; + SuperFiles: SuperFiles; + IsLibrary: boolean; + Priority: string; + PriorityID: int; + WUSnapShot: string; + CompileTime: string; + LibrariesUsed: LibrariesUsed; + CountGraphs: int; + ResourceURLCount: int; + WsEclAddresses: WsEclAddresses; + WUGraphs: WUGraphs; + WUTimers: WUTimers; + } + + export interface WUQueryDetailsLightWeight { + QueryId: string; + QuerySet: string; + IncludeWUDetails: boolean; + IncludeWUQueryFiles: boolean; + IncludeSuperFiles: boolean; + IncludeWsEclAddresses: boolean; + IncludeStateOnClusters: boolean; + CheckAllNodes: boolean; + } + + export interface WUQueryFiles { + Target: string; + QueryId: string; + } + + export interface File3 { + FileName: string; + FileSize: long; + NumberOfParts: unsignedInt; + } + + export interface Files2 { + File: File3[]; + } + + export interface Query2 { + QueryId: string; + Files: Files2; + SuperFiles: SuperFiles; + } + + export interface Queries3 { + Query: Query2[]; + } + + export interface WUQueryFilesResponse { + Exceptions: Exceptions; + Files: Files2; + SuperFiles: SuperFiles; + Queries: Queries3; + } + + export interface WUQueryGetGraph { + Target: string; + QueryId: string; + GraphName: string; + SubGraphId: string; + } + + export interface WUQueryGetGraphResponse { + Exceptions: Exceptions; + Graphs: Graphs2; + } + + export interface WUQueryGetSummaryStats { + Target: string; + QueryId: string; + FromTime: string; + ToTime: string; + IncludeRawStats: boolean; + } + + export interface QuerySummaryStats { + Endpoint: string; + Status: string; + StartTime: string; + EndTime: string; + CountTotal: int; + CountFailed: int; + AverageSlavesReplyLen: int; + AverageBytesOut: long; + SizeAvgPeakMemory: long; + TimeAvgTotalExecuteMinutes: long; + TimeMinTotalExecuteMinutes: long; + TimeMaxTotalExecuteMinutes: long; + Percentile97: long; + Percentile97Estimate: boolean; + } + + export interface StatsList { + QuerySummaryStats: QuerySummaryStats[]; + } + + export interface AggregateQueryStatsList { + QuerySummaryStats: QuerySummaryStats[]; + } + + export interface QueryStatsRecord { + StartTime: string; + ElapsedTimeMs: long; + MemoryUsed: long; + BytesOut: long; + SlavesReplyLen: int; + Failed: boolean; + } + + export interface QueryStatsRecordList { + QueryStatsRecord: QueryStatsRecord[]; + } + + export interface QueryStats { + ID: string; + AggregateQueryStatsList: AggregateQueryStatsList; + QueryStatsRecordList: QueryStatsRecordList; + } + + export interface QueryStatsList { + EndpointQueryStats: EndpointQueryStats[]; + } + + export interface EndpointQueryStats { + Endpoint: string; + Status: string; + QueryStatsList: QueryStatsList; + } + + export interface WUQueryGetSummaryStatsResponse { + Exceptions: Exceptions; + StatsList: StatsList; + QueryStatsList: QueryStatsList; + } + + export interface Alias { + Name: string; + } + + export interface Aliases2 { + Alias: Alias[]; + } + + export interface WUQuerysetAliasAction { + Action: QuerySetAliasActionTypes; + QuerySetName: string; + Aliases: Aliases2; + } + + export interface Result2 { + Name: string; + Success: boolean; + Code: int; + Message: string; + } + + export interface Results3 { + Result: Result2[]; + } + + export interface WUQuerySetAliasActionResponse { + Exceptions: Exceptions; + Action: QuerySetAliasActionTypes; + QuerySetName: string; + Results: Results3; + } + + export interface WUQuerysetCopyQuery { + Source: string; + Target: string; + Cluster: string; + DaliServer: string; + Activate: int; + Overwrite: boolean; + DontCopyFiles: boolean; + Wait: int; + NoReload: boolean; + memoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + priority: string; + Comment: string; + SourceProcess: string; + DestName: string; + AllowForeignFiles: boolean; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + SourceSSL: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface WUQuerySetCopyQueryResponse { + Exceptions: Exceptions; + QueryId: string; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUQuerysetDetails { + QuerySetName: string; + Filter: string; + ClusterName: string; + FilterType: WUQuerySetFilterType; + CheckAllNodes: boolean; + } + + export interface QuerysetAliases { + QuerySetAlias: QuerySetAlias[]; + } + + export interface ClusterNames { + Item: string[]; + } + + export interface WUQuerySetDetailsResponse { + Exceptions: Exceptions; + QuerySetName: string; + QuerysetQueries: QuerysetQueries; + QuerysetAliases: QuerysetAliases; + ClusterName: string; + Filter: string; + FilterType: WUQuerySetFilterType; + ClusterNames: ClusterNames; + } + + export interface WUQuerysetExport { + Target: string; + Compress: boolean; + ActiveOnly: boolean; + Protect: boolean; + } + + export interface WUQuerysetExportResponse { + Exceptions: Exceptions; + Target: string; + Compressed: boolean; + Data: base64Binary; + } + + export interface WUQuerysetImport { + Target: string; + QueryMask: string; + Replace: boolean; + ActiveOnly: boolean; + Activation: QuerysetImportActivation; + Compressed: boolean; + Data: base64Binary; + AllowForeignFiles: boolean; + DfsServer: string; + CopyFiles: boolean; + OverwriteDfs: boolean; + SourceProcess: string; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface ImportedQueries { + QueryId: string[]; + } + + export interface MissingWuids { + QueryId: string[]; + } + + export interface WUQuerysetImportResponse { + Exceptions: Exceptions; + Target: string; + ClearedExisting: boolean; + Success: boolean; + ImportedQueries: ImportedQueries; + ExistingQueries: ExistingQueries; + MissingWuids: MissingWuids; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface ClientState { + Suspended: string; + } + + export interface Query3 { + QueryId: string; + Activated: boolean; + SuspendedByUser: boolean; + ClientState: ClientState; + } + + export interface Queries4 { + Query: Query3[]; + } + + export interface WUQuerysetQueryAction { + Action: QuerySetQueryActionTypes; + QuerySetName: string; + Queries: Queries4; + } + + export interface Result3 { + QueryId: string; + WUID: string; + Suspended: boolean; + Success: boolean; + Code: int; + Message: string; + } + + export interface Results4 { + Result: Result3[]; + } + + export interface WUQuerySetQueryActionResponse { + Exceptions: Exceptions; + Action: QuerySetQueryActionTypes; + QuerySetName: string; + Results: Results4; + } + + export interface WUQuerysets { + test: boolean; + } + + export interface QuerySet { + QuerySetName: string; + } + + export interface Querysets2 { + QuerySet: QuerySet[]; + } + + export interface WUQuerysetsResponse { + Exceptions: Exceptions; + Querysets: Querysets2; + } + + export interface WURecreateQuery { + Target: string; + QueryId: string; + DebugValues: DebugValues2; + DestTarget: string; + Republish: boolean; + Activate: WUQueryActivationMode; + NoReload: boolean; + MemoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + Comment: string; + RemoteDali: string; + DontCopyFiles: boolean; + SourceProcess: string; + AllowForeignFiles: boolean; + UpdateDfs: boolean; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + Wait: int; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface WURecreateQueryResponse { + Exceptions: Exceptions; + Wuid: string; + QuerySet: string; + QueryName: string; + QueryId: string; + MemoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + Comment: string; + ReloadFailed: boolean; + Suspended: boolean; + ErrorMessage: string; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUResubmit { + Wuids: Wuids; + BlockTillFinishTimer: int; + ResetWorkflow: boolean; + CloneWorkunit: boolean; + } + + export interface WU { + WUID: string; + ParentWUID: string; + } + + export interface WUs { + WU: WU[]; + } + + export interface WUResubmitResponse { + Exceptions: Exceptions; + WUs: WUs; + } + + export interface FilterBy { + NamedValue: NamedValue[]; + } + + export interface WUResult { + Wuid: string; + Sequence: int; + ResultName: string; + LogicalName: string; + Cluster: string; + SuppressXmlSchema: boolean; + BypassCachedResult: boolean; + FilterBy: FilterBy; + Start: long; + Count: int; + } + + export interface WUResultResponse { + Exceptions: Exceptions; + Wuid: string; + Sequence: int; + LogicalName: string; + Cluster: string; + Name: string; + Start: long; + Requested: int; + Count: int; + Total: long; + Result: string; + } + + export interface WUResultBin { + LogicalName: string; + Wuid: string; + ResultName: string; + Sequence: int; + Format: string; + Cluster: string; + FilterBy: FilterBy; + Start: long; + Count: int; + } + + export interface WUResultBinResponse { + Exceptions: Exceptions; + Wuid: string; + Sequence: int; + Name: string; + Start: long; + Count: int; + Requested: int; + Total: long; + Result: base64Binary; + Format: string; + } + + export interface WUResultSummary { + Wuid: string; + Sequence: int; + } + + export interface Result4 { + Name: string; + Sequence: int; + Value: string; + Link: string; + FileName: string; + IsSupplied: boolean; + ShowFileContent: boolean; + Total: long; + ECLSchemas: ECLSchemas; + XmlSchema: string; + } + + export interface WUResultSummaryResponse { + Exceptions: Exceptions; + Wuid: string; + Sequence: int; + Format: int; + Result: Result4; + } + + export interface WUResultView { + Wuid: string; + ViewName: string; + Sequence: int; + ResultName: string; + } + + export interface WUResultViewResponse { + Exceptions: Exceptions; + Wuid: string; + ViewName: string; + Result: string; + } + + export interface Variables2 { + NamedValue: NamedValue[]; + } + + export interface WURun { + QuerySet: string; + Query: string; + Wuid: string; + CloneWorkunit: boolean; + Cluster: string; + Wait: int; + Input: string; + NoRootTag: boolean; + DebugValues: DebugValues2; + Variables: Variables2; + ApplicationValues: ApplicationValues; + ExceptionSeverity: WUExceptionSeverity; + } + + export interface WURunResponse { + Exceptions: Exceptions; + Wuid: string; + State: string; + Results: string; + } + + export interface WUSchedule { + Wuid: string; + Cluster: string; + Queue: string; + Snapshot: string; + When: dateTime; + MaxRunTime: int; + } + + export interface WUScheduleResponse { + Exceptions: Exceptions; + } + + export interface WUShowScheduled { + Cluster: string; + EventName: string; + PushEventName: string; + PushEventText: string; + State: string; + JobName: string; + Owner: string; + EventText: string; + } + + export interface ServerInfo { + Name: string; + NetAddress: string; + } + + export interface Clusters3 { + ServerInfo: ServerInfo[]; + } + + export interface ScheduledWU { + Wuid: string; + Cluster: string; + EventName: string; + EventText: string; + JobName: string; + StateID: int; + State: string; + Owner: string; + } + + export interface Workunits3 { + ScheduledWU: ScheduledWU[]; + } + + export interface WUShowScheduledResponse { + Exceptions: Exceptions; + ClusterSelected: int; + EventName: string; + PushEventName: string; + PushEventText: string; + Query: string; + Clusters: Clusters3; + Workunits: Workunits3; + } + + export interface WUSubmit { + Wuid: string; + Cluster: string; + Queue: string; + Snapshot: string; + MaxRunTime: int; + MaxCost: int; + BlockTillFinishTimer: int; + SyntaxCheck: boolean; + NotifyCluster: boolean; + } + + export interface WUSubmitResponse { + Exceptions: Exceptions; + } + + export interface WUSyntaxCheckECL { + ECL: string; + ModuleName: string; + AttributeName: string; + Queue: string; + Cluster: string; + Snapshot: string; + TimeToWait: int; + PersistWorkunit: boolean; + DebugValues: DebugValues; + } + + export interface WUSyntaxCheckResponse { + Exceptions: Exceptions; + Errors: Errors; + Message: string; + } + + export interface WUUpdate { + Wuid: string; + State: int; + StateOrig: int; + Jobname: string; + JobnameOrig: string; + QueryText: string; + Action: int; + Description: string; + DescriptionOrig: string; + AddDrilldownFields: boolean; + ResultLimit: int; + Protected: boolean; + ProtectedOrig: boolean; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + ScopeOrig: string; + ClusterSelection: string; + ClusterOrig: string; + XmlParams: string; + ThorSlaveIP: string; + QueryMainDefinition: string; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + } + + export interface WUUpdateQueryEntry { + QuerySet: string; + QueryId: string; + Comment: string; + } + + export interface WUUpdateQueryEntryResponse { + Exceptions: Exceptions; + } + + export interface WUWaitCompiled { + Wuid: string; + Wait: int; + ReturnOnWait: boolean; + } + + export interface WUWaitResponse { + Exceptions: Exceptions; + StateID: int; + } + + export interface WUWaitComplete { + Wuid: string; + Wait: int; + ReturnOnWait: boolean; + } + +} + +export class WorkunitsServiceBase extends Service { + + constructor(optsConnection: IOptions | IConnection) { + super(optsConnection, "WsWorkunits", "1.99"); + } + + GVCAjaxGraph(request: Partial): Promise { + return this._connection.send("GVCAjaxGraph", request, "json", false, undefined, "GVCAjaxGraphResponse"); + } + + Ping(request: Partial): Promise { + return this._connection.send("Ping", request, "json", false, undefined, "WsWorkunitsPingResponse"); + } + + WUAbort(request: Partial): Promise { + return this._connection.send("WUAbort", request, "json", false, undefined, "WUAbortResponse"); + } + + WUAction(request: Partial): Promise { + return this._connection.send("WUAction", request, "json", false, undefined, "WUActionResponse"); + } + + WUAddLocalFileToWorkunit(request: Partial): Promise { + return this._connection.send("WUAddLocalFileToWorkunit", request, "json", false, undefined, "WUAddLocalFileToWorkunitResponse"); + } + + WUAnalyseHotspot(request: Partial): Promise { + return this._connection.send("WUAnalyseHotspot", request, "json", false, undefined, "WUAnalyseHotspotResponse"); + } + + WUCDebug(request: Partial): Promise { + return this._connection.send("WUCDebug", request, "json", false, undefined, "WUDebugResponse"); + } + + WUCheckFeatures(request: Partial): Promise { + return this._connection.send("WUCheckFeatures", request, "json", false, undefined, "WUCheckFeaturesResponse"); + } + + WUClusterJobQueueLOG(request: Partial): Promise { + return this._connection.send("WUClusterJobQueueLOG", request, "json", false, undefined, "WUClusterJobQueueLOGResponse"); + } + + WUClusterJobQueueXLS(request: Partial): Promise { + return this._connection.send("WUClusterJobQueueXLS", request, "json", false, undefined, "WUClusterJobQueueXLSResponse"); + } + + WUClusterJobSummaryXLS(request: Partial): Promise { + return this._connection.send("WUClusterJobSummaryXLS", request, "json", false, undefined, "WUClusterJobSummaryXLSResponse"); + } + + WUClusterJobXLS(request: Partial): Promise { + return this._connection.send("WUClusterJobXLS", request, "json", false, undefined, "WUClusterJobXLSResponse"); + } + + WUCompileECL(request: Partial): Promise { + return this._connection.send("WUCompileECL", request, "json", false, undefined, "WUCompileECLResponse"); + } + + WUCopyLogicalFiles(request: Partial): Promise { + return this._connection.send("WUCopyLogicalFiles", request, "json", false, undefined, "WUCopyLogicalFilesResponse"); + } + + WUCopyQuerySet(request: Partial): Promise { + return this._connection.send("WUCopyQuerySet", request, "json", false, undefined, "WUCopyQuerySetResponse"); + } + + WUCreate(request: Partial): Promise { + return this._connection.send("WUCreate", request, "json", false, undefined, "WUCreateResponse"); + } + + WUCreateAndUpdate(request: Partial): Promise { + return this._connection.send("WUCreateAndUpdate", request, "json", false, undefined, "WUUpdateResponse"); + } + + WUCreateZAPInfo(request: Partial): Promise { + return this._connection.send("WUCreateZAPInfo", request, "json", false, undefined, "WUCreateZAPInfoResponse"); + } + + WUDelete(request: Partial): Promise { + return this._connection.send("WUDelete", request, "json", false, undefined, "WUDeleteResponse"); + } + + WUDeployWorkunit(request: Partial): Promise { + return this._connection.send("WUDeployWorkunit", request, "json", false, undefined, "WUDeployWorkunitResponse"); + } + + WUDetails(request: Partial): Promise { + return this._connection.send("WUDetails", request, "json", false, undefined, "WUDetailsResponse"); + } + + WUDetailsMeta(request: Partial): Promise { + return this._connection.send("WUDetailsMeta", request, "json", false, undefined, "WUDetailsMetaResponse"); + } + + WUEclDefinitionAction(request: Partial): Promise { + return this._connection.send("WUEclDefinitionAction", request, "json", false, undefined, "WUEclDefinitionActionResponse"); + } + + WUExport(request: Partial): Promise { + return this._connection.send("WUExport", request, "json", false, undefined, "WUExportResponse"); + } + + WUFile(request: Partial): Promise { + return this._connection.send("WUFile", request, "json", false, undefined, "WULogFileResponse"); + } + + WUFullResult(request: Partial): Promise { + return this._connection.send("WUFullResult", request, "json", false, undefined, "WUFullResultResponse"); + } + + WUGVCGraphInfo(request: Partial): Promise { + return this._connection.send("WUGVCGraphInfo", request, "json", false, undefined, "WUGVCGraphInfoResponse"); + } + + WUGetArchiveFile(request: Partial): Promise { + return this._connection.send("WUGetArchiveFile", request, "json", false, undefined, "WUGetArchiveFileResponse"); + } + + WUGetDependancyTrees(request: Partial): Promise { + return this._connection.send("WUGetDependancyTrees", request, "json", false, undefined, "WUGetDependancyTreesResponse"); + } + + WUGetGraph(request: Partial): Promise { + return this._connection.send("WUGetGraph", request, "json", false, undefined, "WUGetGraphResponse"); + } + + WUGetGraphNameAndTypes(request: Partial): Promise { + return this._connection.send("WUGetGraphNameAndTypes", request, "json", false, undefined, "WUGetGraphNameAndTypesResponse"); + } + + WUGetNumFileToCopy(request: Partial): Promise { + return this._connection.send("WUGetNumFileToCopy", request, "json", false, undefined, "WUGetNumFileToCopyResponse"); + } + + WUGetPlugins(request: Partial): Promise { + return this._connection.send("WUGetPlugins", request, "json", false, undefined, "WUGetPluginsResponse"); + } + + WUGetStats(request: Partial): Promise { + return this._connection.send("WUGetStats", request, "json", false, undefined, "WUGetStatsResponse"); + } + + WUGetThorJobList(request: Partial): Promise { + return this._connection.send("WUGetThorJobList", request, "json", false, undefined, "WUGetThorJobListResponse"); + } + + WUGetThorJobQueue(request: Partial): Promise { + return this._connection.send("WUGetThorJobQueue", request, "json", false, undefined, "WUGetThorJobQueueResponse"); + } + + WUGetZAPInfo(request: Partial): Promise { + return this._connection.send("WUGetZAPInfo", request, "json", false, undefined, "WUGetZAPInfoResponse"); + } + + WUGraphInfo(request: Partial): Promise { + return this._connection.send("WUGraphInfo", request, "json", false, undefined, "WUGraphInfoResponse"); + } + + WUGraphTiming(request: Partial): Promise { + return this._connection.send("WUGraphTiming", request, "json", false, undefined, "WUGraphTimingResponse"); + } + + WUInfo(request: Partial): Promise { + return this._connection.send("WUInfo", request, "json", false, undefined, "WUInfoResponse"); + } + + WUInfoDetails(request: Partial): Promise { + return this._connection.send("WUInfoDetails", request, "json", false, undefined, "WUInfoResponse"); + } + + WUJobList(request: Partial): Promise { + return this._connection.send("WUJobList", request, "json", false, undefined, "WUJobListResponse"); + } + + WULightWeightQuery(request: Partial): Promise { + return this._connection.send("WULightWeightQuery", request, "json", false, undefined, "WULightWeightQueryResponse"); + } + + WUListArchiveFiles(request: Partial): Promise { + return this._connection.send("WUListArchiveFiles", request, "json", false, undefined, "WUListArchiveFilesResponse"); + } + + WUListLocalFileRequired(request: Partial): Promise { + return this._connection.send("WUListLocalFileRequired", request, "json", false, undefined, "WUListLocalFileRequiredResponse"); + } + + WUListQueries(request: Partial): Promise { + return this._connection.send("WUListQueries", request, "json", false, undefined, "WUListQueriesResponse"); + } + + WUListQueriesUsingFile(request: Partial): Promise { + return this._connection.send("WUListQueriesUsingFile", request, "json", false, undefined, "WUListQueriesUsingFileResponse"); + } + + WUMultiQuerysetDetails(request: Partial): Promise { + return this._connection.send("WUMultiQuerysetDetails", request, "json", false, undefined, "WUMultiQuerySetDetailsResponse"); + } + + WUProcessGraph(request: Partial): Promise { + return this._connection.send("WUProcessGraph", request, "json", false, undefined, "WUProcessGraphResponse"); + } + + WUProtect(request: Partial): Promise { + return this._connection.send("WUProtect", request, "json", false, undefined, "WUProtectResponse"); + } + + WUPublishWorkunit(request: Partial): Promise { + return this._connection.send("WUPublishWorkunit", request, "json", false, undefined, "WUPublishWorkunitResponse"); + } + + WUPushEvent(request: Partial): Promise { + return this._connection.send("WUPushEvent", request, "json", false, undefined, "WUPushEventResponse"); + } + + WUQuery(request: Partial): Promise { + return this._connection.send("WUQuery", request, "json", false, undefined, "WUQueryResponse"); + } + + WUQueryConfig(request: Partial): Promise { + return this._connection.send("WUQueryConfig", request, "json", false, undefined, "WUQueryConfigResponse"); + } + + WUQueryDetails(request: Partial): Promise { + return this._connection.send("WUQueryDetails", request, "json", false, undefined, "WUQueryDetailsResponse"); + } + + WUQueryDetailsLightWeight(request: Partial): Promise { + return this._connection.send("WUQueryDetailsLightWeight", request, "json", false, undefined, "WUQueryDetailsResponse"); + } + + WUQueryFiles(request: Partial): Promise { + return this._connection.send("WUQueryFiles", request, "json", false, undefined, "WUQueryFilesResponse"); + } + + WUQueryGetGraph(request: Partial): Promise { + return this._connection.send("WUQueryGetGraph", request, "json", false, undefined, "WUQueryGetGraphResponse"); + } + + WUQueryGetSummaryStats(request: Partial): Promise { + return this._connection.send("WUQueryGetSummaryStats", request, "json", false, undefined, "WUQueryGetSummaryStatsResponse"); + } + + WUQuerysetAliasAction(request: Partial): Promise { + return this._connection.send("WUQuerysetAliasAction", request, "json", false, undefined, "WUQuerySetAliasActionResponse"); + } + + WUQuerysetCopyQuery(request: Partial): Promise { + return this._connection.send("WUQuerysetCopyQuery", request, "json", false, undefined, "WUQuerySetCopyQueryResponse"); + } + + WUQuerysetDetails(request: Partial): Promise { + return this._connection.send("WUQuerysetDetails", request, "json", false, undefined, "WUQuerySetDetailsResponse"); + } + + WUQuerysetExport(request: Partial): Promise { + return this._connection.send("WUQuerysetExport", request, "json", false, undefined, "WUQuerysetExportResponse"); + } + + WUQuerysetImport(request: Partial): Promise { + return this._connection.send("WUQuerysetImport", request, "json", false, undefined, "WUQuerysetImportResponse"); + } + + WUQuerysetQueryAction(request: Partial): Promise { + return this._connection.send("WUQuerysetQueryAction", request, "json", false, undefined, "WUQuerySetQueryActionResponse"); + } + + WUQuerysets(request: Partial): Promise { + return this._connection.send("WUQuerysets", request, "json", false, undefined, "WUQuerysetsResponse"); + } + + WURecreateQuery(request: Partial): Promise { + return this._connection.send("WURecreateQuery", request, "json", false, undefined, "WURecreateQueryResponse"); + } + + WUResubmit(request: Partial): Promise { + return this._connection.send("WUResubmit", request, "json", false, undefined, "WUResubmitResponse"); + } + + WUResult(request: Partial): Promise { + return this._connection.send("WUResult", request, "json", false, undefined, "WUResultResponse"); + } + + WUResultBin(request: Partial): Promise { + return this._connection.send("WUResultBin", request, "json", false, undefined, "WUResultBinResponse"); + } + + WUResultSummary(request: Partial): Promise { + return this._connection.send("WUResultSummary", request, "json", false, undefined, "WUResultSummaryResponse"); + } + + WUResultView(request: Partial): Promise { + return this._connection.send("WUResultView", request, "json", false, undefined, "WUResultViewResponse"); + } + + WURun(request: Partial): Promise { + return this._connection.send("WURun", request, "json", false, undefined, "WURunResponse"); + } + + WUSchedule(request: Partial): Promise { + return this._connection.send("WUSchedule", request, "json", false, undefined, "WUScheduleResponse"); + } + + WUShowScheduled(request: Partial): Promise { + return this._connection.send("WUShowScheduled", request, "json", false, undefined, "WUShowScheduledResponse"); + } + + WUSubmit(request: Partial): Promise { + return this._connection.send("WUSubmit", request, "json", false, undefined, "WUSubmitResponse"); + } + + WUSyntaxCheckECL(request: Partial): Promise { + return this._connection.send("WUSyntaxCheckECL", request, "json", false, undefined, "WUSyntaxCheckResponse"); + } + + WUUpdate(request: Partial): Promise { + return this._connection.send("WUUpdate", request, "json", false, undefined, "WUUpdateResponse"); + } + + WUUpdateQueryEntry(request: Partial): Promise { + return this._connection.send("WUUpdateQueryEntry", request, "json", false, undefined, "WUUpdateQueryEntryResponse"); + } + + WUWaitCompiled(request: Partial): Promise { + return this._connection.send("WUWaitCompiled", request, "json", false, undefined, "WUWaitResponse"); + } + + WUWaitComplete(request: Partial): Promise { + return this._connection.send("WUWaitComplete", request, "json", false, undefined, "WUWaitResponse"); + } + +} diff --git a/packages/comms/src/services/wsdl/WsWorkunits/v2/WsWorkunits.ts b/packages/comms/src/services/wsdl/WsWorkunits/v2/WsWorkunits.ts new file mode 100644 index 0000000000..a59f917b4e --- /dev/null +++ b/packages/comms/src/services/wsdl/WsWorkunits/v2/WsWorkunits.ts @@ -0,0 +1,3165 @@ +import { IConnection, IOptions } from "../../../../connection"; +import { Service } from "../../../../espConnection"; + +export namespace WsWorkunits { + + export type int = number; + export type double = number; + export type long = number; + export type nonNegativeInteger = number; + export type unsignedInt = number; + export type base64Binary = string; + export type dateTime = string; + export type integer = number; + export type uint64 = number; + + export enum ECLWUActions { + Abort = "Abort", + Delete = "Delete", + Deschedule = "Deschedule", + Reschedule = "Reschedule", + Pause = "Pause", + PauseNow = "PauseNow", + Protect = "Protect", + Unprotect = "Unprotect", + Restore = "Restore", + Resume = "Resume", + SetToFailed = "SetToFailed", + Archive = "Archive" + } + + export enum LogSelectColumnMode { + MIN = 0, + DEFAULT = 1, + ALL = 2, + CUSTOM = 3 + } + + export enum SortDirection { + ASC = 0, + DSC = 1 + } + + export enum LogEventClass { + ALL = "ALL", + DIS = "DIS", + ERR = "ERR", + WRN = "WRN", + INF = "INF", + PRO = "PRO", + MET = "MET", + EVT = "EVT" + } + + export enum WUDetailsAttrValueType { + Single = "Single", + List = "List", + Multi = "Multi" + } + + export enum EclDefinitionActions { + SyntaxCheck = "SyntaxCheck", + Deploy = "Deploy", + Publish = "Publish" + } + + export enum ErrorMessageFormat { + xml = "xml", + json = "json", + text = "text" + } + + export enum LogAccessLogFormat { + XML = 0, + JSON = 1, + CSV = 2 + } + + export enum WUExceptionSeverity { + info = "info", + warning = "warning", + error = "error", + alert = "alert" + } + + export enum WUQueryFilterSuspendedType { + Allqueries = "Allqueries", + Notsuspended = "Notsuspended", + Suspended = "Suspended", + Suspendedbyuser = "Suspendedbyuser", + Suspendedbyfirstnode = "Suspendedbyfirstnode", + Suspendedbyanynode = "Suspendedbyanynode" + } + + export enum WUQuerySetFilterType { + All = "All", + Id = "Id", + Name = "Name", + Alias = "Alias", + Status = "Status" + } + + export enum WUProtectFilter { + All = "All", + Protected = "Protected", + NotProtected = "NotProtected" + } + + export enum QuerySetAliasActionTypes { + Deactivate = "Deactivate" + } + + export enum QuerysetImportActivation { + None = "None", + ActivateImportedActive = "ActivateImportedActive" + } + + export enum QuerySetQueryActionTypes { + Suspend = "Suspend", + Unsuspend = "Unsuspend", + ToggleSuspend = "ToggleSuspend", + Activate = "Activate", + Delete = "Delete", + DeleteQueriesAndWUs = "DeleteQueriesAndWUs", + RemoveAllAliases = "RemoveAllAliases", + ResetQueryStats = "ResetQueryStats" + } + + export enum WUQueryActivationMode { + DoNotActivateQuery = 0, + ActivateQuery = 1, + ActivateQuerySuspendPrevious = 2, + ActivateQueryDeletePrevious = 3 + } + + export interface GVCAjaxGraph { + Name: string; + GraphName: string; + SubGraphId: int; + SubGraphOnly: boolean; + } + + export interface GVCAjaxGraphResponse { + Name: string; + GraphName: string; + GraphType: string; + SubGraphId: int; + SubGraphOnly: boolean; + } + + export interface Ping { + + } + + export interface WsWorkunitsPingResponse { + + } + + export interface Wuids { + Item: string[]; + } + + export interface WUAbort { + Wuids: Wuids; + BlockTillFinishTimer: int; + } + + export interface Exception { + Code: string; + Audience: string; + Source: string; + Message: string; + } + + export interface Exceptions { + Source: string; + Exception: Exception[]; + } + + export interface WUActionResult { + Wuid: string; + Action: string; + Result: string; + } + + export interface ActionResults { + WUActionResult: WUActionResult[]; + } + + export interface WUAbortResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface WUAction { + Wuids: Wuids; + WUActionType: ECLWUActions; + Cluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + ECL: string; + Jobname: string; + Test: string; + CurrentPage: string; + PageSize: string; + Sortby: string; + Descending: boolean; + EventServer: string; + EventName: string; + PageFrom: string; + BlockTillFinishTimer: int; + } + + export interface WUActionResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface WUAddLocalFileToWorkunit { + Wuid: string; + Name: string; + Val: string; + DefVal: string; + Type: int; + Length: int; + } + + export interface WUAddLocalFileToWorkunitResponse { + Exceptions: Exceptions; + Wuid: string; + Name: string; + Result: string; + } + + export interface PropertyOptions { + IncludeName: boolean; + IncludeRawValue: boolean; + IncludeFormatted: boolean; + IncludeMeasure: boolean; + IncludeCreator: boolean; + IncludeCreatorType: boolean; + } + + export interface WUAnalyseHotspot { + Wuid: string; + RootScope: string; + OptOnlyActive: boolean; + OnlyCriticalPath: boolean; + IncludeProperties: boolean; + IncludeStatistics: boolean; + ThresholdPercent: double; + PropertyOptions: PropertyOptions; + } + + export interface Property { + Name: string; + RawValue: string; + Formatted: string; + Measure: string; + Creator: string; + CreatorType: string; + } + + export interface Properties { + Property: Property[]; + } + + export interface Note { + Source: string; + Message: string; + ErrorCode: nonNegativeInteger; + Severity: string; + Cost: nonNegativeInteger; + } + + export interface Notes { + Note: Note[]; + } + + export interface Activity { + ScopeName: string; + Id: string; + ScopeType: string; + Properties: Properties; + Notes: Notes; + SinkActivity: string; + } + + export interface Activities { + Activity: Activity[]; + } + + export interface Dependency { + ScopeName: string; + Id: string; + ScopeType: string; + Properties: Properties; + Notes: Notes; + SinkActivity: string; + } + + export interface Dependencies { + Dependency: Dependency[]; + } + + export interface WUAnalyseHotspotResponse { + Exceptions: Exceptions; + RootScope: string; + RootTime: long; + Activities: Activities; + Dependencies: Dependencies; + } + + export interface WUCDebug { + Wuid: string; + Command: string; + } + + export interface WUDebugResponse { + Exceptions: Exceptions; + Result: string; + } + + export interface WUCheckFeatures { + IncludeFullVersion: boolean; + } + + export interface Deployment { + UseCompression: boolean; + } + + export interface WUCheckFeaturesResponse { + Exceptions: Exceptions; + BuildVersionMajor: int; + BuildVersionMinor: int; + BuildVersionPoint: int; + maxRequestEntityLength: unsignedInt; + Deployment: Deployment; + BuildVersion: string; + BuildMaturity: string; + BuildTagTimestamp: string; + } + + export interface WUClusterJobQueueLOG { + Cluster: string; + StartDate: string; + EndDate: string; + } + + export interface WUClusterJobQueueLOGResponse { + Exceptions: Exceptions; + thefile: base64Binary; + } + + export interface WUClusterJobQueueXLS { + Cluster: string; + StartDate: string; + EndDate: string; + ShowType: string; + } + + export interface WUClusterJobQueueXLSResponse { + Exceptions: Exceptions; + Result: base64Binary; + } + + export interface WUClusterJobSummaryXLS { + Cluster: string; + StartDate: string; + EndDate: string; + ShowAll: boolean; + BusinessStartTime: string; + BusinessEndTime: string; + } + + export interface WUClusterJobSummaryXLSResponse { + Exceptions: Exceptions; + Result: base64Binary; + } + + export interface WUClusterJobXLS { + Cluster: string; + StartDate: string; + EndDate: string; + ShowAll: boolean; + BusinessStartTime: string; + BusinessEndTime: string; + } + + export interface WUClusterJobXLSResponse { + Exceptions: Exceptions; + Result: base64Binary; + } + + export interface WUCompileECL { + ECL: string; + ModuleName: string; + AttributeName: string; + Queue: string; + Cluster: string; + Snapshot: string; + IncludeDependencies: boolean; + IncludeComplexity: boolean; + TimeToWait: int; + } + + export interface ECLException { + Severity: string; + Source: string; + Code: int; + Message: string; + Column: int; + LineNo: int; + FileName: string; + Activity: int; + Scope: string; + Priority: int; + Cost: double; + } + + export interface Errors { + ECLException: ECLException[]; + } + + export interface ECLAttribute { + ModuleName: string; + AttributeName: string; + IsLocked: boolean; + IsCheckedOut: boolean; + IsSandbox: boolean; + IsOrphaned: boolean; + } + + export interface Dependencies2 { + ECLAttribute: ECLAttribute[]; + } + + export interface WUCompileECLResponse { + Exceptions: Exceptions; + Complexity: string; + Errors: Errors; + Dependencies: Dependencies2; + } + + export interface WUCopyLogicalFiles { + Wuid: string; + Cluster: string; + CopyLocal: boolean; + } + + export interface Clusters { + Item: string[]; + } + + export interface WULogicalFileCopyInfo { + IsIndex: boolean; + LogicalName: string; + DfuCopyWuid: string; + DfuCopyError: string; + Clusters: Clusters; + } + + export interface OnCluster { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface NotOnCluster { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface Foreign { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface NotFound { + WULogicalFileCopyInfo: WULogicalFileCopyInfo[]; + } + + export interface Cluster { + ClusterName: string; + OnCluster: OnCluster; + NotOnCluster: NotOnCluster; + Foreign: Foreign; + NotFound: NotFound; + } + + export interface ClusterFiles { + Cluster: Cluster[]; + } + + export interface WUCopyLogicalFilesResponse { + Exceptions: Exceptions; + Wuid: string; + ClusterFiles: ClusterFiles; + } + + export interface WUCopyQuerySet { + Source: string; + Target: string; + ActiveOnly: boolean; + CloneActiveState: boolean; + AllowForeignFiles: boolean; + DfsServer: string; + CopyFiles: boolean; + OverwriteDfs: boolean; + SourceProcess: string; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + SourceSSL: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface CopiedQueries { + QueryId: string[]; + } + + export interface ExistingQueries { + QueryId: string[]; + } + + export interface File { + Error: string; + LogicalName: string; + } + + export interface FileErrors { + File: File[]; + } + + export interface WUCopyQuerySetResponse { + Exceptions: Exceptions; + CopiedQueries: CopiedQueries; + ExistingQueries: ExistingQueries; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUCreate { + + } + + export interface Query { + Text: string; + Cpp: string; + ResTxt: string; + Dll: string; + ThorLog: string; + QueryMainDefinition: string; + } + + export interface ECLHelpFile { + Name: string; + Type: string; + IPAddress: string; + Description: string; + FileSize: long; + PID: unsignedInt; + minActivityId: unsignedInt; + maxActivityId: unsignedInt; + IsAvailable: boolean; + } + + export interface Helpers { + ECLHelpFile: ECLHelpFile[]; + } + + export interface Exceptions2 { + ECLException: ECLException[]; + } + + export interface ECLGraph { + Name: string; + Label: string; + Type: string; + Running: boolean; + Complete: boolean; + Failed: boolean; + RunningId: long; + WhenStarted: string; + WhenFinished: string; + } + + export interface Graphs { + ECLGraph: ECLGraph[]; + } + + export interface ECLSourceFiles { + ECLSourceFile: ECLSourceFile[]; + } + + export interface ECLSourceFile { + FileCluster: string; + Name: string; + IsSuperFile: boolean; + Subs: int; + Count: int; + ECLSourceFiles: ECLSourceFiles; + } + + export interface SourceFiles { + ECLSourceFile: ECLSourceFile[]; + } + + export interface ECLSchemaItem { + ColumnName: string; + ColumnType: string; + ColumnTypeCode: int; + isConditional: boolean; + } + + export interface ECLSchemas { + ECLSchemaItem: ECLSchemaItem[]; + } + + export interface ECLResult { + Name: string; + Sequence: int; + Value: string; + Link: string; + FileName: string; + IsSupplied: boolean; + ShowFileContent: boolean; + Total: long; + ECLSchemas: ECLSchemas; + XmlSchema: string; + } + + export interface Results { + ECLResult: ECLResult[]; + } + + export interface Variables { + ECLResult: ECLResult[]; + } + + export interface ECLTimer { + Name: string; + Value: string; + count: int; + GraphName: string; + SubGraphId: int; + Timestamp: long; + When: string; + } + + export interface Timers { + ECLTimer: ECLTimer[]; + } + + export interface DebugValue { + Name: string; + Value: string; + } + + export interface DebugValues { + DebugValue: DebugValue[]; + } + + export interface ApplicationValue { + Application: string; + Name: string; + Value: string; + } + + export interface ApplicationValues { + ApplicationValue: ApplicationValue[]; + } + + export interface ECLWorkflow { + WFID: string; + EventName: string; + EventText: string; + Count: int; + CountRemaining: int; + } + + export interface Workflows { + ECLWorkflow: ECLWorkflow[]; + } + + export interface ECLTimingData { + Name: string; + GraphNum: int; + SubGraphNum: int; + GID: int; + Min: int; + MS: int; + } + + export interface TimingData { + ECLTimingData: ECLTimingData[]; + } + + export interface AllowedClusters { + AllowedCluster: string[]; + } + + export interface ThorLogInfo { + ProcessName: string; + ClusterGroup: string; + LogDate: string; + NumberSlaves: int; + } + + export interface ThorLogList { + ThorLogInfo: ThorLogInfo[]; + } + + export interface ResourceURLs { + URL: string[]; + } + + export interface ServiceNames { + Item: string[]; + } + + export interface ECLWUProcess { + Name: string; + Type: string; + PodName: string; + InstanceNumber: int; + Log: string; + PID: string; + Pattern: string; + Max: int; + } + + export interface ECLWUProcessList { + ECLWUProcess: ECLWUProcess[]; + } + + export interface Workunit { + Wuid: string; + Owner: string; + Cluster: string; + RoxieCluster: string; + Jobname: string; + Queue: string; + StateID: int; + State: string; + StateEx: string; + Description: string; + Protected: boolean; + Active: boolean; + Action: int; + ActionEx: string; + DateTimeScheduled: dateTime; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + Snapshot: string; + ResultLimit: int; + Archived: boolean; + IsPausing: boolean; + ThorLCR: boolean; + EventSchedule: int; + TotalClusterTime: string; + AbortBy: string; + AbortTime: string; + Query: Query; + Helpers: Helpers; + Exceptions: Exceptions2; + Graphs: Graphs; + SourceFiles: SourceFiles; + Results: Results; + Variables: Variables; + Timers: Timers; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + Workflows: Workflows; + TimingData: TimingData; + AllowedClusters: AllowedClusters; + ErrorCount: int; + WarningCount: int; + InfoCount: int; + AlertCount: int; + GraphCount: int; + SourceFileCount: int; + ResultCount: int; + VariableCount: int; + TimerCount: int; + HasDebugValue: boolean; + ApplicationValueCount: int; + XmlParams: string; + AccessFlag: int; + ClusterFlag: int; + HelpersDesc: string; + GraphsDesc: string; + SourceFilesDesc: string; + ResultsDesc: string; + VariablesDesc: string; + TimersDesc: string; + DebugValuesDesc: string; + ApplicationValuesDesc: string; + WorkflowsDesc: string; + HasArchiveQuery: boolean; + ThorLogList: ThorLogList; + ResourceURLs: ResourceURLs; + ResultViewCount: int; + ResourceURLCount: int; + DebugValueCount: int; + WorkflowCount: int; + HelpersCount: int; + ServiceNames: ServiceNames; + ExecuteCost: double; + FileAccessCost: double; + CompileCost: double; + NoAccess: boolean; + ECLWUProcessList: ECLWUProcessList; + } + + export interface WUCreateResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface WUCreateAndUpdate { + Wuid: string; + State: int; + StateOrig: int; + Jobname: string; + JobnameOrig: string; + QueryText: string; + Action: int; + Description: string; + DescriptionOrig: string; + AddDrilldownFields: boolean; + ResultLimit: int; + Protected: boolean; + ProtectedOrig: boolean; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + ScopeOrig: string; + ClusterSelection: string; + ClusterOrig: string; + XmlParams: string; + ThorSlaveIP: string; + QueryMainDefinition: string; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + } + + export interface WUUpdateResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface AbsoluteTimeRange { + StartDate: dateTime; + EndDate: dateTime; + } + + export interface CustomColumns { + Item: string[]; + } + + export interface ComponentsFilter { + Item: string[]; + } + + export interface LogFilter { + WildcardFilter: string; + AbsoluteTimeRange: AbsoluteTimeRange; + RelativeTimeRangeBuffer: unsignedInt; + LineLimit: unsignedInt; + LineStartFrom: long; + SelectColumnMode: LogSelectColumnMode; + CustomColumns: CustomColumns; + ComponentsFilter: ComponentsFilter; + Format: LogAccessLogFormat; + sortByTimeDirection: SortDirection; + LogEventType: LogEventClass; + } + + export interface WUCreateZAPInfo { + Wuid: string; + ESPApplication: string; + ThorProcesses: string; + BuildVersion: string; + ProblemDescription: string; + WhatChanged: string; + WhereSlow: string; + ZAPFileName: string; + IncludeThorSlaveLog: string; + ZAPPassword: string; + SendEmail: boolean; + AttachZAPReportToEmail: boolean; + EmailFrom: string; + EmailSubject: string; + EmailBody: string; + LogFilter: LogFilter; + IncludeRelatedLogs: boolean; + IncludePerComponentLogs: boolean; + } + + export interface WUCreateZAPInfoResponse { + Exceptions: Exceptions; + thefile: base64Binary; + ZAPFileName: string; + } + + export interface WUDelete { + Wuids: Wuids; + BlockTillFinishTimer: int; + } + + export interface WUDeleteResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface NamedValue { + Name: string; + Value: string; + } + + export interface DebugValues2 { + NamedValue: NamedValue[]; + } + + export interface WUDeployWorkunit { + Cluster: string; + Name: string; + Wait: int; + ObjType: string; + FileName: string; + Object: base64Binary; + ResultLimit: int; + QueryMainDefinition: string; + Snapshot: string; + DebugValues: DebugValues2; + Protect: boolean; + } + + export interface WUDeployWorkunitResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface Scopes { + Scope: string[]; + } + + export interface Ids { + id: string[]; + } + + export interface ScopeTypes { + ScopeType: string[]; + } + + export interface PropertyFilter { + Name: string; + ExactValue: string; + MinValue: string; + MaxValue: string; + } + + export interface PropertyFilters { + PropertyFilter: PropertyFilter[]; + } + + export interface ScopeFilter { + MaxDepth: integer; + Scopes: Scopes; + Ids: Ids; + ScopeTypes: ScopeTypes; + PropertyFilters: PropertyFilters; + } + + export interface NestedFilter { + Depth: unsignedInt; + ScopeTypes: ScopeTypes; + } + + export interface Properties2 { + Property: string[]; + } + + export interface Extra { + scopeType: string; + Properties: Properties2; + } + + export interface ExtraProperties { + Extra: Extra[]; + } + + export interface PropertiesToReturn { + AllStatistics: boolean; + AllAttributes: boolean; + AllHints: boolean; + AllScopes: boolean; + AllProperties: boolean; + AllNotes: boolean; + MinVersion: uint64; + Measure: string; + Properties: Properties2; + ExtraProperties: ExtraProperties; + } + + export interface ScopeOptions { + IncludeMatchedScopesInResults: boolean; + IncludeScope: boolean; + IncludeId: boolean; + IncludeScopeType: boolean; + } + + export interface WUDetails { + WUID: string; + ScopeFilter: ScopeFilter; + NestedFilter: NestedFilter; + PropertiesToReturn: PropertiesToReturn; + Filter: string; + ScopeOptions: ScopeOptions; + PropertyOptions: PropertyOptions; + } + + export interface Scope { + ScopeName: string; + Id: string; + ScopeType: string; + Properties: Properties; + Notes: Notes; + SinkActivity: string; + } + + export interface Scopes2 { + Scope: Scope[]; + } + + export interface WUDetailsResponse { + Exceptions: Exceptions; + MaxVersion: uint64; + WUID: string; + Scopes: Scopes2; + } + + export interface WUDetailsMeta { + + } + + export interface Property2 { + Name: string; + ValueType: WUDetailsAttrValueType; + Description: string; + } + + export interface Properties3 { + Property: Property2[]; + } + + export interface Measures { + Measure: string[]; + } + + export interface Activity2 { + Kind: unsignedInt; + Name: string; + IsSink: boolean; + IsSource: boolean; + } + + export interface Activities2 { + Activity: Activity2[]; + } + + export interface WUDetailsMetaResponse { + Exceptions: Exceptions; + Properties: Properties3; + ScopeTypes: ScopeTypes; + Measures: Measures; + Activities: Activities2; + } + + export interface EclDefinitions { + Item: string[]; + } + + export interface WUEclDefinitionAction { + EclDefinitions: EclDefinitions; + ActionType: EclDefinitionActions; + Target: string; + RemoteDali: string; + SourceProcess: string; + Priority: string; + Comment: string; + MemoryLimit: string; + DeletePrevious: boolean; + SuspendPrevious: boolean; + NoActivate: boolean; + NoReload: boolean; + DontCopyFiles: boolean; + AllowForeign: boolean; + UpdateDfs: boolean; + UpdateSuperfiles: boolean; + UpdateCloneFrom: boolean; + DontAppendCluster: boolean; + MsToWait: int; + TimeLimit: int; + WarnTimeLimit: int; + DfuCopyFiles: boolean; + DfuOverwrite: boolean; + DfuQueue: string; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface WUEclDefinitionActionResult { + EclDefinition: string; + Action: string; + WUID: string; + QueryID: string; + Result: string; + } + + export interface ActionResults2 { + WUEclDefinitionActionResult: WUEclDefinitionActionResult[]; + } + + export interface WUEclDefinitionActionResponse { + Exceptions: Exceptions; + ActionResults: ActionResults2; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUExport { + Cluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + Jobname: string; + } + + export interface WUExportResponse { + Exceptions: Exceptions; + ExportData: base64Binary; + } + + export interface LogColumns { + Item: string[]; + } + + export interface WUFile { + Name: string; + Wuid: string; + Type: string; + Option: int; + SlaveIP: string; + IPAddress: string; + Description: string; + QuerySet: string; + Query: string; + Process: string; + ClusterGroup: string; + LogDate: string; + SlaveNumber: int; + SizeLimit: long; + ErrorMessageFormat: ErrorMessageFormat; + PlainText: string; + MaxLogRecords: unsignedInt; + LogSelectColumnMode: LogSelectColumnMode; + LogFormat: LogAccessLogFormat; + LogSearchTimeBuffSecs: unsignedInt; + LogColumns: LogColumns; + } + + export interface WULogFileResponse { + Exceptions: Exceptions; + Wuid: string; + QuerySet: string; + QueryName: string; + QueryId: string; + FileName: string; + DaliServer: string; + thefile: base64Binary; + } + + export interface WUFullResult { + Wuid: string; + NoRootTag: boolean; + ExceptionSeverity: WUExceptionSeverity; + } + + export interface WUFullResultResponse { + Exceptions: Exceptions; + Wuid: string; + Results: string; + } + + export interface WUGVCGraphInfo { + Wuid: string; + Name: string; + GID: string; + BatchWU: int; + SubgraphId: int; + } + + export interface WUGVCGraphInfoResponse { + Exceptions: Exceptions; + Wuid: string; + Name: string; + GID: string; + Running: boolean; + TheGraph: string; + BatchWU: int; + } + + export interface WUGetArchiveFile { + WUID: string; + ModuleName: string; + FileName: string; + Path: string; + } + + export interface WUGetArchiveFileResponse { + Exceptions: Exceptions; + File: string; + Message: string; + } + + export interface WUGetDependancyTrees { + Cluster: string; + Queue: string; + Snapshot: string; + Items: string; + TimeoutMilliSec: string; + } + + export interface WUGetDependancyTreesResponse { + Exceptions: Exceptions; + Errors: Errors; + DependancyTrees: base64Binary; + } + + export interface WUGetGraph { + Wuid: string; + GraphName: string; + SubGraphId: string; + } + + export interface ECLGraphEx { + Name: string; + Label: string; + Type: string; + Graph: string; + Running: boolean; + RunningId: long; + Complete: boolean; + Failed: boolean; + } + + export interface Graphs2 { + ECLGraphEx: ECLGraphEx[]; + } + + export interface WUGetGraphResponse { + Exceptions: Exceptions; + Graphs: Graphs2; + } + + export interface WUGetGraphNameAndTypes { + Wuid: string; + Type: string; + } + + export interface GraphNameAndType { + Name: string; + Type: string; + } + + export interface GraphNameAndTypes { + GraphNameAndType: GraphNameAndType[]; + } + + export interface WUGetGraphNameAndTypesResponse { + Exceptions: Exceptions; + GraphNameAndTypes: GraphNameAndTypes; + } + + export interface WUGetNumFileToCopy { + ClusterName: string; + TargetName: string; + PageSize: long; + PageStartFrom: long; + Sortby: string; + Descending: boolean; + CacheHint: long; + } + + export interface Endpoint { + URL: string; + Status: string; + NumQueryFileToCopy: int; + } + + export interface Endpoints { + Endpoint: Endpoint[]; + } + + export interface WUGetNumFileToCopyResponse { + Exceptions: Exceptions; + Endpoints: Endpoints; + CacheHint: long; + Total: long; + } + + export interface WUGetPlugins { + + } + + export interface Plugins { + WUEclPluginsInFolder: WUEclPluginsInFolder[]; + } + + export interface WUEclPluginsInFolder { + Path: string; + Plugins: Plugins; + } + + export interface WUGetPluginsResponse { + Exceptions: Exceptions; + Plugins: Plugins; + } + + export interface WUGetStats { + WUID: string; + CreatorType: string; + Creator: string; + ScopeType: string; + Scope: string; + Kind: string; + Measure: string; + MinScopeDepth: unsignedInt; + MaxScopeDepth: unsignedInt; + IncludeGraphs: boolean; + CreateDescriptions: boolean; + MinValue: long; + MaxValue: long; + Filter: string; + } + + export interface WUStatisticItem { + Creator: string; + CreatorType: string; + Scope: string; + ScopeType: string; + Description: string; + TimeStamp: string; + Measure: string; + Kind: string; + Value: string; + RawValue: long; + Count: long; + Max: long; + Wuid: string; + } + + export interface Statistics { + WUStatisticItem: WUStatisticItem[]; + } + + export interface WUGetStatsResponse { + Exceptions: Exceptions; + WUID: string; + Statistics: Statistics; + } + + export interface WUGetThorJobList { + Cluster: string; + StartDate: string; + EndDate: string; + MaxJobsToReturn: unsignedInt; + } + + export interface ECLJob { + Wuid: string; + Graph: string; + State: string; + StartedDate: string; + FinishedDate: string; + Cluster: string; + GraphNum: string; + SubGraphNum: string; + NumOfRuns: string; + Duration: int; + } + + export interface JobList { + ECLJob: ECLJob[]; + } + + export interface InProgressJobList { + ECLJob: ECLJob[]; + } + + export interface WUGetThorJobListResponse { + Exceptions: Exceptions; + JobList: JobList; + InProgressJobList: InProgressJobList; + Warning: string; + } + + export interface WUGetThorJobQueue { + Cluster: string; + StartDate: string; + EndDate: string; + MaxJobQueueItemsToReturn: unsignedInt; + } + + export interface ThorQueue { + DT: string; + RunningWUs: string; + QueuedWUs: string; + WaitingThors: string; + ConnectedThors: string; + IdledThors: string; + RunningWU1: string; + RunningWU2: string; + } + + export interface QueueList { + ThorQueue: ThorQueue[]; + } + + export interface WUGetThorJobQueueResponse { + Exceptions: Exceptions; + LongestQueue: int; + MaxThorConnected: int; + QueueList: QueueList; + Warning: string; + } + + export interface WUGetZAPInfo { + WUID: string; + } + + export interface WUGetZAPInfoResponse { + Exceptions: Exceptions; + WUID: string; + ESPApplication: string; + ThorProcesses: string; + BuildVersion: string; + Archive: string; + EmailTo: string; + EmailFrom: string; + Message: string; + IsContainerized: boolean; + } + + export interface WUGraphInfo { + Wuid: string; + Name: string; + GID: string; + BatchWU: int; + } + + export interface WUGraphInfoResponse { + Exceptions: Exceptions; + Wuid: string; + Name: string; + GID: string; + BatchWU: int; + Running: boolean; + } + + export interface WUGraphTiming { + Wuid: string; + } + + export interface WUGraphTimingResponse { + Exceptions: Exceptions; + Workunit: Workunit; + } + + export interface WUInfo { + Wuid: string; + TruncateEclTo64k: boolean; + Type: string; + IncludeExceptions: boolean; + IncludeGraphs: boolean; + IncludeSourceFiles: boolean; + IncludeResults: boolean; + IncludeResultsViewNames: boolean; + IncludeVariables: boolean; + IncludeTimers: boolean; + IncludeDebugValues: boolean; + IncludeApplicationValues: boolean; + IncludeWorkflows: boolean; + IncludeXmlSchemas: boolean; + IncludeResourceURLs: boolean; + IncludeECL: boolean; + IncludeHelpers: boolean; + IncludeAllowedClusters: boolean; + IncludeTotalClusterTime: boolean; + IncludeServiceNames: boolean; + IncludeProcesses: boolean; + SuppressResultSchemas: boolean; + ThorSlaveIP: string; + } + + export interface ResultViews { + View: string[]; + } + + export interface WUInfoResponse { + Exceptions: Exceptions; + Workunit: Workunit; + AutoRefresh: int; + CanCompile: boolean; + ThorSlaveIP: string; + ResultViews: ResultViews; + SecMethod: string; + } + + export interface WUInfoDetails { + Wuid: string; + TruncateEclTo64k: boolean; + Type: string; + IncludeExceptions: boolean; + IncludeGraphs: boolean; + IncludeSourceFiles: boolean; + IncludeResults: boolean; + IncludeResultsViewNames: boolean; + IncludeVariables: boolean; + IncludeTimers: boolean; + IncludeDebugValues: boolean; + IncludeApplicationValues: boolean; + IncludeWorkflows: boolean; + IncludeXmlSchemas: boolean; + IncludeResourceURLs: boolean; + IncludeECL: boolean; + IncludeHelpers: boolean; + IncludeAllowedClusters: boolean; + IncludeTotalClusterTime: boolean; + IncludeServiceNames: boolean; + IncludeProcesses: boolean; + SuppressResultSchemas: boolean; + ThorSlaveIP: string; + } + + export interface WUJobList { + Cluster: string; + Process: string; + StartDate: string; + EndDate: string; + ShowAll: boolean; + BusinessStartHour: int; + BusinessEndHour: int; + } + + export interface Jobs { + ECLJob: ECLJob[]; + } + + export interface WUJobListResponse { + Exceptions: Exceptions; + StartDate: string; + EndDate: string; + Jobs: Jobs; + } + + export interface WULightWeightQuery { + Wuid: string; + Type: string; + Cluster: string; + Owner: string; + JobName: string; + StartDate: string; + EndDate: string; + BeforeWU: string; + AfterWU: string; + State: string; + ApplicationValues: ApplicationValues; + PageStartFrom: long; + PageSize: unsignedInt; + SortBy: string; + Descending: boolean; + CacheHint: long; + } + + export interface ECLWorkunitLW { + Wuid: string; + Owner: string; + JobName: string; + WuScope: string; + ClusterName: string; + State: int; + StateDesc: string; + Action: int; + ActionDesc: string; + Priority: int; + PriorityDesc: string; + PriorityLevel: int; + IsProtected: boolean; + DateTimeScheduled: dateTime; + TotalClusterTime: unsignedInt; + ApplicationValues: ApplicationValues; + NoAccess: boolean; + } + + export interface Workunits { + ECLWorkunitLW: ECLWorkunitLW[]; + } + + export interface WULightWeightQueryResponse { + Exceptions: Exceptions; + NumWUs: int; + CacheHint: long; + Workunits: Workunits; + } + + export interface WUListArchiveFiles { + WUID: string; + } + + export interface ArchiveModules { + ArchiveModule: ArchiveModule[]; + } + + export interface File2 { + Name: string; + Key: string; + SourcePath: string; + Path: string; + } + + export interface Files { + File: File2[]; + } + + export interface ArchiveModule { + Name: string; + FullName: string; + Flags: unsignedInt; + Key: string; + Plugin: string; + SourcePath: string; + Version: string; + Path: string; + ArchiveModules: ArchiveModules; + Files: Files; + } + + export interface WUListArchiveFilesResponse { + Exceptions: Exceptions; + ArchiveModules: ArchiveModules; + Files: Files; + Message: string; + } + + export interface WUListLocalFileRequired { + Wuid: string; + } + + export interface LogicalFileUpload { + Type: int; + Source: string; + Destination: string; + EventTag: string; + } + + export interface LocalFileUploads { + LogicalFileUpload: LogicalFileUpload[]; + } + + export interface WUListLocalFileRequiredResponse { + Exceptions: Exceptions; + LocalFileUploads: LocalFileUploads; + } + + export interface WUListQueries { + QuerySetName: string; + ClusterName: string; + LibraryName: string; + MemoryLimitLow: long; + MemoryLimitHigh: long; + TimeLimitLow: nonNegativeInteger; + TimeLimitHigh: nonNegativeInteger; + WarnTimeLimitLow: nonNegativeInteger; + WarnTimeLimitHigh: nonNegativeInteger; + PriorityLow: nonNegativeInteger; + PriorityHigh: nonNegativeInteger; + Activated: boolean; + SuspendedFilter: WUQueryFilterSuspendedType; + WUID: string; + QueryID: string; + QueryName: string; + PublishedBy: string; + PageSize: nonNegativeInteger; + PageStartFrom: nonNegativeInteger; + Sortby: string; + Descending: boolean; + CacheHint: long; + FileName: string; + CheckAllNodes: boolean; + } + + export interface ClusterQueryState { + Cluster: string; + State: string; + Errors: string; + MixedNodeStates: boolean; + } + + export interface Clusters2 { + ClusterQueryState: ClusterQueryState[]; + } + + export interface QuerySetQuery { + Id: string; + Name: string; + Wuid: string; + Dll: string; + Suspended: boolean; + Clusters: Clusters2; + memoryLimit: string; + timeLimit: nonNegativeInteger; + warnTimeLimit: nonNegativeInteger; + priority: string; + Comment: string; + QuerySetId: string; + IsLibrary: boolean; + Activated: boolean; + PublishedBy: string; + snapshot: string; + PriorityID: int; + } + + export interface QuerysetQueries { + QuerySetQuery: QuerySetQuery[]; + } + + export interface WUListQueriesResponse { + Exceptions: Exceptions; + NumberOfQueries: int; + CacheHint: long; + QuerysetQueries: QuerysetQueries; + } + + export interface WUListQueriesUsingFile { + Target: string; + Process: string; + FileName: string; + } + + export interface QueryUsingFile { + Id: string; + Package: string; + } + + export interface Queries { + QueryUsingFile: QueryUsingFile[]; + } + + export interface TargetQueriesUsingFile { + Target: string; + PackageMap: string; + Queries: Queries; + } + + export interface Targets { + TargetQueriesUsingFile: TargetQueriesUsingFile[]; + } + + export interface WUListQueriesUsingFileResponse { + Exceptions: Exceptions; + Process: string; + FileName: string; + Targets: Targets; + } + + export interface WUMultiQuerysetDetails { + ClusterName: string; + QuerySetName: string; + Filter: string; + FilterType: WUQuerySetFilterType; + CheckAllNodes: boolean; + } + + export interface Queries2 { + QuerySetQuery: QuerySetQuery[]; + } + + export interface QuerySetAlias { + Id: string; + Name: string; + } + + export interface Aliases { + QuerySetAlias: QuerySetAlias[]; + } + + export interface WUQuerySetDetail { + QuerySetName: string; + Queries: Queries2; + Aliases: Aliases; + } + + export interface Querysets { + WUQuerySetDetail: WUQuerySetDetail[]; + } + + export interface WUMultiQuerySetDetailsResponse { + Exceptions: Exceptions; + ClusterName: string; + Querysets: Querysets; + } + + export interface WUProcessGraph { + Wuid: string; + Name: string; + } + + export interface WUProcessGraphResponse { + Exceptions: Exceptions; + theGraph: string; + } + + export interface WUProtect { + Wuids: Wuids; + Protect: boolean; + } + + export interface WUProtectResponse { + Exceptions: Exceptions; + ActionResults: ActionResults; + } + + export interface WUPublishWorkunit { + Wuid: string; + Cluster: string; + QueryName: string; + WorkUnitJobName: string; + JobName: string; + Activate: int; + NotifyCluster: boolean; + Wait: int; + NoReload: boolean; + UpdateWorkUnitName: boolean; + memoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + RemoteDali: string; + Comment: string; + DontCopyFiles: boolean; + SourceProcess: string; + AllowForeignFiles: boolean; + UpdateDfs: boolean; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface WUPublishWorkunitResponse { + Exceptions: Exceptions; + Wuid: string; + Result: string; + QuerySet: string; + QueryName: string; + QueryId: string; + ReloadFailed: boolean; + Suspended: boolean; + ErrorMessage: string; + ClusterFiles: ClusterFiles; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUPushEvent { + EventName: string; + EventText: string; + } + + export interface WUPushEventResponse { + Exceptions: Exceptions; + } + + export interface WUQuery { + Wuid: string; + Type: string; + Cluster: string; + RoxieCluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + ECL: string; + Jobname: string; + LogicalFile: string; + LogicalFileSearchType: string; + ApplicationValues: ApplicationValues; + BeforeWU: string; + AfterWU: string; + TotalClusterTimeThresholdMilliSec: unsignedInt; + Count: int; + PageSize: long; + PageStartFrom: long; + PageEndAt: long; + Protected: WUProtectFilter; + Sortby: string; + Descending: boolean; + CacheHint: long; + } + + export interface ECLWorkunit { + Wuid: string; + Owner: string; + Cluster: string; + RoxieCluster: string; + Jobname: string; + Queue: string; + StateID: int; + State: string; + StateEx: string; + Description: string; + Protected: boolean; + Active: boolean; + Action: int; + ActionEx: string; + DateTimeScheduled: dateTime; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + Snapshot: string; + ResultLimit: int; + Archived: boolean; + IsPausing: boolean; + ThorLCR: boolean; + EventSchedule: int; + TotalClusterTime: string; + AbortBy: string; + AbortTime: string; + Query: Query; + Helpers: Helpers; + Exceptions: Exceptions2; + Graphs: Graphs; + SourceFiles: SourceFiles; + Results: Results; + Variables: Variables; + Timers: Timers; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + Workflows: Workflows; + TimingData: TimingData; + AllowedClusters: AllowedClusters; + ErrorCount: int; + WarningCount: int; + InfoCount: int; + AlertCount: int; + GraphCount: int; + SourceFileCount: int; + ResultCount: int; + VariableCount: int; + TimerCount: int; + HasDebugValue: boolean; + ApplicationValueCount: int; + XmlParams: string; + AccessFlag: int; + ClusterFlag: int; + HelpersDesc: string; + GraphsDesc: string; + SourceFilesDesc: string; + ResultsDesc: string; + VariablesDesc: string; + TimersDesc: string; + DebugValuesDesc: string; + ApplicationValuesDesc: string; + WorkflowsDesc: string; + HasArchiveQuery: boolean; + ThorLogList: ThorLogList; + ResourceURLs: ResourceURLs; + ResultViewCount: int; + ResourceURLCount: int; + DebugValueCount: int; + WorkflowCount: int; + HelpersCount: int; + ServiceNames: ServiceNames; + ExecuteCost: double; + FileAccessCost: double; + CompileCost: double; + NoAccess: boolean; + ECLWUProcessList: ECLWUProcessList; + } + + export interface Workunits2 { + ECLWorkunit: ECLWorkunit[]; + } + + export interface WUQueryResponse { + Exceptions: Exceptions; + Type: string; + Cluster: string; + RoxieCluster: string; + Owner: string; + State: string; + StartDate: string; + EndDate: string; + ECL: string; + Jobname: string; + LogicalFile: string; + LogicalFileSearchType: string; + Current: string; + Next: string; + Count: int; + PageSize: long; + PrevPage: long; + NextPage: long; + LastPage: long; + NumWUs: int; + First: boolean; + PageStartFrom: long; + PageEndAt: long; + Sortby: string; + Descending: boolean; + BasicQuery: string; + Filters: string; + CacheHint: long; + Workunits: Workunits2; + } + + export interface WUQueryConfig { + Target: string; + QueryId: string; + Wait: int; + NoReload: boolean; + memoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + Comment: string; + } + + export interface Result { + QueryId: string; + } + + export interface Results2 { + Result: Result[]; + } + + export interface WUQueryConfigResponse { + Exceptions: Exceptions; + ReloadFailed: boolean; + Results: Results2; + } + + export interface WUQueryDetails { + QueryId: string; + QuerySet: string; + IncludeStateOnClusters: boolean; + IncludeSuperFiles: boolean; + IncludeWsEclAddresses: boolean; + CheckAllNodes: boolean; + IncludeWUDetails: boolean; + IncludeWUQueryFiles: boolean; + } + + export interface LogicalFiles { + Item: string[]; + } + + export interface SubFiles { + File: string[]; + } + + export interface SuperFiles { + SuperFile: SuperFile[]; + } + + export interface SuperFile { + Name: string; + SubFiles: SubFiles; + SuperFiles: SuperFiles; + } + + export interface LibrariesUsed { + Item: string[]; + } + + export interface WsEclAddresses { + Address: string[]; + } + + export interface WUGraphs { + ECLGraph: ECLGraph[]; + } + + export interface WUTimers { + ECLTimer: ECLTimer[]; + } + + export interface WUQueryDetailsResponse { + Exceptions: Exceptions; + QueryId: string; + QuerySet: string; + QueryName: string; + Wuid: string; + Dll: string; + Suspended: boolean; + Activated: boolean; + SuspendedBy: string; + Clusters: Clusters2; + PublishedBy: string; + Comment: string; + LogicalFiles: LogicalFiles; + SuperFiles: SuperFiles; + IsLibrary: boolean; + Priority: string; + PriorityID: int; + WUSnapShot: string; + CompileTime: string; + LibrariesUsed: LibrariesUsed; + CountGraphs: int; + ResourceURLCount: int; + WsEclAddresses: WsEclAddresses; + WUGraphs: WUGraphs; + WUTimers: WUTimers; + } + + export interface WUQueryDetailsLightWeight { + QueryId: string; + QuerySet: string; + IncludeWUDetails: boolean; + IncludeWUQueryFiles: boolean; + IncludeSuperFiles: boolean; + IncludeWsEclAddresses: boolean; + IncludeStateOnClusters: boolean; + CheckAllNodes: boolean; + } + + export interface WUQueryFiles { + Target: string; + QueryId: string; + } + + export interface File3 { + FileName: string; + FileSize: long; + NumberOfParts: unsignedInt; + } + + export interface Files2 { + File: File3[]; + } + + export interface Query2 { + QueryId: string; + Files: Files2; + SuperFiles: SuperFiles; + } + + export interface Queries3 { + Query: Query2[]; + } + + export interface WUQueryFilesResponse { + Exceptions: Exceptions; + Files: Files2; + SuperFiles: SuperFiles; + Queries: Queries3; + } + + export interface WUQueryGetGraph { + Target: string; + QueryId: string; + GraphName: string; + SubGraphId: string; + } + + export interface WUQueryGetGraphResponse { + Exceptions: Exceptions; + Graphs: Graphs2; + } + + export interface WUQueryGetSummaryStats { + Target: string; + QueryId: string; + FromTime: string; + ToTime: string; + IncludeRawStats: boolean; + } + + export interface QuerySummaryStats { + Endpoint: string; + Status: string; + StartTime: string; + EndTime: string; + CountTotal: int; + CountFailed: int; + AverageSlavesReplyLen: int; + AverageBytesOut: long; + SizeAvgPeakMemory: long; + TimeAvgTotalExecuteMinutes: long; + TimeMinTotalExecuteMinutes: long; + TimeMaxTotalExecuteMinutes: long; + Percentile97: long; + Percentile97Estimate: boolean; + } + + export interface StatsList { + QuerySummaryStats: QuerySummaryStats[]; + } + + export interface AggregateQueryStatsList { + QuerySummaryStats: QuerySummaryStats[]; + } + + export interface QueryStatsRecord { + StartTime: string; + ElapsedTimeMs: long; + MemoryUsed: long; + BytesOut: long; + SlavesReplyLen: int; + Failed: boolean; + } + + export interface QueryStatsRecordList { + QueryStatsRecord: QueryStatsRecord[]; + } + + export interface QueryStats { + ID: string; + AggregateQueryStatsList: AggregateQueryStatsList; + QueryStatsRecordList: QueryStatsRecordList; + } + + export interface QueryStatsList { + EndpointQueryStats: EndpointQueryStats[]; + } + + export interface EndpointQueryStats { + Endpoint: string; + Status: string; + QueryStatsList: QueryStatsList; + } + + export interface WUQueryGetSummaryStatsResponse { + Exceptions: Exceptions; + StatsList: StatsList; + QueryStatsList: QueryStatsList; + } + + export interface Alias { + Name: string; + } + + export interface Aliases2 { + Alias: Alias[]; + } + + export interface WUQuerysetAliasAction { + Action: QuerySetAliasActionTypes; + QuerySetName: string; + Aliases: Aliases2; + } + + export interface Result2 { + Name: string; + Success: boolean; + Code: int; + Message: string; + } + + export interface Results3 { + Result: Result2[]; + } + + export interface WUQuerySetAliasActionResponse { + Exceptions: Exceptions; + Action: QuerySetAliasActionTypes; + QuerySetName: string; + Results: Results3; + } + + export interface WUQuerysetCopyQuery { + Source: string; + Target: string; + Cluster: string; + DaliServer: string; + Activate: int; + Overwrite: boolean; + DontCopyFiles: boolean; + Wait: int; + NoReload: boolean; + memoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + priority: string; + Comment: string; + SourceProcess: string; + DestName: string; + AllowForeignFiles: boolean; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + SourceSSL: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface WUQuerySetCopyQueryResponse { + Exceptions: Exceptions; + QueryId: string; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUQuerysetDetails { + QuerySetName: string; + Filter: string; + ClusterName: string; + FilterType: WUQuerySetFilterType; + CheckAllNodes: boolean; + } + + export interface QuerysetAliases { + QuerySetAlias: QuerySetAlias[]; + } + + export interface ClusterNames { + Item: string[]; + } + + export interface WUQuerySetDetailsResponse { + Exceptions: Exceptions; + QuerySetName: string; + QuerysetQueries: QuerysetQueries; + QuerysetAliases: QuerysetAliases; + ClusterName: string; + Filter: string; + FilterType: WUQuerySetFilterType; + ClusterNames: ClusterNames; + } + + export interface WUQuerysetExport { + Target: string; + Compress: boolean; + ActiveOnly: boolean; + Protect: boolean; + } + + export interface WUQuerysetExportResponse { + Exceptions: Exceptions; + Target: string; + Compressed: boolean; + Data: base64Binary; + } + + export interface WUQuerysetImport { + Target: string; + QueryMask: string; + Replace: boolean; + ActiveOnly: boolean; + Activation: QuerysetImportActivation; + Compressed: boolean; + Data: base64Binary; + AllowForeignFiles: boolean; + DfsServer: string; + CopyFiles: boolean; + OverwriteDfs: boolean; + SourceProcess: string; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface ImportedQueries { + QueryId: string[]; + } + + export interface MissingWuids { + QueryId: string[]; + } + + export interface WUQuerysetImportResponse { + Exceptions: Exceptions; + Target: string; + ClearedExisting: boolean; + Success: boolean; + ImportedQueries: ImportedQueries; + ExistingQueries: ExistingQueries; + MissingWuids: MissingWuids; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface ClientState { + Suspended: string; + } + + export interface Query3 { + QueryId: string; + Activated: boolean; + SuspendedByUser: boolean; + ClientState: ClientState; + } + + export interface Queries4 { + Query: Query3[]; + } + + export interface WUQuerysetQueryAction { + Action: QuerySetQueryActionTypes; + QuerySetName: string; + Queries: Queries4; + } + + export interface Result3 { + QueryId: string; + WUID: string; + Suspended: boolean; + Success: boolean; + Code: int; + Message: string; + } + + export interface Results4 { + Result: Result3[]; + } + + export interface WUQuerySetQueryActionResponse { + Exceptions: Exceptions; + Action: QuerySetQueryActionTypes; + QuerySetName: string; + Results: Results4; + } + + export interface WUQuerysets { + test: boolean; + } + + export interface QuerySet { + QuerySetName: string; + } + + export interface Querysets2 { + QuerySet: QuerySet[]; + } + + export interface WUQuerysetsResponse { + Exceptions: Exceptions; + Querysets: Querysets2; + } + + export interface WURecreateQuery { + Target: string; + QueryId: string; + DebugValues: DebugValues2; + DestTarget: string; + Republish: boolean; + Activate: WUQueryActivationMode; + NoReload: boolean; + MemoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + Comment: string; + RemoteDali: string; + DontCopyFiles: boolean; + SourceProcess: string; + AllowForeignFiles: boolean; + UpdateDfs: boolean; + UpdateSuperFiles: boolean; + UpdateCloneFrom: boolean; + AppendCluster: boolean; + IncludeFileErrors: boolean; + Wait: int; + DfuCopyFiles: boolean; + DfuQueue: string; + DfuWait: nonNegativeInteger; + DfuOverwrite: boolean; + OnlyCopyFiles: boolean; + StopIfFilesCopied: boolean; + DfuPublisherWuid: string; + RemoteStorage: string; + } + + export interface WURecreateQueryResponse { + Exceptions: Exceptions; + Wuid: string; + QuerySet: string; + QueryName: string; + QueryId: string; + MemoryLimit: string; + TimeLimit: nonNegativeInteger; + WarnTimeLimit: nonNegativeInteger; + Priority: string; + Comment: string; + ReloadFailed: boolean; + Suspended: boolean; + ErrorMessage: string; + FileErrors: FileErrors; + DfuPublisherWuid: string; + DfuPublisherState: string; + } + + export interface WUResubmit { + Wuids: Wuids; + BlockTillFinishTimer: int; + ResetWorkflow: boolean; + CloneWorkunit: boolean; + } + + export interface WU { + WUID: string; + ParentWUID: string; + } + + export interface WUs { + WU: WU[]; + } + + export interface WUResubmitResponse { + Exceptions: Exceptions; + WUs: WUs; + } + + export interface FilterBy { + NamedValue: NamedValue[]; + } + + export interface WUResult { + Wuid: string; + Sequence: int; + ResultName: string; + LogicalName: string; + Cluster: string; + SuppressXmlSchema: boolean; + BypassCachedResult: boolean; + FilterBy: FilterBy; + Start: long; + Count: int; + } + + export interface WUResultResponse { + Exceptions: Exceptions; + Wuid: string; + Sequence: int; + LogicalName: string; + Cluster: string; + Name: string; + Start: long; + Requested: int; + Count: int; + Total: long; + Result: string; + } + + export interface WUResultBin { + LogicalName: string; + Wuid: string; + ResultName: string; + Sequence: int; + Format: string; + Cluster: string; + FilterBy: FilterBy; + Start: long; + Count: int; + } + + export interface WUResultBinResponse { + Exceptions: Exceptions; + Wuid: string; + Sequence: int; + Name: string; + Start: long; + Count: int; + Requested: int; + Total: long; + Result: base64Binary; + Format: string; + } + + export interface WUResultSummary { + Wuid: string; + Sequence: int; + } + + export interface Result4 { + Name: string; + Sequence: int; + Value: string; + Link: string; + FileName: string; + IsSupplied: boolean; + ShowFileContent: boolean; + Total: long; + ECLSchemas: ECLSchemas; + XmlSchema: string; + } + + export interface WUResultSummaryResponse { + Exceptions: Exceptions; + Wuid: string; + Sequence: int; + Format: int; + Result: Result4; + } + + export interface WUResultView { + Wuid: string; + ViewName: string; + Sequence: int; + ResultName: string; + } + + export interface WUResultViewResponse { + Exceptions: Exceptions; + Wuid: string; + ViewName: string; + Result: string; + } + + export interface Variables2 { + NamedValue: NamedValue[]; + } + + export interface WURun { + QuerySet: string; + Query: string; + Wuid: string; + CloneWorkunit: boolean; + Cluster: string; + Wait: int; + Input: string; + NoRootTag: boolean; + DebugValues: DebugValues2; + Variables: Variables2; + ApplicationValues: ApplicationValues; + ExceptionSeverity: WUExceptionSeverity; + } + + export interface WURunResponse { + Exceptions: Exceptions; + Wuid: string; + State: string; + Results: string; + } + + export interface WUSchedule { + Wuid: string; + Cluster: string; + Queue: string; + Snapshot: string; + When: dateTime; + MaxRunTime: int; + } + + export interface WUScheduleResponse { + Exceptions: Exceptions; + } + + export interface WUShowScheduled { + Cluster: string; + EventName: string; + PushEventName: string; + PushEventText: string; + State: string; + JobName: string; + Owner: string; + EventText: string; + } + + export interface ServerInfo { + Name: string; + NetAddress: string; + } + + export interface Clusters3 { + ServerInfo: ServerInfo[]; + } + + export interface ScheduledWU { + Wuid: string; + Cluster: string; + EventName: string; + EventText: string; + JobName: string; + StateID: int; + State: string; + Owner: string; + } + + export interface Workunits3 { + ScheduledWU: ScheduledWU[]; + } + + export interface WUShowScheduledResponse { + Exceptions: Exceptions; + ClusterSelected: int; + EventName: string; + PushEventName: string; + PushEventText: string; + Query: string; + Clusters: Clusters3; + Workunits: Workunits3; + } + + export interface WUSubmit { + Wuid: string; + Cluster: string; + Queue: string; + Snapshot: string; + MaxRunTime: int; + MaxCost: int; + BlockTillFinishTimer: int; + SyntaxCheck: boolean; + NotifyCluster: boolean; + } + + export interface WUSubmitResponse { + Exceptions: Exceptions; + } + + export interface WUSyntaxCheckECL { + ECL: string; + ModuleName: string; + AttributeName: string; + Queue: string; + Cluster: string; + Snapshot: string; + TimeToWait: int; + PersistWorkunit: boolean; + DebugValues: DebugValues; + } + + export interface WUSyntaxCheckResponse { + Exceptions: Exceptions; + Errors: Errors; + Message: string; + } + + export interface WUUpdate { + Wuid: string; + State: int; + StateOrig: int; + Jobname: string; + JobnameOrig: string; + QueryText: string; + Action: int; + Description: string; + DescriptionOrig: string; + AddDrilldownFields: boolean; + ResultLimit: int; + Protected: boolean; + ProtectedOrig: boolean; + PriorityClass: int; + PriorityLevel: int; + Scope: string; + ScopeOrig: string; + ClusterSelection: string; + ClusterOrig: string; + XmlParams: string; + ThorSlaveIP: string; + QueryMainDefinition: string; + DebugValues: DebugValues; + ApplicationValues: ApplicationValues; + } + + export interface WUUpdateQueryEntry { + QuerySet: string; + QueryId: string; + Comment: string; + } + + export interface WUUpdateQueryEntryResponse { + Exceptions: Exceptions; + } + + export interface WUWaitCompiled { + Wuid: string; + Wait: int; + ReturnOnWait: boolean; + } + + export interface WUWaitResponse { + Exceptions: Exceptions; + StateID: int; + } + + export interface WUWaitComplete { + Wuid: string; + Wait: int; + ReturnOnWait: boolean; + } + +} + +export class WorkunitsServiceBase extends Service { + + constructor(optsConnection: IOptions | IConnection) { + super(optsConnection, "WsWorkunits", "2"); + } + + GVCAjaxGraph(request: Partial): Promise { + return this._connection.send("GVCAjaxGraph", request, "json", false, undefined, "GVCAjaxGraphResponse"); + } + + Ping(request: Partial): Promise { + return this._connection.send("Ping", request, "json", false, undefined, "WsWorkunitsPingResponse"); + } + + WUAbort(request: Partial): Promise { + return this._connection.send("WUAbort", request, "json", false, undefined, "WUAbortResponse"); + } + + WUAction(request: Partial): Promise { + return this._connection.send("WUAction", request, "json", false, undefined, "WUActionResponse"); + } + + WUAddLocalFileToWorkunit(request: Partial): Promise { + return this._connection.send("WUAddLocalFileToWorkunit", request, "json", false, undefined, "WUAddLocalFileToWorkunitResponse"); + } + + WUAnalyseHotspot(request: Partial): Promise { + return this._connection.send("WUAnalyseHotspot", request, "json", false, undefined, "WUAnalyseHotspotResponse"); + } + + WUCDebug(request: Partial): Promise { + return this._connection.send("WUCDebug", request, "json", false, undefined, "WUDebugResponse"); + } + + WUCheckFeatures(request: Partial): Promise { + return this._connection.send("WUCheckFeatures", request, "json", false, undefined, "WUCheckFeaturesResponse"); + } + + WUClusterJobQueueLOG(request: Partial): Promise { + return this._connection.send("WUClusterJobQueueLOG", request, "json", false, undefined, "WUClusterJobQueueLOGResponse"); + } + + WUClusterJobQueueXLS(request: Partial): Promise { + return this._connection.send("WUClusterJobQueueXLS", request, "json", false, undefined, "WUClusterJobQueueXLSResponse"); + } + + WUClusterJobSummaryXLS(request: Partial): Promise { + return this._connection.send("WUClusterJobSummaryXLS", request, "json", false, undefined, "WUClusterJobSummaryXLSResponse"); + } + + WUClusterJobXLS(request: Partial): Promise { + return this._connection.send("WUClusterJobXLS", request, "json", false, undefined, "WUClusterJobXLSResponse"); + } + + WUCompileECL(request: Partial): Promise { + return this._connection.send("WUCompileECL", request, "json", false, undefined, "WUCompileECLResponse"); + } + + WUCopyLogicalFiles(request: Partial): Promise { + return this._connection.send("WUCopyLogicalFiles", request, "json", false, undefined, "WUCopyLogicalFilesResponse"); + } + + WUCopyQuerySet(request: Partial): Promise { + return this._connection.send("WUCopyQuerySet", request, "json", false, undefined, "WUCopyQuerySetResponse"); + } + + WUCreate(request: Partial): Promise { + return this._connection.send("WUCreate", request, "json", false, undefined, "WUCreateResponse"); + } + + WUCreateAndUpdate(request: Partial): Promise { + return this._connection.send("WUCreateAndUpdate", request, "json", false, undefined, "WUUpdateResponse"); + } + + WUCreateZAPInfo(request: Partial): Promise { + return this._connection.send("WUCreateZAPInfo", request, "json", false, undefined, "WUCreateZAPInfoResponse"); + } + + WUDelete(request: Partial): Promise { + return this._connection.send("WUDelete", request, "json", false, undefined, "WUDeleteResponse"); + } + + WUDeployWorkunit(request: Partial): Promise { + return this._connection.send("WUDeployWorkunit", request, "json", false, undefined, "WUDeployWorkunitResponse"); + } + + WUDetails(request: Partial): Promise { + return this._connection.send("WUDetails", request, "json", false, undefined, "WUDetailsResponse"); + } + + WUDetailsMeta(request: Partial): Promise { + return this._connection.send("WUDetailsMeta", request, "json", false, undefined, "WUDetailsMetaResponse"); + } + + WUEclDefinitionAction(request: Partial): Promise { + return this._connection.send("WUEclDefinitionAction", request, "json", false, undefined, "WUEclDefinitionActionResponse"); + } + + WUExport(request: Partial): Promise { + return this._connection.send("WUExport", request, "json", false, undefined, "WUExportResponse"); + } + + WUFile(request: Partial): Promise { + return this._connection.send("WUFile", request, "json", false, undefined, "WULogFileResponse"); + } + + WUFullResult(request: Partial): Promise { + return this._connection.send("WUFullResult", request, "json", false, undefined, "WUFullResultResponse"); + } + + WUGVCGraphInfo(request: Partial): Promise { + return this._connection.send("WUGVCGraphInfo", request, "json", false, undefined, "WUGVCGraphInfoResponse"); + } + + WUGetArchiveFile(request: Partial): Promise { + return this._connection.send("WUGetArchiveFile", request, "json", false, undefined, "WUGetArchiveFileResponse"); + } + + WUGetDependancyTrees(request: Partial): Promise { + return this._connection.send("WUGetDependancyTrees", request, "json", false, undefined, "WUGetDependancyTreesResponse"); + } + + WUGetGraph(request: Partial): Promise { + return this._connection.send("WUGetGraph", request, "json", false, undefined, "WUGetGraphResponse"); + } + + WUGetGraphNameAndTypes(request: Partial): Promise { + return this._connection.send("WUGetGraphNameAndTypes", request, "json", false, undefined, "WUGetGraphNameAndTypesResponse"); + } + + WUGetNumFileToCopy(request: Partial): Promise { + return this._connection.send("WUGetNumFileToCopy", request, "json", false, undefined, "WUGetNumFileToCopyResponse"); + } + + WUGetPlugins(request: Partial): Promise { + return this._connection.send("WUGetPlugins", request, "json", false, undefined, "WUGetPluginsResponse"); + } + + WUGetStats(request: Partial): Promise { + return this._connection.send("WUGetStats", request, "json", false, undefined, "WUGetStatsResponse"); + } + + WUGetThorJobList(request: Partial): Promise { + return this._connection.send("WUGetThorJobList", request, "json", false, undefined, "WUGetThorJobListResponse"); + } + + WUGetThorJobQueue(request: Partial): Promise { + return this._connection.send("WUGetThorJobQueue", request, "json", false, undefined, "WUGetThorJobQueueResponse"); + } + + WUGetZAPInfo(request: Partial): Promise { + return this._connection.send("WUGetZAPInfo", request, "json", false, undefined, "WUGetZAPInfoResponse"); + } + + WUGraphInfo(request: Partial): Promise { + return this._connection.send("WUGraphInfo", request, "json", false, undefined, "WUGraphInfoResponse"); + } + + WUGraphTiming(request: Partial): Promise { + return this._connection.send("WUGraphTiming", request, "json", false, undefined, "WUGraphTimingResponse"); + } + + WUInfo(request: Partial): Promise { + return this._connection.send("WUInfo", request, "json", false, undefined, "WUInfoResponse"); + } + + WUInfoDetails(request: Partial): Promise { + return this._connection.send("WUInfoDetails", request, "json", false, undefined, "WUInfoResponse"); + } + + WUJobList(request: Partial): Promise { + return this._connection.send("WUJobList", request, "json", false, undefined, "WUJobListResponse"); + } + + WULightWeightQuery(request: Partial): Promise { + return this._connection.send("WULightWeightQuery", request, "json", false, undefined, "WULightWeightQueryResponse"); + } + + WUListArchiveFiles(request: Partial): Promise { + return this._connection.send("WUListArchiveFiles", request, "json", false, undefined, "WUListArchiveFilesResponse"); + } + + WUListLocalFileRequired(request: Partial): Promise { + return this._connection.send("WUListLocalFileRequired", request, "json", false, undefined, "WUListLocalFileRequiredResponse"); + } + + WUListQueries(request: Partial): Promise { + return this._connection.send("WUListQueries", request, "json", false, undefined, "WUListQueriesResponse"); + } + + WUListQueriesUsingFile(request: Partial): Promise { + return this._connection.send("WUListQueriesUsingFile", request, "json", false, undefined, "WUListQueriesUsingFileResponse"); + } + + WUMultiQuerysetDetails(request: Partial): Promise { + return this._connection.send("WUMultiQuerysetDetails", request, "json", false, undefined, "WUMultiQuerySetDetailsResponse"); + } + + WUProcessGraph(request: Partial): Promise { + return this._connection.send("WUProcessGraph", request, "json", false, undefined, "WUProcessGraphResponse"); + } + + WUProtect(request: Partial): Promise { + return this._connection.send("WUProtect", request, "json", false, undefined, "WUProtectResponse"); + } + + WUPublishWorkunit(request: Partial): Promise { + return this._connection.send("WUPublishWorkunit", request, "json", false, undefined, "WUPublishWorkunitResponse"); + } + + WUPushEvent(request: Partial): Promise { + return this._connection.send("WUPushEvent", request, "json", false, undefined, "WUPushEventResponse"); + } + + WUQuery(request: Partial): Promise { + return this._connection.send("WUQuery", request, "json", false, undefined, "WUQueryResponse"); + } + + WUQueryConfig(request: Partial): Promise { + return this._connection.send("WUQueryConfig", request, "json", false, undefined, "WUQueryConfigResponse"); + } + + WUQueryDetails(request: Partial): Promise { + return this._connection.send("WUQueryDetails", request, "json", false, undefined, "WUQueryDetailsResponse"); + } + + WUQueryDetailsLightWeight(request: Partial): Promise { + return this._connection.send("WUQueryDetailsLightWeight", request, "json", false, undefined, "WUQueryDetailsResponse"); + } + + WUQueryFiles(request: Partial): Promise { + return this._connection.send("WUQueryFiles", request, "json", false, undefined, "WUQueryFilesResponse"); + } + + WUQueryGetGraph(request: Partial): Promise { + return this._connection.send("WUQueryGetGraph", request, "json", false, undefined, "WUQueryGetGraphResponse"); + } + + WUQueryGetSummaryStats(request: Partial): Promise { + return this._connection.send("WUQueryGetSummaryStats", request, "json", false, undefined, "WUQueryGetSummaryStatsResponse"); + } + + WUQuerysetAliasAction(request: Partial): Promise { + return this._connection.send("WUQuerysetAliasAction", request, "json", false, undefined, "WUQuerySetAliasActionResponse"); + } + + WUQuerysetCopyQuery(request: Partial): Promise { + return this._connection.send("WUQuerysetCopyQuery", request, "json", false, undefined, "WUQuerySetCopyQueryResponse"); + } + + WUQuerysetDetails(request: Partial): Promise { + return this._connection.send("WUQuerysetDetails", request, "json", false, undefined, "WUQuerySetDetailsResponse"); + } + + WUQuerysetExport(request: Partial): Promise { + return this._connection.send("WUQuerysetExport", request, "json", false, undefined, "WUQuerysetExportResponse"); + } + + WUQuerysetImport(request: Partial): Promise { + return this._connection.send("WUQuerysetImport", request, "json", false, undefined, "WUQuerysetImportResponse"); + } + + WUQuerysetQueryAction(request: Partial): Promise { + return this._connection.send("WUQuerysetQueryAction", request, "json", false, undefined, "WUQuerySetQueryActionResponse"); + } + + WUQuerysets(request: Partial): Promise { + return this._connection.send("WUQuerysets", request, "json", false, undefined, "WUQuerysetsResponse"); + } + + WURecreateQuery(request: Partial): Promise { + return this._connection.send("WURecreateQuery", request, "json", false, undefined, "WURecreateQueryResponse"); + } + + WUResubmit(request: Partial): Promise { + return this._connection.send("WUResubmit", request, "json", false, undefined, "WUResubmitResponse"); + } + + WUResult(request: Partial): Promise { + return this._connection.send("WUResult", request, "json", false, undefined, "WUResultResponse"); + } + + WUResultBin(request: Partial): Promise { + return this._connection.send("WUResultBin", request, "json", false, undefined, "WUResultBinResponse"); + } + + WUResultSummary(request: Partial): Promise { + return this._connection.send("WUResultSummary", request, "json", false, undefined, "WUResultSummaryResponse"); + } + + WUResultView(request: Partial): Promise { + return this._connection.send("WUResultView", request, "json", false, undefined, "WUResultViewResponse"); + } + + WURun(request: Partial): Promise { + return this._connection.send("WURun", request, "json", false, undefined, "WURunResponse"); + } + + WUSchedule(request: Partial): Promise { + return this._connection.send("WUSchedule", request, "json", false, undefined, "WUScheduleResponse"); + } + + WUShowScheduled(request: Partial): Promise { + return this._connection.send("WUShowScheduled", request, "json", false, undefined, "WUShowScheduledResponse"); + } + + WUSubmit(request: Partial): Promise { + return this._connection.send("WUSubmit", request, "json", false, undefined, "WUSubmitResponse"); + } + + WUSyntaxCheckECL(request: Partial): Promise { + return this._connection.send("WUSyntaxCheckECL", request, "json", false, undefined, "WUSyntaxCheckResponse"); + } + + WUUpdate(request: Partial): Promise { + return this._connection.send("WUUpdate", request, "json", false, undefined, "WUUpdateResponse"); + } + + WUUpdateQueryEntry(request: Partial): Promise { + return this._connection.send("WUUpdateQueryEntry", request, "json", false, undefined, "WUUpdateQueryEntryResponse"); + } + + WUWaitCompiled(request: Partial): Promise { + return this._connection.send("WUWaitCompiled", request, "json", false, undefined, "WUWaitResponse"); + } + + WUWaitComplete(request: Partial): Promise { + return this._connection.send("WUWaitComplete", request, "json", false, undefined, "WUWaitResponse"); + } + +} diff --git a/packages/comms/utils/index.ts b/packages/comms/utils/index.ts index 2f7164de4b..23ec3e4a09 100644 --- a/packages/comms/utils/index.ts +++ b/packages/comms/utils/index.ts @@ -1,3 +1,4 @@ +/* eslint-disable no-console */ "use strict"; import { mkdirp, writeFile } from "fs-extra"; @@ -7,6 +8,7 @@ import minimist from "minimist"; import * as tsfmt from "typescript-formatter"; import { Case, changeCase } from "./util"; +import { hashSum } from "@hpcc-js/util"; type JsonObj = { [name: string]: any }; @@ -17,19 +19,20 @@ const cwd = process.cwd(); const args = minimist(process.argv.slice(2)); const keepGoing = args.k === true || args["keep-going"] === true; -const knownTypes: string[] = []; +const knownTypes: { [name: string]: [string, any] } = {}; const parsedTypes: JsonObj = {}; const primitiveMap: { [key: string]: string } = { "int": "number", "integer": "number", "unsignedInt": "number", + "uint64": "number", "nonNegativeInteger": "number", "long": "number", "double": "number", "base64Binary": "string", "dateTime": "string", -} +}; const knownPrimitives: string[] = []; const parsedEnums: JsonObj = {}; @@ -95,7 +98,7 @@ function parseEnum(enumString: string, enumEl) { if (enumParts[1].replace(/xsd:/, "") === "int") { let memberName = ""; enumEl.children.filter(el => el.name === "annotation")[0].children.forEach(el => { - memberName = changeCase(el.children[idx].$description, Case.PascalCase).replace(/[] ,]/g, ""); + memberName = changeCase(el.children[idx].$description, Case.PascalCase).replace(/[ ,]/g, ""); }); return `${memberName} = ${member}`; } @@ -104,55 +107,55 @@ function parseEnum(enumString: string, enumEl) { }; } -function parseTypeDefinition(operation: JsonObj, opName: string, types) { - - const typeDefn: JsonObj = {}; - printDbg(`processing ${opName}`, operation); - for (const prop in operation) { - const propName = (!prop.endsWith("[]")) ? prop : prop.slice(0, -2); - if (typeof operation[prop] === "object") { - const op = operation[prop]; - if (knownTypes.indexOf(propName) < 0) { - knownTypes.push(propName); - const defn = parseTypeDefinition(op, propName, types); +function parseTypeDefinition(operation: JsonObj, opName: string, types, depth: number = 0) { + const hashId = hashSum({ opName, operation }); + if (knownTypes[hashId]) { + return knownTypes[hashId]; + } else { + let i = 2; + let newPropName = opName; + while (parsedTypes[newPropName]) { + newPropName = `${opName}${i++}`; + } + knownTypes[hashId] = [newPropName, undefined]; + const typeDefn: JsonObj = {}; + printDbg(`processing ${opName}`, operation); + for (const prop in operation) { + const propName = (!prop.endsWith("[]")) ? prop : prop.slice(0, -2); + if (typeof operation[prop] === "object") { + const op = operation[prop]; + const [newPropName, defn] = parseTypeDefinition(op, propName, types, depth + 1); if (prop.endsWith("[]")) { - typeDefn[propName] = prop; + typeDefn[propName] = newPropName + "[]"; } else { - typeDefn[propName] = defn; + typeDefn[propName] = newPropName; } - parsedTypes[propName] = defn; } else { - typeDefn[propName] = prop; - } - - } else { - if (ignoredWords.indexOf(prop) < 0) { - const primitiveType = operation[prop].replace(/xsd:/gi, ""); - if (prop.indexOf("[]") > 0) { - typeDefn[prop.slice(0, -2)] = primitiveType + "[]"; - } else if (operation[prop].match(/[.*\|.*\|.*]/)) { - // note: the above regex is matching the node soap stringified - // structure of enums, parsed by client.describe(), - // e.g.: SomeEnumIdentifier|xsd:int|1,2,3,4 - const enumTypeName = operation[prop].split("|")[0] - const { type, enumType, values } = parseEnum(operation[prop], types[enumTypeName]); - parsedEnums[type] = values; - typeDefn[prop] = type; - } else { - typeDefn[prop] = primitiveType; - } - if (Object.keys(primitiveMap).indexOf(primitiveType) > -1 && knownPrimitives.indexOf(primitiveType) < 0) { - knownPrimitives.push(primitiveType); + if (ignoredWords.indexOf(prop) < 0) { + const primitiveType = operation[prop].replace(/xsd:/gi, ""); + if (prop.indexOf("[]") > 0) { + typeDefn[prop.slice(0, -2)] = primitiveType + "[]"; + } else if (operation[prop].match(/[.*\|.*\|.*]/)) { + // note: the above regex is matching the node soap stringified + // structure of enums, parsed by client.describe(), + // e.g.: SomeEnumIdentifier|xsd:int|1,2,3,4 + const enumTypeName = operation[prop].split("|")[0]; + const { type, enumType, values } = parseEnum(operation[prop], types[enumTypeName]); + parsedEnums[type] = values; + typeDefn[prop] = type; + } else { + typeDefn[prop] = primitiveType; + } + if (Object.keys(primitiveMap).indexOf(primitiveType) > -1 && knownPrimitives.indexOf(primitiveType) < 0) { + knownPrimitives.push(primitiveType); + } } } } + knownTypes[hashId] = [newPropName, typeDefn]; + parsedTypes[newPropName] = typeDefn; + return [newPropName, typeDefn]; } - - if (knownTypes.indexOf(opName) < 0) { - knownTypes.push(opName); - parsedTypes[opName] = typeDefn; - } - return typeDefn; } wsdlToTs(args.url) @@ -252,10 +255,10 @@ wsdlToTs(args.url) lines.push("\n\n"); methods.forEach(method => { - lines.push(`${method.name}(request: ${namespace}.${method.input}): Promise<${namespace}.${method.output}> {`); + lines.push(`${method.name}(request: Partial<${namespace}.${method.input}>): Promise<${namespace}.${method.output}> {`); lines.push(`\treturn this._connection.send("${method.name}", request, "json", false, undefined, "${method.output}");`); lines.push("}\n"); - }) + }); } lines.push("}\n"); @@ -268,8 +271,8 @@ wsdlToTs(args.url) writeFile(tsFile, lines.join("\n").replace(/\n\n\n/g, "\n"), (err) => { if (err) throw err; tsfmt.processFiles([tsFile], tsFmtOpts); - }) - }) + }); + }); } }).catch(err => { console.error(err); diff --git a/packages/eclwatch/src/WUScopeController.ts b/packages/eclwatch/src/WUScopeController.ts index 22f7497b9f..2d97c84e7b 100644 --- a/packages/eclwatch/src/WUScopeController.ts +++ b/packages/eclwatch/src/WUScopeController.ts @@ -324,7 +324,8 @@ export class WUScopeController { }, Notes: { Note: [] - } + }, + SinkActivity: "" }); }); } @@ -366,7 +367,8 @@ export class WUScopeController { }, Notes: { Note: [] - } + }, + SinkActivity: "" }; const dummyScope = new BaseScope(dummyDetails); const dummyVertex = subgraph.createVertex(dummyScope); @@ -383,7 +385,8 @@ export class WUScopeController { }, Notes: { Note: [] - } + }, + SinkActivity: "" }); subgraph.createEdge(edge.source, dummyVertex, dummyEdgeScope); } @@ -399,7 +402,8 @@ export class WUScopeController { }, Notes: { Note: [] - } + }, + SinkActivity: "" }); subgraph.createEdge(dummyVertex, edge.target, dummyEdgeScope); } diff --git a/packages/eclwatch/src/WUTimeline.ts b/packages/eclwatch/src/WUTimeline.ts index a56440f194..39b7fae4a0 100644 --- a/packages/eclwatch/src/WUTimeline.ts +++ b/packages/eclwatch/src/WUTimeline.ts @@ -1,7 +1,7 @@ import { Palette } from "@hpcc-js/common"; -import { Scope, Workunit, WUDetails } from "@hpcc-js/comms"; +import { Scope, Workunit, WsWorkunits } from "@hpcc-js/comms"; import { ReactTimelineSeries } from "@hpcc-js/timeline"; -import { hashSum } from "@hpcc-js/util"; +import { hashSum, RecursivePartial } from "@hpcc-js/util"; import "../src/WUGraph.css"; @@ -85,8 +85,8 @@ export interface WUTimeline { baseUrl(_: string): this; wuid(): string; wuid(_: string): this; - request(): Partial; - request(_: Partial): this; + request(): Partial; + request(_: RecursivePartial): this; } WUTimeline.prototype.publish("baseUrl", "", "string", "HPCC Platform Base URL"); diff --git a/packages/util/src/object.ts b/packages/util/src/object.ts index 5724fe1fcf..1b55baa68d 100644 --- a/packages/util/src/object.ts +++ b/packages/util/src/object.ts @@ -1,3 +1,8 @@ +export type RecursivePartial = { + [P in keyof T]?: T[P] extends (infer U)[] ? RecursivePartial[] : + T[P] extends object | undefined ? RecursivePartial : T[P]; +}; + /** * inner - return inner property of Object * Usage: inner("some.prop.to.locate", obj); @@ -69,7 +74,7 @@ export function deepMixin(dest: any = {}, ...sources: any[]): any { * @param dest - target object to mix into. * @param sources - objects to mix in */ -export function deepMixinT(dest: Partial = {}, ...sources: Array>): T { +export function deepMixinT(dest: RecursivePartial = {}, ...sources: Array>): T { return deepMixin(dest, ...sources); } diff --git a/tests/test-comms/src/ecl/dfuWorkunit.spec.ts b/tests/test-comms/src/ecl/dfuWorkunit.spec.ts index 4c29af5a0a..a4990b6dfc 100644 --- a/tests/test-comms/src/ecl/dfuWorkunit.spec.ts +++ b/tests/test-comms/src/ecl/dfuWorkunit.spec.ts @@ -102,6 +102,12 @@ OUTPUT(usPresidents,,'.::test::abc::123::us_presidents.txt',OVERWRITE);` } }); }); + it("delete DFU WU", function () { + return dfuWu.delete().then(response => { + expect(dfuWu.isDeleted(), "isDeleted").is.true; + return response; + }); + }); it("import (spray) fixed file", function () { return DFUWorkunit.sprayFixed( connOptions, @@ -135,6 +141,18 @@ OUTPUT(usPresidents,,'.::test::abc::123::us_presidents.txt',OVERWRITE);` } }); }); + it("delete WU", function () { + return wu.delete().then(response => { + expect(wu.isDeleted(), "isDeleted").is.true; + return response; + }); + }); + it("delete DFU WU", function () { + return dfuWu.delete().then(response => { + expect(dfuWu.isDeleted(), "isDeleted").is.true; + return response; + }); + }); }); describe("CSV file life cycle", function () { @@ -151,7 +169,7 @@ OUTPUT(usPresidents,,'.::test::abc::123::us_presidents.txt',OVERWRITE);` expect(_wu.Wuid).exist; wu = _wu; return _wu; - }) + }); }); it("update", function () { return wu.update({ @@ -209,7 +227,7 @@ OUTPUT(fakePeople,,'.::test::abc::123::fake_people.csv',CSV(HEADING(SINGLE)),OVE dfuWu = wu; return wu; }); - }) + }); it("export CSV finished", function () { return new Promise((resolve) => { if (dfuWu.isComplete()) { @@ -221,6 +239,12 @@ OUTPUT(fakePeople,,'.::test::abc::123::fake_people.csv',CSV(HEADING(SINGLE)),OVE } }); }); + it("delete DFU WU", function () { + return dfuWu.delete().then(response => { + expect(dfuWu.isDeleted(), "isDeleted").is.true; + return response; + }); + }); it("import (spray) CSV file", function () { return DFUWorkunit.sprayVariable( connOptions, @@ -260,6 +284,18 @@ OUTPUT(fakePeople,,'.::test::abc::123::fake_people.csv',CSV(HEADING(SINGLE)),OVE } }); }); + it("delete WU", function () { + return wu.delete().then(response => { + expect(wu.isDeleted(), "isDeleted").is.true; + return response; + }); + }); + it("delete DFU WU", function () { + return dfuWu.delete().then(response => { + expect(dfuWu.isDeleted(), "isDeleted").is.true; + return response; + }); + }); }); describe("JSON file life cycle", function () { @@ -325,7 +361,7 @@ OUTPUT(books,,'.::test::abc::123::books.json',JSON,OVERWRITE);` dfuWu = wu; return wu; }); - }) + }); it("export JSON finished", function () { return new Promise((resolve) => { if (dfuWu.isComplete()) { @@ -337,6 +373,12 @@ OUTPUT(books,,'.::test::abc::123::books.json',JSON,OVERWRITE);` } }); }); + it("delete DFU WU", function () { + return dfuWu.delete().then(response => { + expect(dfuWu.isDeleted(), "isDeleted").is.true; + return response; + }); + }); it("import (spray) JSON file", function () { return DFUWorkunit.sprayVariable( connOptions, @@ -374,5 +416,17 @@ OUTPUT(books,,'.::test::abc::123::books.json',JSON,OVERWRITE);` } }); }); + it("delete WU", function () { + return wu.delete().then(response => { + expect(wu.isDeleted(), "isDeleted").is.true; + return response; + }); + }); + it("delete DFU WU", function () { + return dfuWu.delete().then(response => { + expect(dfuWu.isDeleted(), "isDeleted").is.true; + return response; + }); + }); }); }); \ No newline at end of file diff --git a/tests/test-comms/src/ecl/workunit.spec.ts b/tests/test-comms/src/ecl/workunit.spec.ts index c17ee4e77d..cb920c4ecf 100644 --- a/tests/test-comms/src/ecl/workunit.spec.ts +++ b/tests/test-comms/src/ecl/workunit.spec.ts @@ -265,7 +265,7 @@ allPeople; }); it("query", function () { - return Workunit.query({ baseUrl: ESP_URL }, { State: "completed", LastNDays: 7, Count: 3 }).then((wus) => { + return Workunit.query({ baseUrl: ESP_URL }, { State: "completed", Count: 3 }).then((wus) => { wus.forEach((wu) => { logger.debug(`${wu.Wuid} Total Cluster Time: ${wu.TotalClusterTime}`); }); diff --git a/tests/test-comms/src/services/wsWorkunits.spec.ts b/tests/test-comms/src/services/wsWorkunits.spec.ts index 9b3a66b9ba..94daf548de 100644 --- a/tests/test-comms/src/services/wsWorkunits.spec.ts +++ b/tests/test-comms/src/services/wsWorkunits.spec.ts @@ -1,6 +1,6 @@ import { expect } from "chai"; -import { Connection, WorkunitsService, WUQuery } from "@hpcc-js/comms"; +import { Connection, WorkunitsService, WsWorkunits } from "@hpcc-js/comms"; import { isBrowser } from "@hpcc-js/util"; import { ESP_URL, isCI } from "../testLib"; @@ -22,7 +22,7 @@ describe("WsWorkunits", function () { }); function doTest(wsWorkunits: WorkunitsService) { - let wu: WUQuery.ECLWorkunit; + let wu: WsWorkunits.ECLWorkunit; it("WUCreate", function () { return wsWorkunits.WUCreate().then(response => { expect(response).exist; @@ -58,7 +58,7 @@ function doTest(wsWorkunits: WorkunitsService) { */ } it("WUDelete", function () { - return wsWorkunits.WUAction({ Wuids: [wu.Wuid], WUActionType: "Delete" }).then(response => { + return wsWorkunits.WUAction({ Wuids: { Item: [wu.Wuid] }, WUActionType: WsWorkunits.ECLWUActions.Delete }).then(response => { expect(response).exist; expect(response.ActionResults.WUActionResult).exist; expect(response.ActionResults.WUActionResult).to.have.length;