MCPcopy Index your code
hub / github.com/coder/code-server / ensureVSCodeLoaded

Function ensureVSCodeLoaded

src/node/routes/vscode.ts:89–116  ·  view source on GitHub ↗
(
  req: express.Request,
  _: express.Response,
  next: express.NextFunction,
)

Source from the content-addressed store, hash-verified

87 * Ensure the VS Code server is loaded.
88 */
89export const ensureVSCodeLoaded = async (
90 req: express.Request,
91 _: express.Response,
92 next: express.NextFunction,
93): Promise<void> => {
94 if (vscodeServer) {
95 return next()
96 }
97 if (!vscodeServerPromise) {
98 vscodeServerPromise = loadVSCode(req)
99 }
100 try {
101 vscodeServer = await vscodeServerPromise
102 } catch (error) {
103 vscodeServerPromise = undefined // Unset so we can try again.
104 logError(logger, "CodeServerRouteWrapper", error)
105 if (isDevMode) {
106 return next(
107 new Error(
108 (error instanceof Error ? error.message : error) +
109 " (Have you applied the patches? If so, VS Code may still be compiling)",
110 ),
111 )
112 }
113 return next(error)
114 }
115 return next()
116}
117
118router.get("/", ensureVSCodeLoaded, async (req, res, next) => {
119 const isAuthenticated = await authenticated(req)

Callers

nothing calls this directly

Calls 2

logErrorFunction · 0.90
loadVSCodeFunction · 0.85

Tested by

no test coverage detected