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
4143c31f
Commit
4143c31f
authored
Aug 26, 2020
by
Andy Wilkinson
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch '2.2.x' into 2.3.x
Closes gh-23087
parents
f42da161
eba2bc3c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
77 additions
and
2 deletions
+77
-2
RSocketPortInfoApplicationContextInitializer.java
...context/RSocketPortInfoApplicationContextInitializer.java
+4
-2
RSocketPortInfoApplicationContextInitializerTests.java
...xt/RSocketPortInfoApplicationContextInitializerTests.java
+73
-0
No files found.
spring-boot-project/spring-boot/src/main/java/org/springframework/boot/rsocket/context/RSocketPortInfoApplicationContextInitializer.java
View file @
4143c31f
/*
/*
* Copyright 2012-20
19
the original author or authors.
* Copyright 2012-20
20
the original author or authors.
*
*
* Licensed under the Apache License, Version 2.0 (the "License");
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* you may not use this file except in compliance with the License.
...
@@ -63,7 +63,9 @@ public class RSocketPortInfoApplicationContextInitializer
...
@@ -63,7 +63,9 @@ public class RSocketPortInfoApplicationContextInitializer
@Override
@Override
public
void
onApplicationEvent
(
RSocketServerInitializedEvent
event
)
{
public
void
onApplicationEvent
(
RSocketServerInitializedEvent
event
)
{
setPortProperty
(
this
.
applicationContext
,
event
.
getServer
().
address
().
getPort
());
if
(
event
.
getServer
().
address
()
!=
null
)
{
setPortProperty
(
this
.
applicationContext
,
event
.
getServer
().
address
().
getPort
());
}
}
}
private
void
setPortProperty
(
ApplicationContext
context
,
int
port
)
{
private
void
setPortProperty
(
ApplicationContext
context
,
int
port
)
{
...
...
spring-boot-project/spring-boot/src/test/java/org/springframework/boot/rsocket/context/RSocketPortInfoApplicationContextInitializerTests.java
0 → 100644
View file @
4143c31f
/*
* Copyright 2012-2020 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package
org
.
springframework
.
boot
.
rsocket
.
context
;
import
java.net.InetSocketAddress
;
import
org.junit.jupiter.api.Test
;
import
org.springframework.boot.rsocket.server.RSocketServer
;
import
org.springframework.context.ConfigurableApplicationContext
;
import
org.springframework.context.annotation.AnnotationConfigApplicationContext
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
static
org
.
assertj
.
core
.
api
.
Assertions
.
assertThat
;
import
static
org
.
mockito
.
BDDMockito
.
given
;
import
static
org
.
mockito
.
Mockito
.
mock
;
import
static
org
.
mockito
.
Mockito
.
verify
;
/**
* Tests for {@link RSocketPortInfoApplicationContextInitializer}.
*
* @author Spencer Gibb
* @author Andy Wilkinson
*/
class
RSocketPortInfoApplicationContextInitializerTests
{
@Test
void
whenServerHasAddressThenInitializerSetsPortProperty
()
{
try
(
ConfigurableApplicationContext
context
=
new
AnnotationConfigApplicationContext
(
Config
.
class
))
{
context
.
getBean
(
RSocketPortInfoApplicationContextInitializer
.
class
).
initialize
(
context
);
RSocketServer
server
=
mock
(
RSocketServer
.
class
);
given
(
server
.
address
()).
willReturn
(
new
InetSocketAddress
(
65535
));
context
.
publishEvent
(
new
RSocketServerInitializedEvent
(
server
));
assertThat
(
context
.
getEnvironment
().
getProperty
(
"local.rsocket.server.port"
)).
isEqualTo
(
"65535"
);
}
}
@Test
void
whenServerHasNoAddressThenInitializerDoesNotSetPortProperty
()
{
try
(
ConfigurableApplicationContext
context
=
new
AnnotationConfigApplicationContext
(
Config
.
class
))
{
context
.
getBean
(
RSocketPortInfoApplicationContextInitializer
.
class
).
initialize
(
context
);
RSocketServer
server
=
mock
(
RSocketServer
.
class
);
context
.
publishEvent
(
new
RSocketServerInitializedEvent
(
server
));
verify
(
server
).
address
();
assertThat
(
context
.
getEnvironment
().
getProperty
(
"local.rsocket.server.port"
)).
isNull
();
}
}
@Configuration
(
proxyBeanMethods
=
false
)
static
class
Config
{
@Bean
RSocketPortInfoApplicationContextInitializer
rSocketPortInfoApplicationContextInitializer
()
{
return
new
RSocketPortInfoApplicationContextInitializer
();
}
}
}
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