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
b8ad9537
Commit
b8ad9537
authored
Jul 13, 2016
by
Andy Wilkinson
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch '1.3.x
parents
91df7498
68fb5789
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
38 additions
and
0 deletions
+38
-0
SpringApplicationAdminJmxAutoConfiguration.java
...ure/admin/SpringApplicationAdminJmxAutoConfiguration.java
+3
-0
SpringApplicationAdminJmxAutoConfigurationTests.java
...dmin/SpringApplicationAdminJmxAutoConfigurationTests.java
+35
-0
No files found.
spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/admin/SpringApplicationAdminJmxAutoConfiguration.java
View file @
b8ad9537
...
@@ -22,6 +22,7 @@ import org.springframework.beans.factory.ObjectProvider;
...
@@ -22,6 +22,7 @@ import org.springframework.beans.factory.ObjectProvider;
import
org.springframework.boot.admin.SpringApplicationAdminMXBean
;
import
org.springframework.boot.admin.SpringApplicationAdminMXBean
;
import
org.springframework.boot.admin.SpringApplicationAdminMXBeanRegistrar
;
import
org.springframework.boot.admin.SpringApplicationAdminMXBeanRegistrar
;
import
org.springframework.boot.autoconfigure.AutoConfigureAfter
;
import
org.springframework.boot.autoconfigure.AutoConfigureAfter
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.boot.autoconfigure.jmx.JmxAutoConfiguration
;
import
org.springframework.boot.autoconfigure.jmx.JmxAutoConfiguration
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Bean
;
...
@@ -34,6 +35,7 @@ import org.springframework.jmx.export.MBeanExporter;
...
@@ -34,6 +35,7 @@ import org.springframework.jmx.export.MBeanExporter;
* for internal use only.
* for internal use only.
*
*
* @author Stephane Nicoll
* @author Stephane Nicoll
* @author Andy Wilkinson
* @since 1.3.0
* @since 1.3.0
* @see SpringApplicationAdminMXBean
* @see SpringApplicationAdminMXBean
*/
*/
...
@@ -65,6 +67,7 @@ public class SpringApplicationAdminJmxAutoConfiguration {
...
@@ -65,6 +67,7 @@ public class SpringApplicationAdminJmxAutoConfiguration {
}
}
@Bean
@Bean
@ConditionalOnMissingBean
public
SpringApplicationAdminMXBeanRegistrar
springApplicationAdminRegistrar
()
public
SpringApplicationAdminMXBeanRegistrar
springApplicationAdminRegistrar
()
throws
MalformedObjectNameException
{
throws
MalformedObjectNameException
{
String
jmxName
=
this
.
environment
.
getProperty
(
JMX_NAME_PROPERTY
,
String
jmxName
=
this
.
environment
.
getProperty
(
JMX_NAME_PROPERTY
,
...
...
spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/admin/SpringApplicationAdminJmxAutoConfigurationTests.java
View file @
b8ad9537
...
@@ -30,6 +30,9 @@ import org.junit.Rule;
...
@@ -30,6 +30,9 @@ import org.junit.Rule;
import
org.junit.Test
;
import
org.junit.Test
;
import
org.junit.rules.ExpectedException
;
import
org.junit.rules.ExpectedException
;
import
org.springframework.beans.factory.BeanFactoryUtils
;
import
org.springframework.beans.factory.NoSuchBeanDefinitionException
;
import
org.springframework.boot.admin.SpringApplicationAdminMXBeanRegistrar
;
import
org.springframework.boot.autoconfigure.jmx.JmxAutoConfiguration
;
import
org.springframework.boot.autoconfigure.jmx.JmxAutoConfiguration
;
import
org.springframework.boot.autoconfigure.web.DispatcherServletAutoConfiguration
;
import
org.springframework.boot.autoconfigure.web.DispatcherServletAutoConfiguration
;
import
org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoConfiguration
;
import
org.springframework.boot.autoconfigure.web.EmbeddedServletContainerAutoConfiguration
;
...
@@ -47,6 +50,7 @@ import static org.junit.Assert.fail;
...
@@ -47,6 +50,7 @@ import static org.junit.Assert.fail;
* Tests for {@link SpringApplicationAdminJmxAutoConfiguration}.
* Tests for {@link SpringApplicationAdminJmxAutoConfiguration}.
*
*
* @author Stephane Nicoll
* @author Stephane Nicoll
* @author Andy Wilkinson
*/
*/
public
class
SpringApplicationAdminJmxAutoConfigurationTests
{
public
class
SpringApplicationAdminJmxAutoConfigurationTests
{
...
@@ -130,6 +134,37 @@ public class SpringApplicationAdminJmxAutoConfigurationTests {
...
@@ -130,6 +134,37 @@ public class SpringApplicationAdminJmxAutoConfigurationTests {
assertThat
(
actual
).
isEqualTo
(
String
.
valueOf
(
expected
));
assertThat
(
actual
).
isEqualTo
(
String
.
valueOf
(
expected
));
}
}
@Test
public
void
onlyRegisteredOnceWhenThereIsAChildContext
()
throws
Exception
{
SpringApplicationBuilder
parentBuilder
=
new
SpringApplicationBuilder
().
web
(
false
)
.
sources
(
JmxAutoConfiguration
.
class
,
SpringApplicationAdminJmxAutoConfiguration
.
class
);
SpringApplicationBuilder
childBuilder
=
parentBuilder
.
child
(
JmxAutoConfiguration
.
class
,
SpringApplicationAdminJmxAutoConfiguration
.
class
)
.
web
(
false
);
ConfigurableApplicationContext
parent
=
null
;
ConfigurableApplicationContext
child
=
null
;
try
{
parent
=
parentBuilder
.
run
(
"--"
+
ENABLE_ADMIN_PROP
);
child
=
childBuilder
.
run
(
"--"
+
ENABLE_ADMIN_PROP
);
BeanFactoryUtils
.
beanOfType
(
parent
.
getBeanFactory
(),
SpringApplicationAdminMXBeanRegistrar
.
class
);
this
.
thrown
.
expect
(
NoSuchBeanDefinitionException
.
class
);
BeanFactoryUtils
.
beanOfType
(
child
.
getBeanFactory
(),
SpringApplicationAdminMXBeanRegistrar
.
class
);
}
finally
{
if
(
parent
!=
null
)
{
parent
.
close
();
}
if
(
child
!=
null
)
{
child
.
close
();
}
}
}
private
ObjectName
createDefaultObjectName
()
{
private
ObjectName
createDefaultObjectName
()
{
return
createObjectName
(
DEFAULT_JMX_NAME
);
return
createObjectName
(
DEFAULT_JMX_NAME
);
}
}
...
...
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