|
|
@@ -1,6 +1,5 @@
|
|
|
package com.its.dsrc;
|
|
|
|
|
|
-import com.its.app.AppUtils;
|
|
|
import com.its.app.utils.OS;
|
|
|
import com.its.app.utils.SysUtils;
|
|
|
import com.its.dsrc.config.ApplicationConfig;
|
|
|
@@ -17,6 +16,7 @@ import com.its.dsrc.ui.MainUI;
|
|
|
import com.its.dsrc.xnettcp.center.CenterTcpServerService;
|
|
|
import com.its.dsrc.xnettcp.dsrc.DsrcTcpCommServerService;
|
|
|
import com.its.dsrc.xnettcp.dsrc.process.TcpServerDataProcess;
|
|
|
+import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.DisposableBean;
|
|
|
import org.springframework.beans.factory.InitializingBean;
|
|
|
@@ -49,10 +49,23 @@ import java.nio.charset.Charset;
|
|
|
@EnableAsync
|
|
|
@Configuration
|
|
|
@SpringBootApplication
|
|
|
+@RequiredArgsConstructor
|
|
|
@ComponentScan(basePackages = {"com.its.dsrc.config", "com.its.dsrc.dao.mapper", "com.its"})
|
|
|
public class DsrcCommServerApplication implements CommandLineRunner, ApplicationListener<ContextClosedEvent>, InitializingBean, DisposableBean {
|
|
|
|
|
|
- private static String applicationName = "dsrc-comm-server";
|
|
|
+ private final ApplicationConfig applicationConfig;
|
|
|
+ private final RunningConfig runningConfig;
|
|
|
+ private final AppRepository appRepository;
|
|
|
+ private final DbmsDataProcess dbmsDataProcess;
|
|
|
+ private final TcpServerDataProcess tcpServerDataProcess;
|
|
|
+ private final UnitSystService unitSystService;
|
|
|
+ private final RseCtlrService rseCtlrService;
|
|
|
+ private final RseSectService rseSectService;
|
|
|
+ private final MultimediaService multimediaService;
|
|
|
+ private final DsrcTcpCommServerService dsrcTcpCommServerService;
|
|
|
+ private final CenterTcpServerService centerTcpServerService;
|
|
|
+
|
|
|
+ private static final String APPLICATION_NAME = "dsrc-comm-server";
|
|
|
private static ConfigurableApplicationContext context = null;
|
|
|
|
|
|
public static void main(String[] args) {
|
|
|
@@ -64,7 +77,7 @@ public class DsrcCommServerApplication implements CommandLineRunner, Application
|
|
|
} catch(Exception e){
|
|
|
}
|
|
|
|
|
|
- File file1 = new File("./conf/" + applicationName + ".pid");
|
|
|
+ File file1 = new File("./conf/" + APPLICATION_NAME + ".pid");
|
|
|
if (file1.exists()) {
|
|
|
System.out.println(System.getProperty("Program Already Running....."));
|
|
|
log.error("Program Already Running.....");
|
|
|
@@ -73,14 +86,14 @@ public class DsrcCommServerApplication implements CommandLineRunner, Application
|
|
|
if (OS.isWindows() || OS.isMac()) {
|
|
|
context = new SpringApplicationBuilder(DsrcCommServerApplication.class)
|
|
|
//.web(WebApplicationType.NONE)
|
|
|
- .listeners(new ApplicationPidFileWriter("./conf/" + applicationName + ".pid"))
|
|
|
+ .listeners(new ApplicationPidFileWriter("./conf/" + APPLICATION_NAME + ".pid"))
|
|
|
.headless(false)
|
|
|
.bannerMode(Banner.Mode.OFF)
|
|
|
.run(args);
|
|
|
} else {
|
|
|
SpringApplication application = new SpringApplicationBuilder()
|
|
|
.sources(DsrcCommServerApplication.class)
|
|
|
- .listeners(new ApplicationPidFileWriter("./conf/" + applicationName + ".pid"))
|
|
|
+ .listeners(new ApplicationPidFileWriter("./conf/" + APPLICATION_NAME + ".pid"))
|
|
|
.build();
|
|
|
application.setBannerMode(Banner.Mode.OFF);
|
|
|
application.run(args);
|
|
|
@@ -90,15 +103,15 @@ public class DsrcCommServerApplication implements CommandLineRunner, Application
|
|
|
@Override
|
|
|
public void run(String... args) throws Exception {
|
|
|
|
|
|
- ApplicationConfig applicationConfig = (ApplicationConfig) AppUtils.getBean(ApplicationConfig.class);
|
|
|
- RunningConfig runningConfig = (RunningConfig)AppUtils.getBean(RunningConfig.class);
|
|
|
- AppRepository appRepository = (AppRepository)AppUtils.getBean(AppRepository.class);
|
|
|
+// ApplicationConfig applicationConfig = (ApplicationConfig) AppUtils.getBean(ApplicationConfig.class);
|
|
|
+// RunningConfig runningConfig = (RunningConfig)AppUtils.getBean(RunningConfig.class);
|
|
|
+// AppRepository appRepository = (AppRepository)AppUtils.getBean(AppRepository.class);
|
|
|
|
|
|
if (OS.isWindows() || OS.isMac()) {
|
|
|
String sysTime = SysUtils.getSysTimeStr();
|
|
|
//JFrame.setDefaultLookAndFeelDecorated(true);
|
|
|
JFrame frame = new JFrame("DSRC 통신 서버 - [" + sysTime + "]");
|
|
|
- MainUI mainUI = new MainUI(frame);
|
|
|
+ MainUI mainUI = new MainUI(frame, appRepository);
|
|
|
mainUI.updateBindPort(runningConfig.getCommBindingPort());
|
|
|
SwingUtilities.invokeLater(() -> {
|
|
|
try {
|
|
|
@@ -152,13 +165,13 @@ public class DsrcCommServerApplication implements CommandLineRunner, Application
|
|
|
log.info("************************************************************************************");
|
|
|
|
|
|
// init application
|
|
|
- DbmsDataProcess dbmsDataProcess = (DbmsDataProcess)AppUtils.getBean(DbmsDataProcess.class);
|
|
|
+// DbmsDataProcess dbmsDataProcess = (DbmsDataProcess)AppUtils.getBean(DbmsDataProcess.class);
|
|
|
dbmsDataProcess.run();
|
|
|
|
|
|
- TcpServerDataProcess tcpServerDataProcess = (TcpServerDataProcess)AppUtils.getBean(TcpServerDataProcess.class);
|
|
|
+// TcpServerDataProcess tcpServerDataProcess = (TcpServerDataProcess)AppUtils.getBean(TcpServerDataProcess.class);
|
|
|
tcpServerDataProcess.run();
|
|
|
|
|
|
- UnitSystService unitSystService = (UnitSystService)AppUtils.getBean(UnitSystService.class);
|
|
|
+// UnitSystService unitSystService = (UnitSystService)AppUtils.getBean(UnitSystService.class);
|
|
|
unitSystService.loadMaster();
|
|
|
unitSystService.updateUnitSystStts(true);
|
|
|
TbUnitSyst unit = unitSystService.getUnitSystMap().get(applicationConfig.getId());
|
|
|
@@ -166,14 +179,14 @@ public class DsrcCommServerApplication implements CommandLineRunner, Application
|
|
|
applicationConfig.setListenPort(unit.getPRGM_PORT());
|
|
|
}
|
|
|
|
|
|
- RseCtlrService ctlrService = (RseCtlrService)AppUtils.getBean(RseCtlrService.class);
|
|
|
- ctlrService.loadDb();
|
|
|
- ctlrService.updateCtlrStts(true);
|
|
|
+// RseCtlrService rseCtlrService = (RseCtlrService)AppUtils.getBean(RseCtlrService.class);
|
|
|
+ rseCtlrService.loadDb();
|
|
|
+ rseCtlrService.updateCtlrStts(true);
|
|
|
|
|
|
- RseSectService rseSectService = (RseSectService)AppUtils.getBean(RseSectService.class);
|
|
|
+// RseSectService rseSectService = (RseSectService)AppUtils.getBean(RseSectService.class);
|
|
|
rseSectService.loadMaster();
|
|
|
|
|
|
- MultimediaService multimediaService = (MultimediaService)AppUtils.getBean(MultimediaService.class);
|
|
|
+// MultimediaService multimediaService = (MultimediaService)AppUtils.getBean(MultimediaService.class);
|
|
|
multimediaService.loadMaster();
|
|
|
|
|
|
applicationConfig.setControllerBindingPort(runningConfig.getCommBindingPort());
|
|
|
@@ -182,29 +195,29 @@ public class DsrcCommServerApplication implements CommandLineRunner, Application
|
|
|
applicationConfig.setStartSchedule(true);
|
|
|
|
|
|
if (OS.isWindows() || OS.isMac()) {
|
|
|
- MainUI UI = MainUI.getInstance();
|
|
|
- if (UI != null) {
|
|
|
- UI.loadControllerInfo(appRepository);
|
|
|
+ MainUI mainUI = MainUI.getInstance();
|
|
|
+ if (mainUI != null) {
|
|
|
+ mainUI.loadControllerInfo();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- DsrcTcpCommServerService dsrcTcpCommServerService = (DsrcTcpCommServerService)AppUtils.getBean(DsrcTcpCommServerService.class);
|
|
|
+// DsrcTcpCommServerService dsrcTcpCommServerService = (DsrcTcpCommServerService)AppUtils.getBean(DsrcTcpCommServerService.class);
|
|
|
dsrcTcpCommServerService.run();
|
|
|
|
|
|
- CenterTcpServerService centerService = (CenterTcpServerService)AppUtils.getBean(CenterTcpServerService.class);
|
|
|
- centerService.run();
|
|
|
+// CenterTcpServerService centerTcpServerService = (CenterTcpServerService)AppUtils.getBean(CenterTcpServerService.class);
|
|
|
+ centerTcpServerService.run();
|
|
|
}
|
|
|
|
|
|
public void terminateApplication() {
|
|
|
- CenterTcpServerService centerService = (CenterTcpServerService)AppUtils.getBean(CenterTcpServerService.class);
|
|
|
+// CenterTcpServerService centerTcpServerService = (CenterTcpServerService)AppUtils.getBean(CenterTcpServerService.class);
|
|
|
try {
|
|
|
log.error("Application Terminated: center communication stop.");
|
|
|
- centerService.stop();
|
|
|
+ centerTcpServerService.stop();
|
|
|
} catch (Exception e) {
|
|
|
// no logging
|
|
|
}
|
|
|
|
|
|
- DsrcTcpCommServerService dsrcTcpCommServerService = (DsrcTcpCommServerService)AppUtils.getBean(DsrcTcpCommServerService.class);
|
|
|
+// DsrcTcpCommServerService dsrcTcpCommServerService = (DsrcTcpCommServerService)AppUtils.getBean(DsrcTcpCommServerService.class);
|
|
|
try {
|
|
|
log.error("Application Terminated: dsrc communication stop.");
|
|
|
dsrcTcpCommServerService.stop();
|
|
|
@@ -212,15 +225,15 @@ public class DsrcCommServerApplication implements CommandLineRunner, Application
|
|
|
// no logging
|
|
|
}
|
|
|
|
|
|
- RseCtlrService ctlrService = (RseCtlrService) AppUtils.getBean(RseCtlrService.class);
|
|
|
+// RseCtlrService rseCtlrService = (RseCtlrService) AppUtils.getBean(RseCtlrService.class);
|
|
|
try {
|
|
|
log.error("Application Terminated: controller state update.");
|
|
|
- ctlrService.updateCtlrStts(false);
|
|
|
+ rseCtlrService.updateCtlrStts(false);
|
|
|
} catch (Exception e) {
|
|
|
// no logging
|
|
|
}
|
|
|
|
|
|
- UnitSystService unitSystService = (UnitSystService) AppUtils.getBean(UnitSystService.class);
|
|
|
+// UnitSystService unitSystService = (UnitSystService) AppUtils.getBean(UnitSystService.class);
|
|
|
try {
|
|
|
log.error("Application Terminated: unit state update.");
|
|
|
unitSystService.updateUnitSystStts(false);
|