Skip to content

Commit 05d68d0

Browse files
authored
Move local query mappers to separate files (#2322)
1 parent 69c66f3 commit 05d68d0

File tree

4 files changed

+264
-262
lines changed

4 files changed

+264
-262
lines changed
Lines changed: 1 addition & 121 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,7 @@
11
import { assertNever } from "../../pure/helpers-pure";
2-
import {
3-
LocalQueryInfo,
4-
InitialQueryInfo,
5-
CompletedQueryInfo,
6-
} from "../../query-results";
7-
import { QueryEvaluationInfo } from "../../run-queries-shared";
82
import { QueryHistoryInfo } from "../query-history-info";
9-
import {
10-
QueryHistoryLocalQueryDto,
11-
InitialQueryInfoDto,
12-
QueryEvaluationInfoDto,
13-
CompletedQueryInfoDto,
14-
SortedResultSetInfoDto,
15-
SortDirectionDto,
16-
} from "./query-history-local-query-dto";
3+
import { mapLocalQueryInfoToDto } from "./query-history-local-query-domain-mapper";
174
import { QueryHistoryItemDto } from "./query-history-dto";
18-
import {
19-
RawResultsSortState,
20-
SortDirection,
21-
SortedResultSetInfo,
22-
} from "../../pure/interface-types";
235
import { mapQueryHistoryVariantAnalysisToDto } from "./query-history-variant-analysis-domain-mapper";
246

257
export function mapQueryHistoryToDto(
@@ -35,105 +17,3 @@ export function mapQueryHistoryToDto(
3517
}
3618
});
3719
}
38-
39-
function mapLocalQueryInfoToDto(
40-
query: LocalQueryInfo,
41-
): QueryHistoryLocalQueryDto {
42-
return {
43-
initialInfo: mapInitialQueryInfoToDto(query.initialInfo),
44-
t: "local",
45-
evalLogLocation: query.evalLogLocation,
46-
evalLogSummaryLocation: query.evalLogSummaryLocation,
47-
jsonEvalLogSummaryLocation: query.jsonEvalLogSummaryLocation,
48-
evalLogSummarySymbolsLocation: query.evalLogSummarySymbolsLocation,
49-
failureReason: query.failureReason,
50-
completedQuery:
51-
query.completedQuery && mapCompletedQueryToDto(query.completedQuery),
52-
};
53-
}
54-
55-
function mapCompletedQueryToDto(
56-
query: CompletedQueryInfo,
57-
): CompletedQueryInfoDto {
58-
const sortedResults = Object.fromEntries(
59-
Object.entries(query.sortedResultsInfo).map(([key, value]) => {
60-
return [key, mapSortedResultSetInfoToDto(value)];
61-
}),
62-
);
63-
64-
return {
65-
query: mapQueryEvaluationInfoToDto(query.query),
66-
result: {
67-
runId: query.result.runId,
68-
queryId: query.result.queryId,
69-
resultType: query.result.resultType,
70-
evaluationTime: query.result.evaluationTime,
71-
message: query.result.message,
72-
logFileLocation: query.result.logFileLocation,
73-
},
74-
logFileLocation: query.logFileLocation,
75-
successful: query.successful,
76-
message: query.message,
77-
resultCount: query.resultCount,
78-
sortedResultsInfo: sortedResults,
79-
};
80-
}
81-
82-
function mapSortDirectionToDto(sortDirection: SortDirection): SortDirectionDto {
83-
switch (sortDirection) {
84-
case SortDirection.asc:
85-
return SortDirectionDto.asc;
86-
case SortDirection.desc:
87-
return SortDirectionDto.desc;
88-
}
89-
}
90-
91-
function mapRawResultsSortStateToDto(
92-
sortState: RawResultsSortState,
93-
): SortedResultSetInfoDto["sortState"] {
94-
return {
95-
columnIndex: sortState.columnIndex,
96-
sortDirection: mapSortDirectionToDto(sortState.sortDirection),
97-
};
98-
}
99-
100-
function mapSortedResultSetInfoToDto(
101-
resultSet: SortedResultSetInfo,
102-
): SortedResultSetInfoDto {
103-
return {
104-
resultsPath: resultSet.resultsPath,
105-
sortState: mapRawResultsSortStateToDto(resultSet.sortState),
106-
};
107-
}
108-
109-
function mapInitialQueryInfoToDto(
110-
localQueryInitialInfo: InitialQueryInfo,
111-
): InitialQueryInfoDto {
112-
return {
113-
userSpecifiedLabel: localQueryInitialInfo.userSpecifiedLabel,
114-
queryText: localQueryInitialInfo.queryText,
115-
isQuickQuery: localQueryInitialInfo.isQuickQuery,
116-
isQuickEval: localQueryInitialInfo.isQuickEval,
117-
quickEvalPosition: localQueryInitialInfo.quickEvalPosition,
118-
queryPath: localQueryInitialInfo.queryPath,
119-
databaseInfo: {
120-
databaseUri: localQueryInitialInfo.databaseInfo.databaseUri,
121-
name: localQueryInitialInfo.databaseInfo.name,
122-
},
123-
start: localQueryInitialInfo.start,
124-
id: localQueryInitialInfo.id,
125-
};
126-
}
127-
128-
function mapQueryEvaluationInfoToDto(
129-
queryEvaluationInfo: QueryEvaluationInfo,
130-
): QueryEvaluationInfoDto {
131-
return {
132-
querySaveDir: queryEvaluationInfo.querySaveDir,
133-
dbItemPath: queryEvaluationInfo.dbItemPath,
134-
databaseHasMetadataFile: queryEvaluationInfo.databaseHasMetadataFile,
135-
quickEvalPosition: queryEvaluationInfo.quickEvalPosition,
136-
metadata: queryEvaluationInfo.metadata,
137-
resultsPaths: queryEvaluationInfo.resultsPaths,
138-
};
139-
}
Lines changed: 1 addition & 141 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,7 @@
1-
import {
2-
LocalQueryInfo,
3-
CompletedQueryInfo,
4-
InitialQueryInfo,
5-
} from "../../query-results";
6-
import { QueryEvaluationInfo } from "../../run-queries-shared";
71
import { QueryHistoryInfo } from "../query-history-info";
8-
import {
9-
CompletedQueryInfoDto,
10-
QueryEvaluationInfoDto,
11-
InitialQueryInfoDto,
12-
QueryHistoryLocalQueryDto,
13-
SortDirectionDto,
14-
InterpretedResultsSortStateDto,
15-
SortedResultSetInfoDto,
16-
RawResultsSortStateDto,
17-
} from "./query-history-local-query-dto";
182
import { QueryHistoryItemDto } from "./query-history-dto";
19-
import {
20-
InterpretedResultsSortState,
21-
RawResultsSortState,
22-
SortDirection,
23-
SortedResultSetInfo,
24-
} from "../../pure/interface-types";
253
import { mapQueryHistoryVariantAnalysisToDomainModel } from "./query-history-variant-analysis-dto-mapper";
4+
import { mapLocalQueryItemToDomainModel } from "./query-history-local-query-dto-mapper";
265

