'use strict' ; import { inject , injectable } from 'inversify' ; import { Uri } from 'vscode' ; import { IServiceContainer } from '../../ioc/types' ; import { ProcessService } from './proc' ; import { IBufferDecoder , IProcessService , IProcessServiceFactory } from './types' ; @ injectable ( ) export class ProcessServiceFactory implements IProcessServiceFactory { constructor ( @ inject ( IServiceContainer ) private serviceContainer ) { } public async create ( _resource ? ) { const decoder = this . serviceContainer . get < IBufferDecoder > ( IBufferDecoder ) ; return new ProcessService ( decoder ) ; } }