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
996472b4
Commit
996472b4
authored
Apr 16, 2021
by
izeye
Committed by
Stephane Nicoll
Apr 19, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Polish
See gh-26145
parent
fea53294
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
18 additions
and
18 deletions
+18
-18
DataSourceHealthContributorAutoConfiguration.java
...re/jdbc/DataSourceHealthContributorAutoConfiguration.java
+11
-11
DataSourceHealthContributorAutoConfigurationTests.java
...bc/DataSourceHealthContributorAutoConfigurationTests.java
+6
-6
ApplicationPluginAction.java
...framework/boot/gradle/plugin/ApplicationPluginAction.java
+1
-1
No files found.
spring-boot-project/spring-boot-actuator-autoconfigure/src/main/java/org/springframework/boot/actuate/autoconfigure/jdbc/DataSourceHealthContributorAutoConfiguration.java
View file @
996472b4
...
...
@@ -71,13 +71,13 @@ public class DataSourceHealthContributorAutoConfiguration implements Initializin
private
DataSourcePoolMetadataProvider
poolMetadataProvider
;
public
DataSourceHealthContributorAutoConfiguration
(
Map
<
String
,
DataSource
>
dataSources
,
public
DataSourceHealthContributorAutoConfiguration
(
ObjectProvider
<
DataSourcePoolMetadataProvider
>
metadataProviders
)
{
this
.
metadataProviders
=
metadataProviders
.
orderedStream
().
collect
(
Collectors
.
toList
());
}
@Override
public
void
afterPropertiesSet
()
throws
Exception
{
public
void
afterPropertiesSet
()
{
this
.
poolMetadataProvider
=
new
CompositeDataSourcePoolMetadataProvider
(
this
.
metadataProviders
);
}
...
...
@@ -97,15 +97,15 @@ public class DataSourceHealthContributorAutoConfiguration implements Initializin
private
HealthContributor
createContributor
(
Map
<
String
,
DataSource
>
beans
)
{
Assert
.
notEmpty
(
beans
,
"Beans must not be empty"
);
if
(
beans
.
size
()
==
1
)
{
return
create
Indica
tor
(
beans
.
values
().
iterator
().
next
());
return
create
Contribu
tor
(
beans
.
values
().
iterator
().
next
());
}
return
CompositeHealthContributor
.
fromMap
(
beans
,
this
::
create
Indica
tor
);
return
CompositeHealthContributor
.
fromMap
(
beans
,
this
::
create
Contribu
tor
);
}
private
HealthContributor
create
Indica
tor
(
DataSource
source
)
{
private
HealthContributor
create
Contribu
tor
(
DataSource
source
)
{
if
(
source
instanceof
AbstractRoutingDataSource
)
{
AbstractRoutingDataSource
routingDataSource
=
(
AbstractRoutingDataSource
)
source
;
return
new
RoutingDataSourceHealth
Indicator
(
routingDataSource
,
this
::
createIndica
tor
);
return
new
RoutingDataSourceHealth
Contributor
(
routingDataSource
,
this
::
createContribu
tor
);
}
return
new
DataSourceHealthIndicator
(
source
,
getValidationQuery
(
source
));
}
...
...
@@ -120,15 +120,15 @@ public class DataSourceHealthContributorAutoConfiguration implements Initializin
* where the overall health is composed of a {@link DataSourceHealthIndicator} for
* each routed datasource.
*/
static
class
RoutingDataSourceHealth
Indica
tor
implements
CompositeHealthContributor
{
static
class
RoutingDataSourceHealth
Contribu
tor
implements
CompositeHealthContributor
{
private
CompositeHealthContributor
delegate
;
private
final
CompositeHealthContributor
delegate
;
RoutingDataSourceHealth
Indica
tor
(
AbstractRoutingDataSource
routingDataSource
,
Function
<
DataSource
,
HealthContributor
>
indica
torFunction
)
{
RoutingDataSourceHealth
Contribu
tor
(
AbstractRoutingDataSource
routingDataSource
,
Function
<
DataSource
,
HealthContributor
>
contribu
torFunction
)
{
Map
<
String
,
DataSource
>
routedDataSources
=
routingDataSource
.
getResolvedDataSources
().
entrySet
().
stream
()
.
collect
(
Collectors
.
toMap
((
e
)
->
e
.
getKey
().
toString
(),
Map
.
Entry
::
getValue
));
this
.
delegate
=
CompositeHealthContributor
.
fromMap
(
routedDataSources
,
indica
torFunction
);
this
.
delegate
=
CompositeHealthContributor
.
fromMap
(
routedDataSources
,
contribu
torFunction
);
}
@Override
...
...
spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/jdbc/DataSourceHealthContributorAutoConfigurationTests.java
View file @
996472b4
...
...
@@ -24,7 +24,7 @@ import javax.sql.DataSource;
import
org.junit.jupiter.api.Test
;
import
org.springframework.boot.actuate.autoconfigure.health.HealthContributorAutoConfiguration
;
import
org.springframework.boot.actuate.autoconfigure.jdbc.DataSourceHealthContributorAutoConfiguration.RoutingDataSourceHealth
Indica
tor
;
import
org.springframework.boot.actuate.autoconfigure.jdbc.DataSourceHealthContributorAutoConfiguration.RoutingDataSourceHealth
Contribu
tor
;
import
org.springframework.boot.actuate.health.CompositeHealthContributor
;
import
org.springframework.boot.actuate.health.NamedContributor
;
import
org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator
;
...
...
@@ -82,7 +82,7 @@ class DataSourceHealthContributorAutoConfigurationTests {
CompositeHealthContributor
composite
=
context
.
getBean
(
CompositeHealthContributor
.
class
);
assertThat
(
composite
.
getContributor
(
"dataSource"
)).
isInstanceOf
(
DataSourceHealthIndicator
.
class
);
assertThat
(
composite
.
getContributor
(
"routingDataSource"
))
.
isInstanceOf
(
RoutingDataSourceHealth
Indica
tor
.
class
);
.
isInstanceOf
(
RoutingDataSourceHealth
Contribu
tor
.
class
);
});
}
...
...
@@ -92,16 +92,16 @@ class DataSourceHealthContributorAutoConfigurationTests {
.
withPropertyValues
(
"management.health.db.ignore-routing-datasources:true"
).
run
((
context
)
->
{
assertThat
(
context
).
doesNotHaveBean
(
CompositeHealthContributor
.
class
);
assertThat
(
context
).
hasSingleBean
(
DataSourceHealthIndicator
.
class
);
assertThat
(
context
).
doesNotHaveBean
(
RoutingDataSourceHealth
Indica
tor
.
class
);
assertThat
(
context
).
doesNotHaveBean
(
RoutingDataSourceHealth
Contribu
tor
.
class
);
});
}
@Test
void
runWithOnlyRoutingDataSourceShouldIncludeRoutingDataSourceWithComposedIndicators
()
{
this
.
contextRunner
.
withUserConfiguration
(
RoutingDataSourceConfig
.
class
).
run
((
context
)
->
{
assertThat
(
context
).
hasSingleBean
(
RoutingDataSourceHealth
Indica
tor
.
class
);
RoutingDataSourceHealth
Indica
tor
routingHealthContributor
=
context
.
getBean
(
RoutingDataSourceHealth
Indica
tor
.
class
);
assertThat
(
context
).
hasSingleBean
(
RoutingDataSourceHealth
Contribu
tor
.
class
);
RoutingDataSourceHealth
Contribu
tor
routingHealthContributor
=
context
.
getBean
(
RoutingDataSourceHealth
Contribu
tor
.
class
);
assertThat
(
routingHealthContributor
.
getContributor
(
"one"
)).
isInstanceOf
(
DataSourceHealthIndicator
.
class
);
assertThat
(
routingHealthContributor
.
getContributor
(
"two"
)).
isInstanceOf
(
DataSourceHealthIndicator
.
class
);
assertThat
(
routingHealthContributor
.
iterator
()).
toIterable
().
extracting
(
"name"
)
...
...
spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/plugin/ApplicationPluginAction.java
View file @
996472b4
...
...
@@ -128,7 +128,7 @@ final class ApplicationPluginAction implements PluginApplicationAction {
private
String
loadResource
(
String
name
)
{
try
(
InputStreamReader
reader
=
new
InputStreamReader
(
getClass
().
getResourceAsStream
(
name
)))
{
char
[]
buffer
=
new
char
[
4096
];
int
read
=
0
;
int
read
;
StringWriter
writer
=
new
StringWriter
();
while
((
read
=
reader
.
read
(
buffer
))
>
0
)
{
writer
.
write
(
buffer
,
0
,
read
);
...
...
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