Skip to content

Commit 7414380

Browse files
authored
Improves error handling (#102)
1 parent 9707880 commit 7414380

File tree

1 file changed

+58
-54
lines changed

1 file changed

+58
-54
lines changed

src/clients/AasRepositoryClient.ts

Lines changed: 58 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -52,20 +52,20 @@ export class AasRepositoryClient {
5252
const client = createCustomClient(baseUrl, headers);
5353
const encodedAssetIds = assetIds?.map((id) => base64Encode(JSON.stringify(id)));
5454

55-
const { data, error } = await AasRepository.getAllAssetAdministrationShells({
55+
const result = await AasRepository.getAllAssetAdministrationShells({
5656
client,
5757
query: { assetIds: encodedAssetIds, idShort, limit, cursor },
5858
});
5959

60-
if (error) {
61-
return { success: false, error };
60+
if (result.error) {
61+
return { success: false, error: result.error };
6262
}
6363

64-
const shells = (data.result ?? []).map(convertApiAasToCoreAas);
64+
const shells = (result.data.result ?? []).map(convertApiAasToCoreAas);
6565
return {
6666
success: true,
6767
data: {
68-
pagedResult: data.paging_metadata,
68+
pagedResult: result.data.paging_metadata,
6969
result: shells,
7070
},
7171
};
@@ -95,15 +95,15 @@ export class AasRepositoryClient {
9595
const { baseUrl, assetAdministrationShell, headers } = options;
9696
try {
9797
const client = createCustomClient(baseUrl, headers);
98-
const { data, error } = await AasRepository.postAssetAdministrationShell({
98+
const result = await AasRepository.postAssetAdministrationShell({
9999
client,
100100
body: convertCoreAasToApiAas(assetAdministrationShell),
101101
});
102102

103-
if (error) {
104-
return { success: false, error };
103+
if (result.error) {
104+
return { success: false, error: result.error };
105105
}
106-
return { success: true, data: convertApiAasToCoreAas(data) };
106+
return { success: true, data: convertApiAasToCoreAas(result.data) };
107107
} catch (err) {
108108
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
109109
}
@@ -134,15 +134,15 @@ export class AasRepositoryClient {
134134
const client = createCustomClient(baseUrl, headers);
135135
const encodedAasIdentifier = base64Encode(aasIdentifier);
136136

137-
const { data, error } = await AasRepository.deleteAssetAdministrationShellById({
137+
const result = await AasRepository.deleteAssetAdministrationShellById({
138138
client,
139139
path: { aasIdentifier: encodedAasIdentifier },
140140
});
141141

142-
if (error) {
143-
return { success: false, error };
142+
if (result.error) {
143+
return { success: false, error: result.error };
144144
}
145-
return { success: true, data };
145+
return { success: true, data: result.data };
146146
} catch (err) {
147147
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
148148
}
@@ -168,15 +168,19 @@ export class AasRepositoryClient {
168168
const client = createCustomClient(baseUrl, headers);
169169
const encodedAasIdentifier = base64Encode(aasIdentifier);
170170

171-
const { data, error } = await AasRepository.getAssetAdministrationShellById({
171+
const result = await AasRepository.getAssetAdministrationShellById({
172172
client,
173173
path: { aasIdentifier: encodedAasIdentifier },
174174
});
175175

176-
if (error) {
177-
return { success: false, error };
176+
if (result.error) {
177+
// Return the complete error object with status code
178+
return {
179+
success: false,
180+
error: result.error,
181+
};
178182
}
179-
return { success: true, data: convertApiAasToCoreAas(data) };
183+
return { success: true, data: convertApiAasToCoreAas(result.data) };
180184
} catch (err) {
181185
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
182186
}
@@ -209,16 +213,16 @@ export class AasRepositoryClient {
209213
const client = createCustomClient(baseUrl, headers);
210214
const encodedAasIdentifier = base64Encode(aasIdentifier);
211215

212-
const { data, error } = await AasRepository.putAssetAdministrationShellById({
216+
const result = await AasRepository.putAssetAdministrationShellById({
213217
client,
214218
path: { aasIdentifier: encodedAasIdentifier },
215219
body: convertCoreAasToApiAas(assetAdministrationShell),
216220
});
217221

218-
if (error) {
219-
return { success: false, error };
222+
if (result.error) {
223+
return { success: false, error: result.error };
220224
}
221-
return { success: true, data };
225+
return { success: true, data: result.data };
222226
} catch (err) {
223227
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
224228
}
@@ -244,17 +248,17 @@ export class AasRepositoryClient {
244248
const client = createCustomClient(baseUrl, headers);
245249
const encodedAasIdentifier = base64Encode(aasIdentifier);
246250

247-
const { data, error } = await AasRepository.getAssetInformationAasRepository({
251+
const result = await AasRepository.getAssetInformationAasRepository({
248252
client,
249253
path: { aasIdentifier: encodedAasIdentifier },
250254
});
251255

252-
if (error) {
253-
return { success: false, error };
256+
if (result.error) {
257+
return { success: false, error: result.error };
254258
}
255259
return {
256260
success: true,
257-
data: convertApiAssetInformationToCoreAssetInformation(data),
261+
data: convertApiAssetInformationToCoreAssetInformation(result.data),
258262
};
259263
} catch (err) {
260264
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
@@ -288,16 +292,16 @@ export class AasRepositoryClient {
288292
const client = createCustomClient(baseUrl, headers);
289293
const encodedAasIdentifier = base64Encode(aasIdentifier);
290294

291-
const { data, error } = await AasRepository.putAssetInformationAasRepository({
295+
const result = await AasRepository.putAssetInformationAasRepository({
292296
client,
293297
path: { aasIdentifier: encodedAasIdentifier },
294298
body: convertCoreAssetInformationToApiAssetInformation(assetInformation),
295299
});
296300

297-
if (error) {
298-
return { success: false, error };
301+
if (result.error) {
302+
return { success: false, error: result.error };
299303
}
300-
return { success: true, data };
304+
return { success: true, data: result.data };
301305
} catch (err) {
302306
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
303307
}
@@ -328,17 +332,17 @@ export class AasRepositoryClient {
328332
const client = createCustomClient(baseUrl, headers);
329333
const encodedAasIdentifier = base64Encode(aasIdentifier);
330334

331-
const { data, error } = await AasRepository.deleteThumbnailAasRepository({
335+
const result = await AasRepository.deleteThumbnailAasRepository({
332336
client,
333337
path: { aasIdentifier: encodedAasIdentifier },
334338
});
335339

336-
if (error) {
337-
return { success: false, error };
340+
if (result.error) {
341+
return { success: false, error: result.error };
338342
}
339343
return {
340344
success: true,
341-
data: data as AasRepository.DeleteThumbnailAasRepositoryResponses,
345+
data: result.data as AasRepository.DeleteThumbnailAasRepositoryResponses,
342346
};
343347
} catch (err) {
344348
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
@@ -365,15 +369,15 @@ export class AasRepositoryClient {
365369
const client = createCustomClient(baseUrl, headers);
366370
const encodedAasIdentifier = base64Encode(aasIdentifier);
367371

368-
const { data, error } = await AasRepository.getThumbnailAasRepository({
372+
const result = await AasRepository.getThumbnailAasRepository({
369373
client,
370374
path: { aasIdentifier: encodedAasIdentifier },
371375
});
372376

373-
if (error) {
374-
return { success: false, error };
377+
if (result.error) {
378+
return { success: false, error: result.error };
375379
}
376-
return { success: true, data };
380+
return { success: true, data: result.data };
377381
} catch (err) {
378382
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
379383
}
@@ -403,16 +407,16 @@ export class AasRepositoryClient {
403407
const client = createCustomClient(baseUrl, headers);
404408
const encodedAasIdentifier = base64Encode(aasIdentifier);
405409

406-
const { data, error } = await AasRepository.putThumbnailAasRepository({
410+
const result = await AasRepository.putThumbnailAasRepository({
407411
client,
408412
path: { aasIdentifier: encodedAasIdentifier },
409413
body: thumbnail,
410414
});
411415

412-
if (error) {
413-
return { success: false, error };
416+
if (result.error) {
417+
return { success: false, error: result.error };
414418
}
415-
return { success: true, data };
419+
return { success: true, data: result.data };
416420
} catch (err) {
417421
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
418422
}
@@ -450,21 +454,21 @@ export class AasRepositoryClient {
450454
const client = createCustomClient(baseUrl, headers);
451455
const encodedAasIdentifier = base64Encode(aasIdentifier);
452456

453-
const { data, error } = await AasRepository.getAllSubmodelReferencesAasRepository({
457+
const result = await AasRepository.getAllSubmodelReferencesAasRepository({
454458
client,
455459
path: { aasIdentifier: encodedAasIdentifier },
456460
query: { limit, cursor },
457461
});
458462

459-
if (error) {
460-
return { success: false, error };
463+
if (result.error) {
464+
return { success: false, error: result.error };
461465
}
462466

463-
const submodelReferences = (data.result ?? []).map(convertApiReferenceToCoreReference);
467+
const submodelReferences = (result.data.result ?? []).map(convertApiReferenceToCoreReference);
464468
return {
465469
success: true,
466470
data: {
467-
pagedResult: data.paging_metadata,
471+
pagedResult: result.data.paging_metadata,
468472
result: submodelReferences,
469473
},
470474
};
@@ -495,16 +499,16 @@ export class AasRepositoryClient {
495499
const client = createCustomClient(baseUrl, headers);
496500
const encodedAasIdentifier = base64Encode(aasIdentifier);
497501

498-
const { data, error } = await AasRepository.postSubmodelReferenceAasRepository({
502+
const result = await AasRepository.postSubmodelReferenceAasRepository({
499503
client,
500504
path: { aasIdentifier: encodedAasIdentifier },
501505
body: convertCoreReferenceToApiReference(submodelReference),
502506
});
503507

504-
if (error) {
505-
return { success: false, error };
508+
if (result.error) {
509+
return { success: false, error: result.error };
506510
}
507-
return { success: true, data: convertApiReferenceToCoreReference(data) };
511+
return { success: true, data: convertApiReferenceToCoreReference(result.data) };
508512
} catch (err) {
509513
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
510514
}
@@ -538,18 +542,18 @@ export class AasRepositoryClient {
538542
const encodedAasIdentifier = base64Encode(aasIdentifier);
539543
const encodedSubmodelIdentifier = base64Encode(submodelIdentifier);
540544

541-
const { data, error } = await AasRepository.deleteSubmodelReferenceByIdAasRepository({
545+
const result = await AasRepository.deleteSubmodelReferenceByIdAasRepository({
542546
client,
543547
path: {
544548
aasIdentifier: encodedAasIdentifier,
545549
submodelIdentifier: encodedSubmodelIdentifier,
546550
},
547551
});
548552

549-
if (error) {
550-
return { success: false, error };
553+
if (result.error) {
554+
return { success: false, error: result.error };
551555
}
552-
return { success: true, data };
556+
return { success: true, data: result.data };
553557
} catch (err) {
554558
return { success: false, error: err instanceof Error ? err : new Error(String(err)) };
555559
}

0 commit comments

Comments
 (0)