Skip to content

Commit e36032d

Browse files
dlqqq3coins
authored andcommitted
refactor try/catch block
1 parent c1a4ff2 commit e36032d

File tree

1 file changed

+10
-17
lines changed

1 file changed

+10
-17
lines changed

src/index.tsx

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -132,31 +132,24 @@ async function activatePlugin(
132132
const trans = translator.load('jupyterlab');
133133
const api = new SchedulerService({});
134134

135-
// Try calling an API to verify that the server extension is actually installed
136-
let serverExtensionOk = false;
137-
try{
138-
await api.getJobs({ max_items: 0 })
139-
serverExtensionOk = true;
140-
} catch (responseError: unknown) {
141-
const responseCode = (responseError as ServerConnection.ResponseError).response.status;
142-
// Treat a 404 Not Found response as the backend not being present.
143-
if (responseCode === 404) {
135+
// Call API to verify that the server extension is actually installed
136+
try {
137+
await api.getJobs({ max_items: 0 });
138+
} catch (e: unknown) {
139+
// in case of 404, show missing server extension dialog and return
140+
if (
141+
e instanceof ServerConnection.ResponseError &&
142+
e.response.status === 404
143+
) {
144144
showDialog({
145145
title: trans.__('Jupyter Scheduler server extension not found'),
146146
body: SERVER_EXTENSION_404_JSX,
147147
buttons: [Dialog.okButton()]
148148
}).catch(console.warn);
149-
} else {
150-
// Treat other response codes as transient errors; optimistically hope that
151-
// server extension is present
152-
serverExtensionOk = true;
149+
return;
153150
}
154151
}
155152

156-
if (!serverExtensionOk) {
157-
return; // Don't activate the rest of the plugin
158-
}
159-
160153
const { commands } = app;
161154
const fileBrowserTracker = browserFactory.tracker;
162155
const widgetTracker = new WidgetTracker<MainAreaWidget<NotebookJobsPanel>>({

0 commit comments

Comments
 (0)