Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
T
traffic-signal-platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
signal
traffic-signal-platform
Commits
90c413f7
Commit
90c413f7
authored
Jan 11, 2024
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[add] 优化灯态信息推送Kafka,添加websocket客户端
parent
3fd11a1b
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
86 additions
and
0 deletions
+86
-0
CrossInfoCache.java
...ice/src/main/java/net/wanji/utc/cache/CrossInfoCache.java
+2
-0
WebSocketClient.java
...ce/src/main/java/net/wanji/utc/cache/WebSocketClient.java
+47
-0
WebSocketClientHandler.java
.../java/net/wanji/utc/websocket/WebSocketClientHandler.java
+37
-0
No files found.
signal-utc-service/src/main/java/net/wanji/utc/cache/CrossInfoCache.java
View file @
90c413f7
...
@@ -6,6 +6,7 @@ import net.wanji.databus.po.CrossInfoPO;
...
@@ -6,6 +6,7 @@ import net.wanji.databus.po.CrossInfoPO;
import
net.wanji.databus.po.ManufacturerInfoPO
;
import
net.wanji.databus.po.ManufacturerInfoPO
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.boot.CommandLineRunner
;
import
org.springframework.boot.CommandLineRunner
;
import
org.springframework.core.annotation.Order
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.CollectionUtils
;
...
@@ -19,6 +20,7 @@ import java.util.Objects;
...
@@ -19,6 +20,7 @@ import java.util.Objects;
* @date 2023/05/23 9:44
* @date 2023/05/23 9:44
*/
*/
@Component
@Component
@Order
(
1
)
public
class
CrossInfoCache
implements
CommandLineRunner
{
public
class
CrossInfoCache
implements
CommandLineRunner
{
@Resource
@Resource
...
...
signal-utc-service/src/main/java/net/wanji/utc/cache/WebSocketClient.java
0 → 100644
View file @
90c413f7
package
net
.
wanji
.
utc
.
cache
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.databus.po.CrossInfoPO
;
import
net.wanji.utc.websocket.WebSocketClientHandler
;
import
org.springframework.boot.CommandLineRunner
;
import
org.springframework.core.annotation.Order
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.CollectionUtils
;
import
javax.websocket.ContainerProvider
;
import
javax.websocket.Session
;
import
javax.websocket.WebSocketContainer
;
import
java.net.URI
;
import
java.util.List
;
/**
* @author duanruiming
* @date 2024/01/10 17:28
*/
@Component
@Slf4j
@Order
(
2
)
public
class
WebSocketClient
implements
CommandLineRunner
{
public
static
Session
session
;
@Override
public
void
run
(
String
...
args
)
throws
Exception
{
try
{
if
(
WebSocketClient
.
session
!=
null
)
{
WebSocketClient
.
session
.
close
();
}
WebSocketContainer
container
=
ContainerProvider
.
getWebSocketContainer
();
List
<
CrossInfoPO
>
crossInfoList
=
CrossInfoCache
.
crossInfoList
;
if
(!
CollectionUtils
.
isEmpty
(
crossInfoList
))
{
for
(
CrossInfoPO
crossInfoPO
:
crossInfoList
)
{
String
crossId
=
crossInfoPO
.
getId
();
String
uri
=
"ws://localhost:32000/utc/signalStatus/"
+
crossId
+
",preload"
;
session
=
container
.
connectToServer
(
WebSocketClientHandler
.
class
,
URI
.
create
(
uri
));
}
}
}
catch
(
Exception
e
)
{
log
.
error
(
"websocketClient初始化失败"
,
e
);
throw
new
Exception
(
e
);
}
}
}
signal-utc-service/src/main/java/net/wanji/utc/websocket/WebSocketClientHandler.java
0 → 100644
View file @
90c413f7
package
net
.
wanji
.
utc
.
websocket
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.utc.cache.WebSocketClient
;
import
org.springframework.stereotype.Component
;
import
javax.websocket.*
;
/**
* @author duanruiming
* @date 2024/01/10 17:28
*/
@ClientEndpoint
@Component
@Slf4j
public
class
WebSocketClientHandler
{
@OnOpen
public
void
onOpen
(
Session
session
)
{
WebSocketClient
.
session
=
session
;
}
@OnMessage
public
void
recieveMessage
(
String
message
)
{
}
@OnError
public
void
error
(
Throwable
t
)
{
}
@OnClose
public
void
close
()
{
}
}
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