6 changed files with 82 additions and 49 deletions
-
2.gitignore
-
4src/main/java/a8k/app/config/IflytophaldConnectionConfig.java
-
2src/main/java/a8k/app/config/VersionConfig.java
-
116src/main/java/a8k/app/hardware/channel/LisUartChannelConnection.java
-
4src/main/java/a8k/extui/page/init/DeviceInitPage.java
-
1src/main/resources/application.yml
@ -1,55 +1,83 @@ |
|||||
package a8k.app.hardware.channel; |
package a8k.app.hardware.channel; |
||||
|
|
||||
|
import a8k.app.config.IflytophaldConnectionConfig; |
||||
|
import jakarta.annotation.PostConstruct; |
||||
|
import lombok.RequiredArgsConstructor; |
||||
|
import lombok.Value; |
||||
import lombok.extern.slf4j.Slf4j; |
import lombok.extern.slf4j.Slf4j; |
||||
import org.java_websocket.client.WebSocketClient; |
import org.java_websocket.client.WebSocketClient; |
||||
import org.java_websocket.enums.ReadyState; |
import org.java_websocket.enums.ReadyState; |
||||
import org.java_websocket.handshake.ServerHandshake; |
import org.java_websocket.handshake.ServerHandshake; |
||||
import org.springframework.scheduling.annotation.Scheduled; |
import org.springframework.scheduling.annotation.Scheduled; |
||||
|
import org.springframework.stereotype.Component; |
||||
|
|
||||
import java.net.URI; |
import java.net.URI; |
||||
|
|
||||
|
|
||||
@Slf4j |
|
||||
public class LisUartChannelConnection extends WebSocketClient { |
|
||||
String datachurl = null; |
|
||||
String cmdchurl = null; |
|
||||
|
|
||||
public LisUartChannelConnection(String cmdchurl, String datachurl) { |
|
||||
super(URI.create(datachurl)); |
|
||||
log.info("new A8kCanBusConnection: {} {}", cmdchurl, datachurl); |
|
||||
|
|
||||
this.datachurl = datachurl; |
|
||||
this.cmdchurl = cmdchurl; |
|
||||
} |
|
||||
|
|
||||
@Override public void onOpen(ServerHandshake serverHandshake) { |
|
||||
log.info("a8k canbus connect sucess"); |
|
||||
} |
|
||||
@Override public void onMessage(String s) { |
|
||||
} |
|
||||
@Override public void onClose(int i, String s, boolean b) { |
|
||||
log.warn("a8k canbus lost connection..."); |
|
||||
} |
|
||||
|
|
||||
@Override public void onError(Exception e) { |
|
||||
log.info("a8k can-websocket-channel on error"); |
|
||||
} |
|
||||
|
|
||||
// |
// |
||||
// PRIVATE |
|
||||
// |
|
||||
@Scheduled(fixedRate = 1000) |
|
||||
private void autoConnect() { |
|
||||
if (!isOpen()) { |
|
||||
if (getReadyState().equals(ReadyState.NOT_YET_CONNECTED)) { |
|
||||
try { |
|
||||
connect(); |
|
||||
} catch (IllegalStateException ignored) { |
|
||||
} |
|
||||
} else if (getReadyState().equals(ReadyState.CLOSED)) { |
|
||||
reconnect(); |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
|
//@Slf4j |
||||
|
//@Component |
||||
|
//@RequiredArgsConstructor |
||||
|
//public class LisUartChannelConnection { |
||||
|
// WebSocketClient conn; |
||||
|
// IflytophaldConnectionConfig iflytophaldConnectionConfig; |
||||
|
// |
||||
|
// @PostConstruct |
||||
|
// void init() { |
||||
|
// conn = new WebSocketClient(URI.create(iflytophaldConnectionConfig.getDatachUrl("lis"))) { |
||||
|
// @Override |
||||
|
// public void onOpen(ServerHandshake serverHandshake) { |
||||
|
// LisUartChannelConnection.this.onOpen(serverHandshake); |
||||
|
// } |
||||
|
// |
||||
|
// @Override |
||||
|
// public void onMessage(String s) { |
||||
|
// LisUartChannelConnection.this.onMessage(s); |
||||
|
// } |
||||
|
// |
||||
|
// @Override |
||||
|
// public void onClose(int i, String s, boolean b) { |
||||
|
// LisUartChannelConnection.this.onClose(i, s, b); |
||||
|
// } |
||||
|
// |
||||
|
// @Override |
||||
|
// public void onError(Exception e) { |
||||
|
// LisUartChannelConnection.this.onError(e); |
||||
|
// } |
||||
|
// }; |
||||
|
// } |
||||
|
// |
||||
|
// |
||||
|
// public void onOpen(ServerHandshake serverHandshake) { |
||||
|
// log.info("a8k canbus connect sucess"); |
||||
|
// } |
||||
|
// |
||||
|
// public void onMessage(String s) { |
||||
|
// } |
||||
|
// |
||||
|
// public void onClose(int i, String s, boolean b) { |
||||
|
// log.warn("a8k canbus lost connection..."); |
||||
|
// } |
||||
|
// |
||||
|
// public void onError(Exception e) { |
||||
|
// log.info("a8k can-websocket-channel on error"); |
||||
|
// } |
||||
|
// |
||||
|
// // |
||||
|
// // PRIVATE |
||||
|
// // |
||||
|
// @Scheduled(fixedRate = 1000) |
||||
|
// private void autoConnect() { |
||||
|
// if (!conn.isOpen()) { |
||||
|
// if (conn.getReadyState().equals(ReadyState.NOT_YET_CONNECTED)) { |
||||
|
// try { |
||||
|
// conn.connect(); |
||||
|
// } catch (IllegalStateException ignored) { |
||||
|
// } |
||||
|
// } else if (conn.getReadyState().equals(ReadyState.CLOSED)) { |
||||
|
// conn.reconnect(); |
||||
|
// } |
||||
|
// } |
||||
|
// } |
||||
|
//} |
||||
|
|
||||
|
// |
Write
Preview
Loading…
Cancel
Save
Reference in new issue