2 /*---------------------------------------------------------------------------------------------
\r
3 * Copyright (c) Microsoft Corporation. All rights reserved.
\r
4 * Licensed under the MIT License. See License.txt in the project root for license information.
\r
5 *--------------------------------------------------------------------------------------------*/
\r
6 Object.defineProperty(exports, "__esModule", { value: true });
\r
7 const node_1 = require("vscode-languageserver/node");
\r
8 const runner_1 = require("../utils/runner");
\r
9 const jsonServer_1 = require("../jsonServer");
\r
10 const request_light_1 = require("request-light");
\r
11 const vscode_uri_1 = require("vscode-uri");
\r
12 const fs = require("fs");
\r
13 // Create a connection for the server.
\r
14 const connection = node_1.createConnection();
\r
15 console.log = connection.console.log.bind(connection.console);
\r
16 console.error = connection.console.error.bind(connection.console);
\r
17 process.on('unhandledRejection', (e) => {
\r
18 connection.console.error(runner_1.formatError(`Unhandled exception`, e));
\r
20 function getHTTPRequestService() {
\r
22 getContent(uri, _encoding) {
\r
23 const headers = { 'Accept-Encoding': 'gzip, deflate' };
\r
24 return request_light_1.xhr({ url: uri, followRedirects: 5, headers }).then(response => {
\r
25 return response.responseText;
\r
27 return Promise.reject(error.responseText || request_light_1.getErrorStatusDescription(error.status) || error.toString());
\r
32 function getFileRequestService() {
\r
34 getContent(location, encoding) {
\r
35 return new Promise((c, e) => {
\r
36 const uri = vscode_uri_1.URI.parse(location);
\r
37 fs.readFile(uri.fsPath, encoding, (err, buf) => {
\r
47 jsonServer_1.startServer(connection, { file: getFileRequestService(), http: getHTTPRequestService(), configureHttpRequests: request_light_1.configure });
\r
48 //# sourceMappingURL=jsonServerMain.js.map