Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
myhjmzy
code-server
提交
ae43e201
C
code-server
项目概览
myhjmzy
/
code-server
与 Fork 源项目一致
从无法访问的项目Fork
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
code-server
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
ae43e201
编写于
10月 10, 2019
作者:
A
Asher
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Handle up/down on server
上级
3f6cbfa4
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
15 addition
and
6 deletion
+15
-6
src/node/channel.ts
src/node/channel.ts
+6
-4
src/node/server.ts
src/node/server.ts
+9
-2
未找到文件。
src/node/channel.ts
浏览文件 @
ae43e201
...
...
@@ -285,13 +285,15 @@ export class NodeProxyService implements INodeProxyService {
public
readonly
onMessage
=
this
.
_onMessage
.
event
;
private
readonly
_$onMessage
=
new
Emitter
<
string
>
();
public
readonly
$onMessage
=
this
.
_$onMessage
.
event
;
private
readonly
_onClose
=
new
Emitter
<
void
>
();
public
readonly
onClose
=
this
.
_onClose
.
event
;
private
readonly
_onDown
=
new
Emitter
<
void
>
();
public
readonly
_onDown
=
new
Emitter
<
void
>
();
public
readonly
onDown
=
this
.
_onDown
.
event
;
p
rivate
readonly
_onUp
=
new
Emitter
<
void
>
();
p
ublic
readonly
_onUp
=
new
Emitter
<
void
>
();
public
readonly
onUp
=
this
.
_onUp
.
event
;
// Unused because the server connection will never permanently close.
private
readonly
_onClose
=
new
Emitter
<
void
>
();
public
readonly
onClose
=
this
.
_onClose
.
event
;
public
constructor
()
{
// TODO: close/down/up
const
{
Server
}
=
localRequire
<
typeof
import
(
"
@coder/node-browser/out/server/server
"
)
>
(
"
@coder/node-browser/out/server/server
"
);
...
...
src/node/server.ts
浏览文件 @
ae43e201
...
...
@@ -61,7 +61,7 @@ import { ExtensionEnvironmentChannel, FileProviderChannel, NodeProxyService } fr
import
{
Connection
,
ExtensionHostConnection
,
ManagementConnection
}
from
"
vs/server/src/node/connection
"
;
import
{
TelemetryClient
}
from
"
vs/server/src/node/insights
"
;
import
{
getLocaleFromConfig
,
getNlsConfiguration
}
from
"
vs/server/src/node/nls
"
;
import
{
NodeProxyChannel
}
from
"
vs/server/src/common/nodeProxy
"
;
import
{
NodeProxyChannel
,
INodeProxyService
}
from
"
vs/server/src/common/nodeProxy
"
;
import
{
Protocol
}
from
"
vs/server/src/node/protocol
"
;
import
{
TelemetryChannel
}
from
"
vs/server/src/common/telemetry
"
;
import
{
UpdateService
}
from
"
vs/server/src/node/update
"
;
...
...
@@ -621,6 +621,11 @@ export class MainServer extends Server {
this
.
_onDidClientConnect
.
fire
({
protocol
,
onDidClientDisconnect
:
connection
.
onClose
,
});
// NOTE: We can do this because we only have one connection at a
// time but if that changes we need a way to determine which clients
// belong to a connection and dispose only those.
(
this
.
services
.
get
(
INodeProxyService
)
as
NodeProxyService
).
_onUp
.
fire
();
connection
.
onClose
(()
=>
(
this
.
services
.
get
(
INodeProxyService
)
as
NodeProxyService
).
_onDown
.
fire
());
}
else
{
const
buffer
=
protocol
.
readEntireBuffer
();
connection
=
new
ExtensionHostConnection
(
...
...
@@ -695,6 +700,8 @@ export class MainServer extends Server {
const
instantiationService
=
new
InstantiationService
(
this
.
services
);
const
localizationService
=
instantiationService
.
createInstance
(
LocalizationsService
);
this
.
services
.
set
(
ILocalizationsService
,
localizationService
);
const
proxyService
=
instantiationService
.
createInstance
(
NodeProxyService
);
this
.
services
.
set
(
INodeProxyService
,
proxyService
);
this
.
ipc
.
registerChannel
(
"
localizations
"
,
new
LocalizationsChannel
(
localizationService
));
instantiationService
.
invokeFunction
(()
=>
{
instantiationService
.
createInstance
(
LogsDataCleaner
);
...
...
@@ -708,7 +715,7 @@ export class MainServer extends Server {
const
requestChannel
=
new
RequestChannel
(
this
.
services
.
get
(
IRequestService
)
as
IRequestService
);
const
telemetryChannel
=
new
TelemetryChannel
(
telemetryService
);
const
updateChannel
=
new
UpdateChannel
(
instantiationService
.
createInstance
(
UpdateService
));
const
nodeProxyChannel
=
new
NodeProxyChannel
(
instantiationService
.
createInstance
(
NodeProxyService
)
);
const
nodeProxyChannel
=
new
NodeProxyChannel
(
proxyService
);
this
.
ipc
.
registerChannel
(
"
extensions
"
,
extensionsChannel
);
this
.
ipc
.
registerChannel
(
"
remoteextensionsenvironment
"
,
extensionsEnvironmentChannel
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录