// Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for details. import { Disposable } from "vscode"; import { RequestParams } from "../clientDevice"; import { Request, Response, PartialResponse } from "../networkMessageData"; import { RequestBodyFormatter } from "../requestBodyFormatters/requestBodyFormatter"; import { OutputChannelLogger } from "../../log/OutputChannelLogger"; export enum InspectorViewType { console, } export abstract class InspectorView implements Disposable { protected requestBodyDecoder: RequestBodyFormatter; protected requests: Map; protected responses: Map; protected partialResponses: Map; protected isInitialized: boolean; protected logger: OutputChannelLogger; constructor(logger: OutputChannelLogger) { this.logger = logger; this.requests = new Map(); this.responses = new Map(); this.partialResponses = new Map(); this.isInitialized = false; this.requestBodyDecoder = new RequestBodyFormatter(this.logger); } public dispose(): void {} public abstract init(): Promise; public abstract handleMessage(data: RequestParams): void; }