Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
WLHYW
vscode
提交
4b5a9c4b
V
vscode
项目概览
WLHYW
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
4b5a9c4b
编写于
1月 28, 2021
作者:
S
Sandeep Somavarapu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
change remote cli to manage only remtoe
上级
7a9e5651
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
42 addition
and
8 deletion
+42
-8
src/vs/platform/extensionManagement/common/extensionManagementCLIService.ts
...tensionManagement/common/extensionManagementCLIService.ts
+8
-0
src/vs/workbench/api/browser/mainThreadCLICommands.ts
src/vs/workbench/api/browser/mainThreadCLICommands.ts
+12
-3
src/vs/workbench/services/extensionManagement/common/extensionManagementService.ts
.../extensionManagement/common/extensionManagementService.ts
+21
-2
src/vs/workbench/workbench.common.main.ts
src/vs/workbench/workbench.common.main.ts
+1
-3
未找到文件。
src/vs/platform/extensionManagement/common/extensionManagementCLIService.ts
浏览文件 @
4b5a9c4b
...
...
@@ -232,6 +232,10 @@ export class ExtensionManagementCLIService implements IExtensionManagementCLISer
}
else
{
output
.
log
(
localize
(
'
installing
'
,
"
Installing extension '{0}' v{1}...
"
,
id
,
galleryExtension
.
version
));
}
if
(
!
this
.
canInstall
(
manifest
!
))
{
output
.
log
(
localize
(
'
cannot install
'
,
"
Cannot install extension '{0}'.
"
,
id
));
return
null
;
}
await
this
.
extensionManagementService
.
installFromGallery
(
galleryExtension
,
installOptions
);
output
.
log
(
localize
(
'
successInstall
'
,
"
Extension '{0}' v{1} was successfully installed.
"
,
id
,
galleryExtension
.
version
));
return
manifest
;
...
...
@@ -245,6 +249,10 @@ export class ExtensionManagementCLIService implements IExtensionManagementCLISer
}
}
protected
canInstall
(
manifest
:
IExtensionManifest
):
boolean
{
return
true
;
}
private
async
validate
(
manifest
:
IExtensionManifest
,
force
:
boolean
,
output
:
CLIOutput
):
Promise
<
boolean
>
{
if
(
!
manifest
)
{
throw
new
Error
(
'
Invalid vsix
'
);
...
...
src/vs/workbench/api/browser/mainThreadCLICommands.ts
浏览文件 @
4b5a9c4b
...
...
@@ -6,9 +6,12 @@
import
{
isString
}
from
'
vs/base/common/types
'
;
import
{
URI
,
UriComponents
}
from
'
vs/base/common/uri
'
;
import
{
CommandsRegistry
}
from
'
vs/platform/commands/common/commands
'
;
import
{
IExtensionManagementCLIService
}
from
'
vs/platform/extensionManagement/common/extensionManagement
'
;
import
{
ServicesAccessor
}
from
'
vs/platform/instantiation/common/instantiation
'
;
import
{
IExtensionManagementService
}
from
'
vs/platform/extensionManagement/common/extensionManagement
'
;
import
{
IInstantiationService
,
ServicesAccessor
}
from
'
vs/platform/instantiation/common/instantiation
'
;
import
{
ServiceCollection
}
from
'
vs/platform/instantiation/common/serviceCollection
'
;
import
{
IOpenerService
}
from
'
vs/platform/opener/common/opener
'
;
import
{
IExtensionManagementServerService
}
from
'
vs/workbench/services/extensionManagement/common/extensionManagement
'
;
import
{
RemoteExtensionCLIManagementService
}
from
'
vs/workbench/services/extensionManagement/common/extensionManagementService
'
;
// this class contains the command that the CLI server is reying on
...
...
@@ -28,7 +31,13 @@ interface ManageExtensionsArgs {
CommandsRegistry
.
registerCommand
(
'
_remoteCLI.manageExtensions
'
,
async
function
(
accessor
:
ServicesAccessor
,
args
:
ManageExtensionsArgs
)
{
const
cliService
=
accessor
.
get
(
IExtensionManagementCLIService
);
const
instantiationService
=
accessor
.
get
(
IInstantiationService
);
const
extensionManagementServerService
=
accessor
.
get
(
IExtensionManagementServerService
);
if
(
!
extensionManagementServerService
.
remoteExtensionManagementServer
)
{
return
;
}
const
cliService
=
instantiationService
.
createChild
(
new
ServiceCollection
([
IExtensionManagementService
,
extensionManagementServerService
.
remoteExtensionManagementServer
.
extensionManagementService
])).
createInstance
(
RemoteExtensionCLIManagementService
);
const
lines
:
string
[]
=
[];
const
output
=
{
log
:
lines
.
push
.
bind
(
lines
),
error
:
lines
.
push
.
bind
(
lines
)
};
...
...
src/vs/workbench/services/extensionManagement/common/extensionManagementService.ts
浏览文件 @
4b5a9c4b
...
...
@@ -5,7 +5,7 @@
import
{
Event
,
EventMultiplexer
}
from
'
vs/base/common/event
'
;
import
{
ILocalExtension
,
IGalleryExtension
,
InstallExtensionEvent
,
DidInstallExtensionEvent
,
IExtensionIdentifier
,
DidUninstallExtensionEvent
,
IReportedExtension
,
IGalleryMetadata
,
IExtensionGalleryService
,
INSTALL_ERROR_NOT_SUPPORTED
,
InstallOptions
,
UninstallOptions
ILocalExtension
,
IGalleryExtension
,
InstallExtensionEvent
,
DidInstallExtensionEvent
,
IExtensionIdentifier
,
DidUninstallExtensionEvent
,
IReportedExtension
,
IGalleryMetadata
,
IExtensionGalleryService
,
INSTALL_ERROR_NOT_SUPPORTED
,
InstallOptions
,
UninstallOptions
,
IExtensionManagementService
}
from
'
vs/platform/extensionManagement/common/extensionManagement
'
;
import
{
IExtensionManagementServer
,
IExtensionManagementServerService
,
IWorkbenchExtensioManagementService
}
from
'
vs/workbench/services/extensionManagement/common/extensionManagement
'
;
import
{
ExtensionType
,
isLanguagePackExtension
,
IExtensionManifest
}
from
'
vs/platform/extensions/common/extensions
'
;
...
...
@@ -15,7 +15,7 @@ import { IConfigurationService } from 'vs/platform/configuration/common/configur
import
{
CancellationToken
}
from
'
vs/base/common/cancellation
'
;
import
{
areSameExtensions
}
from
'
vs/platform/extensionManagement/common/extensionManagementUtil
'
;
import
{
localize
}
from
'
vs/nls
'
;
import
{
prefersExecuteOnUI
,
getExtensionKind
}
from
'
vs/workbench/services/extensions/common/extensionsUtil
'
;
import
{
prefersExecuteOnUI
,
getExtensionKind
,
canExecuteOnWorkspace
}
from
'
vs/workbench/services/extensions/common/extensionsUtil
'
;
import
{
IProductService
}
from
'
vs/platform/product/common/productService
'
;
import
{
Schemas
}
from
'
vs/base/common/network
'
;
import
{
IDownloadService
}
from
'
vs/platform/download/common/download
'
;
...
...
@@ -24,6 +24,8 @@ import { IDialogService } from 'vs/platform/dialogs/common/dialogs';
import
Severity
from
'
vs/base/common/severity
'
;
import
{
canceled
}
from
'
vs/base/common/errors
'
;
import
{
IUserDataAutoSyncEnablementService
,
IUserDataSyncResourceEnablementService
,
SyncResource
}
from
'
vs/platform/userDataSync/common/userDataSync
'
;
import
{
ExtensionManagementCLIService
}
from
'
vs/platform/extensionManagement/common/extensionManagementCLIService
'
;
import
{
ILocalizationsService
}
from
'
vs/platform/localizations/common/localizations
'
;
export
class
ExtensionManagementService
extends
Disposable
implements
IWorkbenchExtensioManagementService
{
...
...
@@ -348,3 +350,20 @@ export class ExtensionManagementService extends Disposable implements IWorkbench
return
this
.
extensionManagementServerService
.
getExtensionManagementServer
(
extension
);
}
}
export
class
RemoteExtensionCLIManagementService
extends
ExtensionManagementCLIService
{
constructor
(
@
IExtensionManagementService
extensionManagementService
:
IExtensionManagementService
,
@
IProductService
private
readonly
productService
:
IProductService
,
@
IConfigurationService
private
readonly
configurationService
:
IConfigurationService
,
@
IExtensionGalleryService
extensionGalleryService
:
IExtensionGalleryService
,
@
ILocalizationsService
localizationsService
:
ILocalizationsService
,
)
{
super
(
extensionManagementService
,
extensionGalleryService
,
localizationsService
);
}
canInstall
(
manifest
:
IExtensionManifest
):
boolean
{
return
canExecuteOnWorkspace
(
manifest
,
this
.
productService
,
this
.
configurationService
);
}
}
src/vs/workbench/workbench.common.main.ts
浏览文件 @
4b5a9c4b
...
...
@@ -93,9 +93,8 @@ import 'vs/workbench/services/outline/browser/outlineService';
import
{
registerSingleton
}
from
'
vs/platform/instantiation/common/extensions
'
;
import
{
ExtensionGalleryService
}
from
'
vs/platform/extensionManagement/common/extensionGalleryService
'
;
import
{
ExtensionManagementCLIService
}
from
'
vs/platform/extensionManagement/common/extensionManagementCLIService
'
;
import
{
GlobalExtensionEnablementService
}
from
'
vs/platform/extensionManagement/common/extensionEnablementService
'
;
import
{
IExtensionGalleryService
,
I
ExtensionManagementCLIService
,
I
GlobalExtensionEnablementService
}
from
'
vs/platform/extensionManagement/common/extensionManagement
'
;
import
{
IExtensionGalleryService
,
IGlobalExtensionEnablementService
}
from
'
vs/platform/extensionManagement/common/extensionManagement
'
;
import
{
ContextViewService
}
from
'
vs/platform/contextview/browser/contextViewService
'
;
import
{
IContextViewService
}
from
'
vs/platform/contextview/browser/contextView
'
;
import
{
IListService
,
ListService
}
from
'
vs/platform/list/browser/listService
'
;
...
...
@@ -127,7 +126,6 @@ registerSingleton(IIgnoredExtensionsManagementService, IgnoredExtensionsManageme
registerSingleton
(
IGlobalExtensionEnablementService
,
GlobalExtensionEnablementService
);
registerSingleton
(
IExtensionsStorageSyncService
,
ExtensionsStorageSyncService
);
registerSingleton
(
IExtensionGalleryService
,
ExtensionGalleryService
,
true
);
registerSingleton
(
IExtensionManagementCLIService
,
ExtensionManagementCLIService
);
registerSingleton
(
IContextViewService
,
ContextViewService
,
true
);
registerSingleton
(
IListService
,
ListService
,
true
);
registerSingleton
(
IEditorWorkerService
,
EditorWorkerServiceImpl
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录