Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_corba
提交
f3490bf6
D
dragonwell8_corba
项目概览
openanolis
/
dragonwell8_corba
通知
2
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_corba
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
f3490bf6
编写于
6月 25, 2015
作者:
A
asaha
浏览文件
操作
浏览文件
下载
差异文件
Merge
上级
54886e9d
ba180e96
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
33 addition
and
2 deletion
+33
-2
src/share/classes/sun/rmi/rmic/iiop/StubGenerator.java
src/share/classes/sun/rmi/rmic/iiop/StubGenerator.java
+33
-2
未找到文件。
src/share/classes/sun/rmi/rmic/iiop/StubGenerator.java
浏览文件 @
f3490bf6
...
...
@@ -446,6 +446,9 @@ public class StubGenerator extends sun.rmi.rmic.iiop.Generator {
if
(
emitPermissionCheck
)
{
// produce the following generated code for example
//
// private transient boolean _instantiated = false;
//
// private static Void checkPermission() {
// SecurityManager sm = System.getSecurityManager();
// if (sm != null) {
...
...
@@ -460,11 +463,21 @@ public class StubGenerator extends sun.rmi.rmic.iiop.Generator {
//
// public _XXXXX_Stub() {
// this(checkPermission());
// _instantiated = true;
// }
//
// private void readObject(java.io.ObjectInputStream s) throws IOException, ClassNotFoundException {
// checkPermission();
// s.defaultReadObject();
// _instantiated = true;
// }
//
// where XXXXX is the name of the remote interface
p
.
pln
();
p
.
plnI
(
"private transient boolean _instantiated = false;"
);
p
.
pln
();
p
.
pO
();
p
.
plnI
(
"private static Void checkPermission() {"
);
p
.
plnI
(
"SecurityManager sm = System.getSecurityManager();"
);
p
.
pln
(
"if (sm != null) {"
);
...
...
@@ -481,13 +494,23 @@ public class StubGenerator extends sun.rmi.rmic.iiop.Generator {
p
.
pO
();
p
.
pI
();
p
.
pln
(
"private "
+
currentClass
+
"(Void ignore) { }"
);
p
.
pln
I
(
"private "
+
currentClass
+
"(Void ignore) { }"
);
p
.
pln
();
p
.
pO
();
p
.
plnI
(
"public "
+
currentClass
+
"() {
"
);
p
.
plnI
(
"public "
+
currentClass
+
"() {"
);
p
.
pln
(
"this(checkPermission());"
);
p
.
pln
(
"_instantiated = true;"
);
p
.
pOln
(
"}"
);
p
.
pln
();
p
.
plnI
(
"private void readObject(java.io.ObjectInputStream s) throws IOException, ClassNotFoundException {"
);
p
.
plnI
(
"checkPermission();"
);
p
.
pO
();
p
.
pln
(
"s.defaultReadObject();"
);
p
.
pln
(
"_instantiated = true;"
);
p
.
pOln
(
"}"
);
p
.
pln
();
//p.pO();
}
if
(!
emitPermissionCheck
)
{
...
...
@@ -894,6 +917,7 @@ public class StubGenerator extends sun.rmi.rmic.iiop.Generator {
String
paramNames
[]
=
method
.
getArgumentNames
();
Type
returnType
=
method
.
getReturnType
();
ValueType
[]
exceptions
=
getStubExceptions
(
method
,
false
);
boolean
hasIOException
=
false
;
addNamesInUse
(
method
);
addNameInUse
(
"_type_ids"
);
...
...
@@ -921,6 +945,13 @@ public class StubGenerator extends sun.rmi.rmic.iiop.Generator {
p
.
plnI
(
" {"
);
// Now create the method body...
if
(
emitPermissionCheck
)
{
p
.
pln
(
"if ((System.getSecurityManager() != null) && (!_instantiated)) {"
);
p
.
plnI
(
" throw new java.io.IOError(new java.io.IOException(\"InvalidObject \"));"
);
p
.
pOln
(
"}"
);
p
.
pln
();
}
if
(
localStubs
)
{
writeLocalStubMethodBody
(
p
,
method
,
theType
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录