Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
dk131072
spring-framework
提交
744facbf
S
spring-framework
项目概览
dk131072
/
spring-framework
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
spring-framework
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
744facbf
编写于
4月 03, 2011
作者:
S
Sam Brannen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[SPR-6184] Simplified AnnotationConfigContextLoader in TestContext.
上级
dd4d6e63
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
20 addition
and
18 deletion
+20
-18
org.springframework.test/src/main/java/org/springframework/test/context/TestContext.java
...in/java/org/springframework/test/context/TestContext.java
+20
-18
未找到文件。
org.springframework.test/src/main/java/org/springframework/test/context/TestContext.java
浏览文件 @
744facbf
...
...
@@ -236,39 +236,41 @@ public class TestContext extends AttributeAccessorSupport {
Assert
.
notNull
(
declaringClass
,
"Could not find an 'annotation declaring class' for annotation type ["
+
annotationType
+
"] and class ["
+
clazz
+
"]"
);
// --- configuration class resources ----------------------------
// TODO [SPR-6184] Implement recursive search for configuration classes.
// This needs to integrate seamlessly (i.e., analogous yet mutually
// exclusive) with the existing locations search.
ContextConfiguration
cc
=
declaringClass
.
getAnnotation
(
annotationType
);
if
(
cc
!=
null
)
{
// exclusive) with the existing locations search. Furthermore, the
// solution must not depend on an explicit ACCL check.
if
(
contextLoader
instanceof
AnnotationConfigContextLoader
)
{
ContextConfiguration
cc
=
declaringClass
.
getAnnotation
(
annotationType
);
if
(
logger
.
isTraceEnabled
())
{
logger
.
trace
(
"Retrieved @ContextConfiguration ["
+
cc
+
"] for declaring class ["
+
declaringClass
+
"]"
);
logger
.
trace
(
String
.
format
(
"Retrieved @ContextConfiguration [%s] for declaring class [%s]."
,
cc
,
declaringClass
)
);
}
Class
<?>[]
configClasses
=
cc
.
classes
()
;
String
[]
classNames
=
null
;
Class
<?>[]
configClasses
=
cc
.
classes
();
if
(!
ObjectUtils
.
isEmpty
(
configClasses
))
{
for
(
Class
<?>
configClass
:
configClasses
)
{
locationsList
.
add
(
configClass
.
getName
());
classNames
=
new
String
[
configClasses
.
length
];
for
(
int
i
=
0
;
i
<
configClasses
.
length
;
i
++)
{
classNames
[
i
]
=
configClasses
[
i
].
getName
();
}
return
locationsList
.
toArray
(
new
String
[
locationsList
.
size
()]);
}
// TODO [SPR-6184] Remove interim-solution ACCL check.
//
// Config classes are not defined, but the context loader might
// have been set to AnnotationConfigContextLoader.
if
(
AnnotationConfigContextLoader
.
class
.
isAssignableFrom
(
cc
.
loader
()))
{
return
contextLoader
.
processLocations
(
declaringClass
,
new
String
[]
{});
}
return
contextLoader
.
processLocations
(
declaringClass
,
classNames
);
}
// --- location/value resources ---------------------------------
while
(
declaringClass
!=
null
)
{
ContextConfiguration
contextConfiguration
=
declaringClass
.
getAnnotation
(
annotationType
);
if
(
logger
.
isTraceEnabled
())
{
logger
.
trace
(
"Retrieved @ContextConfiguration ["
+
contextConfiguration
+
"] for declaring class ["
+
declaringClass
+
"]"
);
logger
.
trace
(
String
.
format
(
"Retrieved @ContextConfiguration [%s] for declaring class [%s]."
,
contextConfiguration
,
declaringClass
)
);
}
String
[]
valueLocations
=
contextConfiguration
.
value
();
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录