276
export function mapQueryHistoryToDomainModel(
287
queries: QueryHistoryItemDto[],
@@ -41,122 +20,3 @@ export function mapQueryHistoryToDomainModel(
4120
);
4221
});
4322
}
44-
45-
function mapLocalQueryItemToDomainModel(
46-
localQuery: QueryHistoryLocalQueryDto,
47-
): LocalQueryInfo {
48-
return new LocalQueryInfo(
49-
mapInitialQueryInfoToDomainModel(localQuery.initialInfo),
50-
undefined,
51-
localQuery.failureReason,
52-
localQuery.completedQuery &&
53-
mapCompletedQueryInfoToDomainModel(localQuery.completedQuery),
54-
localQuery.evalLogLocation,
55-
localQuery.evalLogSummaryLocation,
56-
localQuery.jsonEvalLogSummaryLocation,
57-
localQuery.evalLogSummarySymbolsLocation,
58-
);
59-
}
60-
61-
function mapCompletedQueryInfoToDomainModel(
62-
completedQuery: CompletedQueryInfoDto,
63-
): CompletedQueryInfo {
64-
const sortState =
65-
completedQuery.interpretedResultsSortState &&
66-
mapSortStateToDomainModel(completedQuery.interpretedResultsSortState);
67-
68-
const sortedResults = Object.fromEntries(
69-
Object.entries(completedQuery.sortedResultsInfo).map(([key, value]) => {
70-
return [key, mapSortedResultSetInfoToDomainModel(value)];
71-
}),
72-
);
73-
74-
return new CompletedQueryInfo(
75-
mapQueryEvaluationInfoToDomainModel(completedQuery.query),
76-
{
77-
runId: completedQuery.result.runId,
78-
queryId: completedQuery.result.queryId,
79-
resultType: completedQuery.result.resultType,
80-
evaluationTime: completedQuery.result.evaluationTime,
81-
message: completedQuery.result.message,
82-
logFileLocation: completedQuery.result.logFileLocation,
83-
},
84-
completedQuery.logFileLocation,
85-
completedQuery.successful ?? completedQuery.sucessful,
86-
completedQuery.message,
87-
sortState,
88-
completedQuery.resultCount,
89-
sortedResults,
90-
);
91-
}
92-
93-
function mapInitialQueryInfoToDomainModel(
94-
initialInfo: InitialQueryInfoDto,
95-
): InitialQueryInfo {
96-
return {
97-
userSpecifiedLabel: initialInfo.userSpecifiedLabel,
98-
queryText: initialInfo.queryText,
99-
isQuickQuery: initialInfo.isQuickQuery,
100-
isQuickEval: initialInfo.isQuickEval,
101-
quickEvalPosition: initialInfo.quickEvalPosition,
102-
queryPath: initialInfo.queryPath,
103-
databaseInfo: {
104-
databaseUri: initialInfo.databaseInfo.databaseUri,
105-
name: initialInfo.databaseInfo.name,
106-
},
107-
start: new Date(initialInfo.start),
108-
id: initialInfo.id,
109-
};
110-
}
111-
112-
function mapQueryEvaluationInfoToDomainModel(
113-
evaluationInfo: QueryEvaluationInfoDto,
114-
): QueryEvaluationInfo {
115-
return new QueryEvaluationInfo(
116-
evaluationInfo.querySaveDir,
117-
evaluationInfo.dbItemPath,
118-
evaluationInfo.databaseHasMetadataFile,
119-
evaluationInfo.quickEvalPosition,
120-
evaluationInfo.metadata,
121-
);
122-
}
123-
124-
function mapSortDirectionToDomainModel(
125-
sortDirection: SortDirectionDto,
126-
): SortDirection {
127-
switch (sortDirection) {
128-
case SortDirectionDto.asc:
129-
return SortDirection.asc;
130-
case SortDirectionDto.desc:
131-
return SortDirection.desc;
132-
}
133-
}
134-
135-
function mapSortStateToDomainModel(
136-
sortState: InterpretedResultsSortStateDto,
137-
): InterpretedResultsSortState {
138-
return {
139-
sortBy: sortState.sortBy,
140-
sortDirection: mapSortDirectionToDomainModel(sortState.sortDirection),
141-
};
142-
}
143-
144-
function mapSortedResultSetInfoToDomainModel(
145-
sortedResultSetInfo: SortedResultSetInfoDto,
146-
): SortedResultSetInfo {
147-
return {
148-
resultsPath: sortedResultSetInfo.resultsPath,
149-
sortState: mapRawResultsSortStateToDomainModel(
150-
sortedResultSetInfo.sortState,
151-
),
152-
};
153-
}
154-
155-
function mapRawResultsSortStateToDomainModel(
156-
sortState: RawResultsSortStateDto,
157-
): RawResultsSortState {
158-
return {
159-
columnIndex: sortState.columnIndex,
160-
sortDirection: mapSortDirectionToDomainModel(sortState.sortDirection),
161-
};
162-
}

0 commit comments

Comments
 (0)