Skip to content

Commit c76a7e6

Browse files
committed
remove request handler api and make web request service self registerable
1 parent 1b79be4 commit c76a7e6

File tree

4 files changed

+6
-19
lines changed

4 files changed

+6
-19
lines changed

src/vs/workbench/browser/web.main.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,6 @@ import { joinPath } from 'vs/base/common/resources';
4040
import { BrowserStorageService } from 'vs/platform/storage/browser/storageService';
4141
import { IStorageService } from 'vs/platform/storage/common/storage';
4242
import { getThemeTypeSelector, DARK, HIGH_CONTRAST, LIGHT } from 'vs/platform/theme/common/themeService';
43-
import { IRequestService } from 'vs/platform/request/common/request';
44-
import { RequestService } from 'vs/workbench/services/request/browser/requestService';
4543
import { InMemoryUserDataProvider } from 'vs/workbench/services/userData/common/inMemoryUserDataProvider';
4644

4745
class CodeRendererMain extends Disposable {
@@ -170,7 +168,7 @@ class CodeRendererMain extends Disposable {
170168
// User Data Provider
171169
fileService.registerProvider(Schemas.userData, userDataProvider);
172170

173-
const [configurationService, storageService] = await Promise.all([
171+
const services = await Promise.all([
174172
this.createWorkspaceService(payload, environmentService, fileService, remoteAgentService, logService).then(service => {
175173

176174
// Workspace
@@ -191,10 +189,7 @@ class CodeRendererMain extends Disposable {
191189
})
192190
]);
193191

194-
// Request Service
195-
serviceCollection.set(IRequestService, new RequestService(this.configuration.requestHandler, remoteAgentService, configurationService, logService));
196-
197-
return { serviceCollection, logService, storageService };
192+
return { serviceCollection, logService, storageService: services[1] };
198193
}
199194

200195
private async createStorageService(payload: IWorkspaceInitializationPayload, environmentService: IWorkbenchEnvironmentService, fileService: IFileService, logService: ILogService): Promise<BrowserStorageService> {

src/vs/workbench/services/request/browser/requestService.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ export class RequestService extends BrowserRequestService {
1616
private readonly remoteRequestChannel: RequestChannelClient | null;
1717

1818
constructor(
19-
private readonly requestHandler: ((options: IRequestOptions) => Promise<IRequestContext>) | undefined,
2019
@IRemoteAgentService remoteAgentService: IRemoteAgentService,
2120
@IConfigurationService configurationService: IConfigurationService,
2221
@ILogService logService: ILogService
@@ -27,9 +26,6 @@ export class RequestService extends BrowserRequestService {
2726
}
2827

2928
async request(options: IRequestOptions, token: CancellationToken): Promise<IRequestContext> {
30-
if (this.requestHandler) {
31-
return this.requestHandler(options);
32-
}
3329
try {
3430
const context = await super.request(options, token);
3531
if (this.remoteRequestChannel && context.res.statusCode === 405) {
@@ -45,4 +41,4 @@ export class RequestService extends BrowserRequestService {
4541
}
4642
}
4743

48-
}
44+
}

src/vs/workbench/workbench.web.api.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import 'vs/workbench/workbench.web.main';
77
import { main } from 'vs/workbench/browser/web.main';
88
import { UriComponents } from 'vs/base/common/uri';
99
import { IFileSystemProvider } from 'vs/platform/files/common/files';
10-
import { IRequestOptions, IRequestContext } from 'vs/platform/request/common/request';
1110
import { IWebSocketFactory } from 'vs/platform/remote/browser/browserSocketFactory';
1211

1312
export interface IWorkbenchConstructionOptions {
@@ -45,12 +44,6 @@ export interface IWorkbenchConstructionOptions {
4544
*/
4645
userDataProvider?: IFileSystemProvider;
4746

48-
/**
49-
* Experimental: Optional request handler to handle http requests.
50-
* In case not provided, workbench uses <code>XMLHttpRequest</code>.
51-
*/
52-
requestHandler?: (requestOptions: IRequestOptions) => Promise<IRequestContext>;
53-
5447
/**
5548
* A factory for web sockets.
5649
*/

src/vs/workbench/workbench.web.main.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ import 'vs/workbench/services/configurationResolver/browser/configurationResolve
3838
import 'vs/workbench/browser/web.simpleservices';
3939

4040
import { registerSingleton } from 'vs/platform/instantiation/common/extensions';
41+
import { IRequestService } from 'vs/platform/request/common/request';
42+
import { RequestService } from 'vs/workbench/services/request/browser/requestService';
4143
import { IClipboardService } from 'vs/platform/clipboard/common/clipboardService';
4244
import { BrowserClipboardService } from 'vs/platform/clipboard/browser/clipboardService';
4345
import { IAccessibilityService } from 'vs/platform/accessibility/common/accessibility';
@@ -53,6 +55,7 @@ import { IBackupFileService } from 'vs/workbench/services/backup/common/backup';
5355
import { BackupFileService } from 'vs/workbench/services/backup/common/backupFileService';
5456
import { ExtensionManagementService } from 'vs/workbench/services/extensionManagement/common/extensionManagementService';
5557

58+
registerSingleton(IRequestService, RequestService, true);
5659
registerSingleton(IExtensionManagementService, ExtensionManagementService);
5760
registerSingleton(IBackupFileService, BackupFileService);
5861
registerSingleton(IDialogService, DialogService, true);

0 commit comments

Comments
 (0)