Browse Source

调整系统状态采用Aspect的方式推送

master
白凤吉 2 months ago
parent
commit
6da414245b
  1. 33
      src/main/java/com/iflytop/sgs/app/core/listener/DeviceStateListener.java

33
src/main/java/com/iflytop/sgs/app/core/listener/DeviceStateListener.java

@ -1,33 +0,0 @@
package com.iflytop.sgs.app.core.listener;
import com.iflytop.sgs.app.service.device.DeviceStateService;
import com.iflytop.sgs.app.ws.server.WebSocketSender;
import com.iflytop.sgs.common.constant.WebSocketMessageType;
import jakarta.annotation.PostConstruct;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
@Slf4j
@Component
@RequiredArgsConstructor
public class DeviceStateListener implements PropertyChangeListener {
private final WebSocketSender webSocketService;
private final DeviceStateService deviceStateService;
@PostConstruct
private void init() {
deviceStateService.addListener(this);
}
// 在此处理DeviceState的变化事件
@Override
public void propertyChange(PropertyChangeEvent event) {
log.info("设备状态发生改变,类型{} ,from {} to {}", event.getPropertyName(), event.getOldValue(), event.getNewValue());
webSocketService.push(WebSocketMessageType.STATUS, deviceStateService.getDeviceState());
}
}
Loading…
Cancel
Save