Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
bfc07456
Commit
bfc07456
authored
Sep 15, 2015
by
Andy Wilkinson
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add test for merging packages from multiple @ServletComponentScans
parent
20da79e9
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
20 additions
and
3 deletions
+20
-3
ServletComponentScanRegistrar.java
...ework/boot/web/servlet/ServletComponentScanRegistrar.java
+2
-3
ServletComponentScanRegistrarTests.java
.../boot/web/servlet/ServletComponentScanRegistrarTests.java
+18
-0
No files found.
spring-boot/src/main/java/org/springframework/boot/web/servlet/ServletComponentScanRegistrar.java
View file @
bfc07456
...
...
@@ -57,10 +57,9 @@ class ServletComponentScanRegistrar implements ImportBeanDefinitionRegistrar {
Set
<
String
>
packagesToScan
)
{
BeanDefinition
definition
=
registry
.
getBeanDefinition
(
BEAN_NAME
);
ValueHolder
constructorArguments
=
definition
.
getConstructorArgumentValues
()
.
getGenericArgumentValue
(
S
tring
[]
.
class
);
.
getGenericArgumentValue
(
S
et
.
class
);
@SuppressWarnings
(
"unchecked"
)
Set
<
String
>
mergedPackages
=
new
LinkedHashSet
<
String
>(
(
Set
<
String
>)
constructorArguments
.
getValue
());
Set
<
String
>
mergedPackages
=
(
Set
<
String
>)
constructorArguments
.
getValue
();
mergedPackages
.
addAll
(
packagesToScan
);
constructorArguments
.
setValue
(
mergedPackages
);
}
...
...
spring-boot/src/test/java/org/springframework/boot/web/servlet/ServletComponentScanRegistrarTests.java
View file @
bfc07456
...
...
@@ -84,6 +84,18 @@ public class ServletComponentScanRegistrarTests {
.
getPackage
().
getName
()));
}
@Test
public
void
packagesFromMultipleAnnotationsAreMerged
()
{
this
.
context
=
new
AnnotationConfigApplicationContext
(
BasePackages
.
class
,
AdditionalPackages
.
class
);
ServletComponentRegisteringPostProcessor
postProcessor
=
this
.
context
.
getBean
(
ServletComponentRegisteringPostProcessor
.
class
);
assertThat
(
postProcessor
.
getPackagesToScan
(),
containsInAnyOrder
(
"com.example.foo"
,
"com.example.bar"
,
"com.example.baz"
));
}
@Configuration
@ServletComponentScan
({
"com.example.foo"
,
"com.example.bar"
})
static
class
ValuePackages
{
...
...
@@ -96,6 +108,12 @@ public class ServletComponentScanRegistrarTests {
}
@Configuration
@ServletComponentScan
(
basePackages
=
"com.example.baz"
)
static
class
AdditionalPackages
{
}
@Configuration
@ServletComponentScan
(
basePackageClasses
=
ServletComponentScanRegistrarTests
.
class
)
static
class
BasePackageClasses
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment