@@ -56,11 +56,9 @@ public class SettingMenuController implements Initializable {
5656 private static Logger logger = Logger .getLogger (SettingMenuController .class );
5757
5858 /**
59- * Pattern 객체를 정적필드로 선언한 이유
60- * - Pattern 객체는 입력받은 정규표현식에 해당하는 유한상태머신(finite state machine)을
61- * 생성하기 때문에 인스턴스 생성비용이 높다.
62- * - 따라서, 한 번 생성하두고 이를 재사용하는 것이 효과적이다.
63- * - 뿐만 아니라, 패턴 객체에 이름을 부여하여 해당 객체의 의미가 명확해진다.
59+ * Pattern 객체를 정적필드로 선언한 이유 - Pattern 객체는 입력받은 정규표현식에 해당하는 유한상태머신(finite state
60+ * machine)을 생성하기 때문에 인스턴스 생성비용이 높다. - 따라서, 한 번 생성하두고 이를 재사용하는 것이 효과적이다. - 뿐만
61+ * 아니라, 패턴 객체에 이름을 부여하여 해당 객체의 의미가 명확해진다.
6462 */
6563
6664 /* Dependency Injection */
@@ -176,9 +174,9 @@ public void showMonitoringPresetPopup(ActionEvent e) {
176174 }
177175
178176 /**
179- * [설정] - [접속정보 설정] - .properties 파일을 선택하기 위한 FileChooser를 연다.
180- * 사용자가 선택한 파일의 경로에서 파일을 읽은 후, 올바른 설정파일이라면 해당 경로를 remember.properties에 저장한다.
181- * 그렇지 않다면, '잘못된파일입니다'라는 경고를 띄우고 접속정보를 직접 설정하는 화면으로 이동시킨다.
177+ * [설정] - [접속정보 설정] - .properties 파일을 선택하기 위한 FileChooser를 연다. 사용자가 선택한 파일의 경로에서
178+ * 파일을 읽은 후, 올바른 설정파일이라면 해당 경로를 remember.properties에 저장한다. 그렇지 않다면, '잘못된파일입니다'라는
179+ * 경고를 띄우고 접속정보를 직접 설정하는 화면으로 이동시킨다.
182180 *
183181 * @param e
184182 */
@@ -268,10 +266,10 @@ private void loadMonitoringConfigFile(String filePath) {
268266 serverMonitorings = propertyRepository .getServerMonitoringContents ();
269267
270268 propertyRepository .loadMonitoringInfoConfig (filePath );
271-
269+
272270 dbNames = propertyRepository .getMonitoringDBNames ();
273271 serverNames = propertyRepository .getMonitoringServerNames ();
274-
272+
275273 createMonitoringElements (monitoringElementsVBox , dbMonitorings , dbNames );
276274 createMonitoringElements (monitoringElementsVBox , serverMonitorings , serverNames );
277275 }
@@ -289,11 +287,19 @@ public void saveConnInfoSettings(ActionEvent e) {
289287
290288 ConnectionInfoVBox <JdbcConnectionInfo > dbConnVBox = (ConnectionInfoVBox <JdbcConnectionInfo >) connInfoVBox
291289 .lookup ("#dbConnVBox" );
292- dbConnVBox .saveConnInfoSettings (configFilePath );
290+
291+ boolean isDBSaveSucceed = dbConnVBox .saveConnInfoSettings (configFilePath );
292+ if (!isDBSaveSucceed ) {
293+ return ;
294+ }
293295
294296 ConnectionInfoVBox <JschConnectionInfo > serverConnVBox = (ConnectionInfoVBox <JschConnectionInfo >) connInfoVBox
295297 .lookup ("#serverConnVBox" );
296- serverConnVBox .saveConnInfoSettings (configFilePath );
298+
299+ boolean isServerSaveSucceed = serverConnVBox .saveConnInfoSettings (configFilePath );
300+ if (!isServerSaveSucceed ) {
301+ return ;
302+ }
297303
298304 // 설정파일 ReLoading
299305 loadSelectedConfigFile (configFilePath );
@@ -476,11 +482,11 @@ private void createSettingDynamicElements() {
476482 dbConnVBox .setId ("dbConnVBox" );
477483 connInfoVBox .getChildren ().add (dbConnVBox );
478484 }
479-
485+
480486 dbConnVBox .addConnInfoList (jdbcConnInfoList );
481-
487+
482488 ConnectionInfoVBox <JschConnectionInfo > serverConnVBox = null ;
483- if (connInfoVBox .lookup ("#serverConnVBox" ) != null ) {
489+ if (connInfoVBox .lookup ("#serverConnVBox" ) != null ) {
484490 serverConnVBox = (ConnectionInfoVBox <JschConnectionInfo >) connInfoVBox .lookup ("#serverConnVBox" );
485491 serverConnVBox .clearConnInfoMap ();
486492 } else {
@@ -490,7 +496,7 @@ private void createSettingDynamicElements() {
490496 serverConnVBox .setId ("serverConnVBox" );
491497 connInfoVBox .getChildren ().add (serverConnVBox );
492498 }
493-
499+
494500 serverConnVBox .addConnInfoList (jschConnInfoList );
495501
496502 // [설정] - [모니터링 여부 설정]
@@ -519,7 +525,7 @@ private void reloadingMonitoringSetting(String presetName) {
519525 monitoringPresetComboBox .getItems ().addAll (monitoringPresetMap .keySet ());
520526 logger .debug ("monitoringPresetMap : " + monitoringPresetMap );
521527
522- // 지정된 Preset이 없다면 최근 사용된 Preset으로 세팅한다.
528+ // 지정된 Preset이 없다면 최근 사용된 Preset으로 세팅한다.
523529 // 만약 최근 사용된 Preset이 없다면 첫번째 Preset으로 세팅한다.
524530 if (presetName .isEmpty ()) {
525531 // 최근 사용된 모니터링 설정 읽기
@@ -545,7 +551,7 @@ private void reloadingMonitoringSetting(String presetName) {
545551 loadMonitoringConfigFile (monitoringPresetMap .get (readPresetName ));
546552 }
547553 }
548-
554+
549555 private void setVisible (Node node , boolean isVisible ) {
550556 node .setVisible (isVisible );
551557 if (isVisible ) {
@@ -557,6 +563,7 @@ private void setVisible(Node node, boolean isVisible) {
557563
558564 /**
559565 * [설정] - [접속정보 설정] - 새로운 접속정보 설정파일을 생성한다.
566+ *
560567 * @param e
561568 */
562569 public void createNewConfigFile (ActionEvent e ) {
@@ -586,22 +593,23 @@ public void createNewConfigFile(ActionEvent e) {
586593 AlertUtils .showAlert (AlertType .ERROR , "접속정보 설정파일 생성" , "설정파일명을 입력해주세요." );
587594 return ;
588595 }
589-
596+
590597 // TODO 입력값 검사 (영어만)
591-
598+
592599 // 1. 접속정보 설정파일 생성 (./config/connectioninfo/{접속정보설정파일명}.properties
593600 String filePath = "./config/connectioninfo/" + input + ".properties" ;
594601 PropertiesUtils .createNewPropertiesFile (filePath , "ConnectionInfo" );
595-
596- // 2. 모니터링여부 Preset 설정파일 생성 (./config/monitoring/{접속정보설정파일명}/{default}.properties
602+
603+ // 2. 모니터링여부 Preset 설정파일 생성
604+ // (./config/monitoring/{접속정보설정파일명}/{default}.properties
597605 String presetConfigPath = "./config/monitoring/" + input + "/default.properties" ;
598606 PropertiesUtils .createNewPropertiesFile (presetConfigPath , "Monitoring" );
599-
607+
600608 // 3. Set Node Visible
601609 setVisible (noConnInfoConfigAP , false );
602610 setVisible (noMonitoringConfigAP , false );
603-
604- // 4. 생성된 설정파일 Load
611+
612+ // 4. 생성된 설정파일 Load
605613 loadSelectedConfigFile (filePath );
606614 });
607615 }
0 commit comments