Skip to content

Commit 1692213

Browse files
Remove the ModeledMethodWithSignature type in favour of just ModeledMethod
1 parent 97a331c commit 1692213

File tree

5 files changed

+59
-99
lines changed

5 files changed

+59
-99
lines changed

extensions/ql-vscode/src/data-extensions-editor/data-extensions-editor-view.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -377,11 +377,11 @@ export class DataExtensionsEditorView extends AbstractWebview<
377377
queryRunner: this.queryRunner,
378378
queryStorageDir: this.queryStorageDir,
379379
databaseItem: addedDatabase ?? this.databaseItem,
380-
onResults: async (results) => {
380+
onResults: async (modeledMethods) => {
381381
const modeledMethodsByName: Record<string, ModeledMethod> = {};
382382

383-
for (const result of results) {
384-
modeledMethodsByName[result.signature] = result.modeledMethod;
383+
for (const modeledMethod of modeledMethods) {
384+
modeledMethodsByName[modeledMethod.signature] = modeledMethod;
385385
}
386386

387387
await this.postMessage({

extensions/ql-vscode/src/data-extensions-editor/generate-flow-model.ts

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,7 @@ import { extLogger } from "../common/logging/vscode";
88
import { extensiblePredicateDefinitions } from "./predicates";
99
import { ProgressCallback } from "../common/vscode/progress";
1010
import { getOnDiskWorkspaceFolders } from "../common/vscode/workspace-folders";
11-
import {
12-
ModeledMethodType,
13-
ModeledMethodWithSignature,
14-
} from "./modeled-method";
11+
import { ModeledMethod, ModeledMethodType } from "./modeled-method";
1512
import { redactableError } from "../common/errors";
1613
import { QueryResultType } from "../query-server/new-messages";
1714
import { file } from "tmp-promise";
@@ -27,7 +24,7 @@ type FlowModelOptions = {
2724
databaseItem: DatabaseItem;
2825
progress: ProgressCallback;
2926
token: CancellationToken;
30-
onResults: (results: ModeledMethodWithSignature[]) => void | Promise<void>;
27+
onResults: (results: ModeledMethod[]) => void | Promise<void>;
3128
};
3229

3330
async function resolveQueries(
@@ -79,7 +76,7 @@ async function getModeledMethodsFromFlow(
7976
progress,
8077
token,
8178
}: Omit<FlowModelOptions, "onResults">,
82-
): Promise<ModeledMethodWithSignature[]> {
79+
): Promise<ModeledMethod[]> {
8380
if (queryPath === undefined) {
8481
void showAndLogExceptionWithTelemetry(
8582
extLogger,

extensions/ql-vscode/src/data-extensions-editor/modeled-method.ts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,3 @@ export interface ModeledMethod extends MethodSignature {
2626
kind: string;
2727
provenance: Provenance;
2828
}
29-
30-
export type ModeledMethodWithSignature = {
31-
signature: string;
32-
modeledMethod: ModeledMethod;
33-
};
Lines changed: 50 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,9 @@
1-
import {
2-
ModeledMethod,
3-
ModeledMethodType,
4-
ModeledMethodWithSignature,
5-
Provenance,
6-
} from "./modeled-method";
1+
import { ModeledMethod, ModeledMethodType, Provenance } from "./modeled-method";
72

83
export type ExtensiblePredicateDefinition = {
94
extensiblePredicate: string;
105
generateMethodDefinition: (method: ModeledMethod) => Tuple[];
11-
readModeledMethod: (row: Tuple[]) => ModeledMethodWithSignature;
6+
readModeledMethod: (row: Tuple[]) => ModeledMethod;
127

138
supportedKinds?: string[];
149
};
@@ -40,24 +35,18 @@ export const extensiblePredicateDefinitions: Record<
4035
method.kind,
4136
method.provenance,
4237
],
43-
readModeledMethod: (row) => {
44-
const signature = readRowToMethod(row);
45-
return {
46-
signature,
47-
modeledMethod: {
48-
type: "source",
49-
input: "",
50-
output: row[6] as string,
51-
kind: row[7] as string,
52-
provenance: row[8] as Provenance,
53-
signature,
54-
packageName: row[0] as string,
55-
typeName: row[1] as string,
56-
methodName: row[3] as string,
57-
methodParameters: row[4] as string,
58-
},
59-
};
60-
},
38+
readModeledMethod: (row) => ({
39+
type: "source",
40+
input: "",
41+
output: row[6] as string,
42+
kind: row[7] as string,
43+
provenance: row[8] as Provenance,
44+
signature: readRowToMethod(row),
45+
packageName: row[0] as string,
46+
typeName: row[1] as string,
47+
methodName: row[3] as string,
48+
methodParameters: row[4] as string,
49+
}),
6150
supportedKinds: ["remote"],
6251
},
6352
sink: {
@@ -77,24 +66,18 @@ export const extensiblePredicateDefinitions: Record<
7766
method.kind,
7867
method.provenance,
7968
],
80-
readModeledMethod: (row) => {
81-
const signature = readRowToMethod(row);
82-
return {
83-
signature,
84-
modeledMethod: {
85-
type: "sink",
86-
input: row[6] as string,
87-
output: "",
88-
kind: row[7] as string,
89-
provenance: row[8] as Provenance,
90-
signature,
91-
packageName: row[0] as string,
92-
typeName: row[1] as string,
93-
methodName: row[3] as string,
94-
methodParameters: row[4] as string,
95-
},
96-
};
97-
},
69+
readModeledMethod: (row) => ({
70+
type: "sink",
71+
input: row[6] as string,
72+
output: "",
73+
kind: row[7] as string,
74+
provenance: row[8] as Provenance,
75+
signature: readRowToMethod(row),
76+
packageName: row[0] as string,
77+
typeName: row[1] as string,
78+
methodName: row[3] as string,
79+
methodParameters: row[4] as string,
80+
}),
9881
supportedKinds: ["sql", "xss", "logging"],
9982
},
10083
summary: {
@@ -115,24 +98,18 @@ export const extensiblePredicateDefinitions: Record<
11598
method.kind,
11699
method.provenance,
117100
],
118-
readModeledMethod: (row) => {
119-
const signature = readRowToMethod(row);
120-
return {
121-
signature,
122-
modeledMethod: {
123-
type: "summary",
124-
input: row[6] as string,
125-
output: row[7] as string,
126-
kind: row[8] as string,
127-
provenance: row[9] as Provenance,
128-
signature,
129-
packageName: row[0] as string,
130-
typeName: row[1] as string,
131-
methodName: row[3] as string,
132-
methodParameters: row[4] as string,
133-
},
134-
};
135-
},
101+
readModeledMethod: (row) => ({
102+
type: "summary",
103+
input: row[6] as string,
104+
output: row[7] as string,
105+
kind: row[8] as string,
106+
provenance: row[9] as Provenance,
107+
signature: readRowToMethod(row),
108+
packageName: row[0] as string,
109+
typeName: row[1] as string,
110+
methodName: row[3] as string,
111+
methodParameters: row[4] as string,
112+
}),
136113
supportedKinds: ["taint", "value"],
137114
},
138115
neutral: {
@@ -148,24 +125,18 @@ export const extensiblePredicateDefinitions: Record<
148125
method.kind,
149126
method.provenance,
150127
],
151-
readModeledMethod: (row) => {
152-
const signature = `${row[0]}.${row[1]}#${row[2]}${row[3]}`;
153-
return {
154-
signature,
155-
modeledMethod: {
156-
type: "neutral",
157-
input: "",
158-
output: "",
159-
kind: row[4] as string,
160-
provenance: row[5] as Provenance,
161-
signature,
162-
packageName: row[0] as string,
163-
typeName: row[1] as string,
164-
methodName: row[2] as string,
165-
methodParameters: row[3] as string,
166-
},
167-
};
168-
},
128+
readModeledMethod: (row) => ({
129+
type: "neutral",
130+
input: "",
131+
output: "",
132+
kind: row[4] as string,
133+
provenance: row[5] as Provenance,
134+
signature: `${row[0]}.${row[1]}#${row[2]}${row[3]}`,
135+
packageName: row[0] as string,
136+
typeName: row[1] as string,
137+
methodName: row[2] as string,
138+
methodParameters: row[3] as string,
139+
}),
169140
supportedKinds: ["summary", "source", "sink"],
170141
},
171142
};

extensions/ql-vscode/src/data-extensions-editor/yaml.ts

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -199,14 +199,11 @@ export function loadDataExtensionYaml(
199199
}
200200

201201
for (const row of data) {
202-
const result = definition.readModeledMethod(row);
203-
if (!result) {
202+
const modeledMethod = definition.readModeledMethod(row);
203+
if (!modeledMethod) {
204204
continue;
205205
}
206-
207-
const { signature, modeledMethod } = result;
208-
209-
modeledMethods[signature] = modeledMethod;
206+
modeledMethods[modeledMethod.signature] = modeledMethod;
210207
}
211208
}
212209

0 commit comments

Comments
 (0)