| 
					
				 | 
			
			
				@@ -3,8 +3,11 @@ package com.its.traf.ui; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.intellij.uiDesigner.core.GridConstraints; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.intellij.uiDesigner.core.GridLayoutManager; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.intellij.uiDesigner.core.Spacer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.its.traf.entity.TrafPrcsInfr; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.its.app.utils.SysUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.its.traf.entity.TrafPrcsInfr; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.its.traf.global.AppRepository; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.its.traf.vo.TrafPrcsVo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.its.traf.vo.TrafStatVo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.sun.management.OperatingSystemMXBean; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import lombok.Getter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import lombok.extern.slf4j.Slf4j; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -13,7 +16,6 @@ import javax.swing.Timer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import javax.swing.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import javax.swing.border.MatteBorder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import javax.swing.plaf.FontUIResource; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import javax.swing.table.DefaultTableCellRenderer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import javax.swing.table.TableCellRenderer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import javax.swing.table.TableColumnModel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import javax.swing.text.StyleContext; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -22,8 +24,6 @@ import java.awt.datatransfer.Clipboard; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.awt.datatransfer.StringSelection; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.awt.event.ActionEvent; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.awt.event.ActionListener; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import java.awt.event.MouseAdapter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import java.awt.event.MouseEvent; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.io.File; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.io.IOException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.lang.management.ManagementFactory; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -35,38 +35,34 @@ import java.util.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private static MainUI _instance = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private SubUIController subUIController = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JFrame jFrame = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private final OperatingSystemMXBean osBean = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private Timer timer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private Long tick = Long.valueOf(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private TrafPrcsInfr selObj = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private CtlrSttsTableModel ctlrSttsTableModel = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private TableCellRenderer cellRenderer = new CtlrSttsTableCellRenderer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private TrafPrcsTableModel trafPrcsTableModel = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private TrafStatTableModel trafStatTableModel = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private TableCellRenderer cellPrcsRender = new TrafPrcsTableCellRenderer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private TableCellRenderer cellStatRender = new TrafStatTableCellRenderer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JPanel rootPanel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JPanel pnlCtlr; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JPanel pnlLog; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JPanel pnlLogTitle; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private JPanel pnlCtlrTitle; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JButton btnLogDirOpen; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JButton btnLogPause; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JCheckBox chkLogPause; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JLabel lblSystime; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JPanel pnlStatusBar; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private JTable tblCtlrList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JTextArea taLog; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JButton btnLogCopy; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private JLabel lblTotal; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private JLabel lblError; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JLabel lblCpuRate; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JLabel lblMemoryUsage; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private JPanel pnlControl; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private JButton btnImage; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private JButton btnInitialize; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private JButton btnReset; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private JButton btnDisconnect; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private JTabbedPane tabInfo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private JPanel tabPrcs; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private JTable listPrcs; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private JPanel tabStat; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private JTable listStat; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JTextField txtName; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private JTextField txtId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -76,7 +72,6 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public void displaySystime() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lblSystime.setText(" " + SysUtils.getSysTimeStr() + "  "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        updateCommSttsTotal(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public void displayResource() { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -96,8 +91,6 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.jFrame = jFrame; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (_instance == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             _instance = this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            subUIController = new SubUIController(jFrame); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            subUIController.setVisible(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //osBean = ManagementFactory.getPlatformMXBean(OperatingSystemMXBean.class); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -115,16 +108,6 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             taLog.setFont(d2font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        String fontNames[] = ge.getAvailableFontFamilyNames(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        for (int ii = 0; ii < fontNames.length; ii++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            log.error("GraphicsEnvironment Fonts: {}", fontNames[ii]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        final Font fonts[] = GraphicsEnvironment.getLocalGraphicsEnvironment().getAllFonts(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        for (Font font : fonts) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            log.error("FONTS: {}", font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         displaySystime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         displayResource(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         timer = new Timer(1000, new ActionListener() { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -143,8 +126,6 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         btnLogDirOpen.setFocusable(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         btnLogCopy.setFocusable(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //initTblListUI(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         btnLogPause.addActionListener(new ActionListener() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             public void actionPerformed(ActionEvent e) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -177,221 +158,124 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        tblCtlrList.addMouseListener(new MouseAdapter() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            public void mouseClicked(MouseEvent me) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                // double click 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (me.getClickCount() == 2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if (!updateControllerInfo()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if (subUIController.isVisible()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            subUIController.setVisible(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnDisconnect.addActionListener(new ActionListener() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            public void actionPerformed(ActionEvent e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                controlController(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnReset.addActionListener(new ActionListener() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            public void actionPerformed(ActionEvent e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                controlController(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnInitialize.addActionListener(new ActionListener() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            public void actionPerformed(ActionEvent e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                controlController(3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnImage.addActionListener(new ActionListener() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            public void actionPerformed(ActionEvent e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                controlController(4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     * 제어기 명령 처리 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     * @param type 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    public void controlController(int type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (selObj == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            JOptionPane.showMessageDialog(getRootPanel(), "제어기가 선택되지 않았습니다. 목록을 더블클릭하여 제어기를 선택하세요.", "제어기 선택", JOptionPane.ERROR_MESSAGE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        if (selObj.getNetState() == NET.CLOSED) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            JOptionPane.showMessageDialog(getRootPanel(), "제어기가 현재 연결이 되어 있지 않습니다.", "제어기 연결 상태", JOptionPane.ERROR_MESSAGE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        String message, title; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        switch (type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            case 1: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                message = "제어기와의 연결을 종료 하시겠습니까?"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                title = "제어기 연결 종료"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            case 2: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                message = "제어기를 리셋 하시겠습니까?"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                title = "제어기 리셋"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            case 3: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                message = "제어기를 초기화 하시겠습니까?"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                title = "제어기 초기화"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            case 4: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                message = "제어기의 정지영상 정보를 요청하시겠습니까?"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                title = "제어기 정지영상 요청"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            default: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (JOptionPane.showConfirmDialog(getRootPanel(), message, title, JOptionPane.YES_NO_OPTION) != 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        boolean result = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        switch (type) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            case 1: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                result = false;//selObj.channelClose(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            case 2: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                result = true;//selObj.reset(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            case 3: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//                result = false;//selObj.initialize(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            case 4: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//                result = true;//selObj.stopImage((byte) 0x01); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            default: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (!result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            JOptionPane.showMessageDialog(getRootPanel(), "명령 전송이 실패 하였습니다.", title, JOptionPane.ERROR_MESSAGE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public boolean updateControllerInfo() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (subUIController.isVisible()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            subUIController.setVisible(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        int row = tblCtlrList.getSelectedRow(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (row < 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        txtId.setText(""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        txtName.setText(""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        CtlrSttsTableModel tableModel = (CtlrSttsTableModel) tblCtlrList.getModel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        selObj = tableModel.getControllerInfo(row); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (selObj != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            //txtId.setText(selObj.getRSE_ID()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            txtName.setText(selObj.getRSE_NM()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            subUIController.updateInfo(selObj); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (!subUIController.isVisible()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                //subUIController.setVisible(true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        int row = tblCtlrList.getSelectedRow(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        if (row < 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        txtId.setText(""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        txtName.setText(""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        TrafPrcsTableModel tableModel = (TrafPrcsTableModel) tblCtlrList.getModel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        selObj = tableModel.getControllerInfo(row); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        if (selObj != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            //txtId.setText(selObj.getRSE_ID()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            txtName.setText(selObj.getRSE_NM()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * 목록 헤더 생성 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    private void initTblListUI(List<TrafPrcsInfr> ctlrList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        this.ctlrSttsTableModel = new CtlrSttsTableModel(ctlrList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        tblCtlrList.setModel(this.ctlrSttsTableModel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        tblCtlrList.getTableHeader().setOpaque(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        tblCtlrList.getTableHeader().setBackground(Color.LIGHT_GRAY); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        tblCtlrList.setRowMargin(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //tblCtlrList.setGridColor(Color.LIGHT_GRAY); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        tblCtlrList.setRowHeight(tblCtlrList.getRowHeight() + 5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //tblCtlrList.setRowSelectionAllowed(true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //tblCtlrList.setColumnSelectionAllowed(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        tblCtlrList.setBackground(Color.WHITE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        tblCtlrList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //tblCtlrList.setAutoCreateRowSorter(true); // sorting 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //tblCtlrList.addMouseListener(new ListMouseListener(null)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        TableColumnModel getColumnModel = tblCtlrList.getColumnModel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(0).setPreferredWidth(30);  //  "S", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(1).setPreferredWidth(60);  //  "번호", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(2).setPreferredWidth(140);  //  "시설물ID", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(3).setPreferredWidth(210); //  "명칭", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(4).setPreferredWidth(120); //  "IP", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //getColumnModel.getColumn(5).setPreferredWidth(0);  //  "PORT", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(6).setPreferredWidth(70);  //  "연결상태", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(7).setPreferredWidth(80); //  "장치상태", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(8).setPreferredWidth(50);  //  "안테나1", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(9).setPreferredWidth(50);  //  "안테나2", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(10).setPreferredWidth(50); //  "안테나3", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(11).setPreferredWidth(50); //  "안테나4", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(12).setPreferredWidth(130); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(13).setPreferredWidth(130); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private void initTblListUI(List<TrafPrcsVo> prcsList, List<TrafStatVo> statList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.trafPrcsTableModel = new TrafPrcsTableModel(prcsList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.trafStatTableModel = new TrafStatTableModel(statList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listPrcs.setModel(this.trafPrcsTableModel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listStat.setModel(this.trafStatTableModel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listPrcs.getTableHeader().setOpaque(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listPrcs.getTableHeader().setBackground(Color.LIGHT_GRAY); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listPrcs.setRowMargin(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listPrcs.setRowHeight(listPrcs.getRowHeight() + 5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listPrcs.setBackground(Color.WHITE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listPrcs.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        TableColumnModel getColumnModel = listPrcs.getColumnModel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel.getColumn(0).setPreferredWidth(30);      //  "S", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel.getColumn(1).setPreferredWidth(120);     //  "작업명", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel.getColumn(2).setPreferredWidth(250);     //  "타겟", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel.getColumn(3).setPreferredWidth(130);     //  "시작시각", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel.getColumn(4).setPreferredWidth(130);     //  "종료시각", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel.getColumn(5).setPreferredWidth(70);      //  "건수(EA)", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel.getColumn(6).setPreferredWidth(70);      //  "작업시간(ms)", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel.getColumn(7).setPreferredWidth(70);      //  "평균작업시간", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         getColumnModel.getColumn(0).setMaxWidth(30); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         getColumnModel.getColumn(0).setMinWidth(30); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         getColumnModel.getColumn(0).setResizable(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(5).setMinWidth(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(5).setMaxWidth(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(5).setWidth(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getColumnModel.getColumn(5).setResizable(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Color color = UIManager.getColor("Table.gridColor"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         MatteBorder border = new MatteBorder(1, 1, 0, 0, color); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        tblCtlrList.setBorder(border); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        DefaultTableCellRenderer centerAlign = new DefaultTableCellRenderer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        centerAlign.setHorizontalAlignment(JLabel.CENTER); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listPrcs.setBorder(border); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         for (int ii = 0; ii < getColumnModel.getColumnCount(); ii++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            getColumnModel.getColumn(ii).setCellRenderer(cellRenderer); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            getColumnModel.getColumn(ii).setCellRenderer(this.cellPrcsRender); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    public void updateCommSttsTotal() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        int ctlrTotal = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        int ctlrError = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        for (Map.Entry<String, TbRseCtlr> e : AppRepository.getInstance().getCtlrMap().entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            TbRseCtlr obj = e.getValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            if (StringUtils.equals("N", obj.getDEL_YN())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//                ctlrTotal++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//                if (!"CMS0".equals(obj.getStts().getCMNC_STTS_CD())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//                    ctlrError++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblTotal.setText(" " + ctlrTotal + " "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblError.setText(" " + ctlrError + " "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listStat.getTableHeader().setOpaque(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listStat.getTableHeader().setBackground(Color.LIGHT_GRAY); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listStat.setRowMargin(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listStat.setRowHeight(listStat.getRowHeight() + 5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listStat.setBackground(Color.WHITE); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listStat.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        TableColumnModel getColumnModel_ = listStat.getColumnModel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(0).setPreferredWidth(30);     //  "S", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(1).setPreferredWidth(120);    //  "작업명", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(2).setPreferredWidth(250);    //  "타겟", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(3).setPreferredWidth(130);    //  "시작시각", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(4).setPreferredWidth(130);    //  "종료시각", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(5).setPreferredWidth(70);     //  "건수(EA)", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(6).setPreferredWidth(70);     //  "작업시간(ms)", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(7).setPreferredWidth(70);     //  "평균작업시간", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(0).setMaxWidth(30); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(0).setMinWidth(30); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getColumnModel_.getColumn(0).setResizable(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listStat.setBorder(border); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (int ii = 0; ii < getColumnModel_.getColumnCount(); ii++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            getColumnModel_.getColumn(ii).setCellRenderer(this.cellStatRender); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public void LoadControllerInfo() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SortedMap<Integer, TrafPrcsInfr> ctlrMap = new TreeMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        for (Map.Entry<String, TbRseCtlr> e : AppRepository.getInstance().getCtlrMap().entrySet()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            TbRseCtlr obj = e.getValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            if (StringUtils.equals("N", obj.getDEL_YN())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//                ctlrMap.put(Integer.valueOf(obj.getID()), obj); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        List<TrafPrcsInfr> ctlrList = new ArrayList<TrafPrcsInfr>(ctlrMap.values()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        initTblListUI(ctlrList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        updateCommSttsTotal(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SortedMap<Integer, TrafPrcsVo> prcsMap = new TreeMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SortedMap<Integer, TrafStatVo> statMap = new TreeMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<TrafPrcsVo> prcsList = new ArrayList<TrafPrcsVo>(AppRepository.getInstance().getPrcsMap().values()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<TrafStatVo> statList = new ArrayList<TrafStatVo>(AppRepository.getInstance().getStatMap().values()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        initTblListUI(prcsList, statList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void updateTrafPrcs() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            TrafPrcsTableModel tableModel = (TrafPrcsTableModel) this.listPrcs.getModel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (tableModel != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                tableModel.fireTableDataChanged(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } catch (ClassCastException e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            log.error("Cast updateTrafPrcs Error"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void updateTrafStat() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            TrafStatTableModel tableModel = (TrafStatTableModel) this.listStat.getModel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (tableModel != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                tableModel.fireTableDataChanged(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } catch (ClassCastException e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            log.error("Cast updateTrafStat Error"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public void updateCtlrStts(TrafPrcsInfr obj) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (this.ctlrSttsTableModel == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (this.trafPrcsTableModel == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //        for (int ii = 0; ii < this.ctlrSttsTableModel.getRowCount(); ii++) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -401,10 +285,10 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //                break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        CtlrSttsTableModel tableModel = (CtlrSttsTableModel) tblCtlrList.getModel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (tableModel != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            tableModel.fireTableDataChanged(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        TrafPrcsTableModel tableModel = (TrafPrcsTableModel) tblCtlrList.getModel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        if (tableModel != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//            tableModel.fireTableDataChanged(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -425,112 +309,45 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         rootPanel = new JPanel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         rootPanel.setLayout(new GridLayoutManager(3, 1, new Insets(0, 0, 0, 0), -1, -1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlCtlr = new JPanel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlr.setLayout(new GridLayoutManager(3, 1, new Insets(10, 4, 0, 4), -1, -1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pnlCtlr.setLayout(new GridLayoutManager(1, 1, new Insets(10, 4, 0, 4), -1, -1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         rootPanel.add(pnlCtlr, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlrTitle = new JPanel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlrTitle.setLayout(new GridLayoutManager(1, 6, new Insets(0, 0, 0, 2), -1, -1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlr.add(pnlCtlrTitle, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final JLabel label1 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font label1Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label1.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (label1Font != null) label1.setFont(label1Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label1.setHorizontalAlignment(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label1.setHorizontalTextPosition(11); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label1.setIcon(new ImageIcon(getClass().getResource("/static/image/controller.png"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label1.setText("RSE 정보"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlrTitle.add(label1, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final Spacer spacer1 = new Spacer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlrTitle.add(spacer1, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, 1, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final JLabel label2 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font label2Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label2.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (label2Font != null) label2.setFont(label2Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label2.setText("RSE 전체: "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlrTitle.add(label2, new GridConstraints(0, 2, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final JLabel label3 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font label3Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label3.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (label3Font != null) label3.setFont(label3Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label3.setText("통신 이상: "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlrTitle.add(label3, new GridConstraints(0, 4, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblTotal = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font lblTotalFont = this.$$$getFont$$$("Malgun Gothic", Font.BOLD, 12, lblTotal.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (lblTotalFont != null) lblTotal.setFont(lblTotalFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblTotal.setHorizontalAlignment(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblTotal.setHorizontalTextPosition(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblTotal.setText("   -"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlrTitle.add(lblTotal, new GridConstraints(0, 3, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblError = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font lblErrorFont = this.$$$getFont$$$("Malgun Gothic", Font.BOLD, 12, lblError.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (lblErrorFont != null) lblError.setFont(lblErrorFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblError.setForeground(new Color(-65536)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblError.setHorizontalAlignment(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblError.setHorizontalTextPosition(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        lblError.setText("   -"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlrTitle.add(lblError, new GridConstraints(0, 5, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tabInfo = new JTabbedPane(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Font tabInfoFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, tabInfo.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (tabInfoFont != null) tabInfo.setFont(tabInfoFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pnlCtlr.add(tabInfo, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, new Dimension(200, 200), null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tabPrcs = new JPanel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tabPrcs.setLayout(new GridLayoutManager(1, 1, new Insets(0, 0, 0, 0), -1, -1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Font tabPrcsFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, tabPrcs.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (tabPrcsFont != null) tabPrcs.setFont(tabPrcsFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tabInfo.addTab("  교통정보가공  ", tabPrcs); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         final JScrollPane scrollPane1 = new JScrollPane(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlr.add(scrollPane1, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        tblCtlrList = new JTable(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font tblCtlrListFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, tblCtlrList.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (tblCtlrListFont != null) tblCtlrList.setFont(tblCtlrListFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        scrollPane1.setViewportView(tblCtlrList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlControl = new JPanel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlControl.setLayout(new GridLayoutManager(1, 8, new Insets(0, 0, 0, 2), 1, 1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlCtlr.add(pnlControl, new GridConstraints(2, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnImage = new JButton(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font btnImageFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnImage.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (btnImageFont != null) btnImage.setFont(btnImageFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnImage.setText("정지영상"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlControl.add(btnImage, new GridConstraints(0, 7, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final Spacer spacer2 = new Spacer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlControl.add(spacer2, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, 1, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnInitialize = new JButton(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font btnInitializeFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnInitialize.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (btnInitializeFont != null) btnInitialize.setFont(btnInitializeFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnInitialize.setText("초기화"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlControl.add(btnInitialize, new GridConstraints(0, 6, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnReset = new JButton(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font btnResetFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnReset.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (btnResetFont != null) btnReset.setFont(btnResetFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnReset.setText("리셋"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlControl.add(btnReset, new GridConstraints(0, 5, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnDisconnect = new JButton(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font btnDisconnectFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnDisconnect.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (btnDisconnectFont != null) btnDisconnect.setFont(btnDisconnectFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        btnDisconnect.setText("연결끊기"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlControl.add(btnDisconnect, new GridConstraints(0, 4, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        txtName = new JTextField(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        txtName.setEditable(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font txtNameFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtName.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (txtNameFont != null) txtName.setFont(txtNameFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        txtName.setHorizontalAlignment(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        txtName.setText("RSE 명칭"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlControl.add(txtName, new GridConstraints(0, 3, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, new Dimension(200, -1), new Dimension(200, -1), new Dimension(200, -1), 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        txtId = new JTextField(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        txtId.setEditable(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font txtIdFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtId.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (txtIdFont != null) txtId.setFont(txtIdFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        txtId.setHorizontalAlignment(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        txtId.setText("ID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlControl.add(txtId, new GridConstraints(0, 2, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, new Dimension(130, -1), new Dimension(130, -1), new Dimension(130, -1), 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final JLabel label4 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font label4Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label4.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (label4Font != null) label4.setFont(label4Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label4.setIcon(new ImageIcon(getClass().getResource("/static/image/select.png"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label4.setText("선택한 RSE  "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlControl.add(label4, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tabPrcs.add(scrollPane1, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listPrcs = new JTable(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        scrollPane1.setViewportView(listPrcs); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tabStat = new JPanel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tabStat.setLayout(new GridLayoutManager(1, 1, new Insets(0, 0, 0, 0), -1, -1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Font tabStatFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, tabStat.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (tabStatFont != null) tabStat.setFont(tabStatFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tabInfo.addTab("  통계정보생성  ", tabStat); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final JScrollPane scrollPane2 = new JScrollPane(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tabStat.add(scrollPane2, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        listStat = new JTable(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        scrollPane2.setViewportView(listStat); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlLog = new JPanel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlLog.setLayout(new GridLayoutManager(2, 1, new Insets(0, 4, 0, 4), -1, -1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         rootPanel.add(pnlLog, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, new Dimension(-1, 250), new Dimension(-1, 250), new Dimension(-1, 250), 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlLogTitle = new JPanel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlLogTitle.setLayout(new GridLayoutManager(1, 6, new Insets(0, 0, 0, 2), 1, 1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlLog.add(pnlLogTitle, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final JLabel label5 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font label5Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label5.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (label5Font != null) label5.setFont(label5Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label5.setHorizontalAlignment(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label5.setIcon(new ImageIcon(getClass().getResource("/static/image/logging.png"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label5.setText("시스템 로그"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlLogTitle.add(label5, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final Spacer spacer3 = new Spacer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlLogTitle.add(spacer3, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, 1, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final JLabel label1 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Font label1Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label1.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (label1Font != null) label1.setFont(label1Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label1.setHorizontalAlignment(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label1.setIcon(new ImageIcon(getClass().getResource("/static/image/logging.png"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label1.setText("시스템 로그"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pnlLogTitle.add(label1, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final Spacer spacer1 = new Spacer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pnlLogTitle.add(spacer1, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, 1, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         btnLogDirOpen = new JButton(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Font btnLogDirOpenFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnLogDirOpen.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (btnLogDirOpenFont != null) btnLogDirOpen.setFont(btnLogDirOpenFont); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -555,10 +372,10 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (btnLogCopyFont != null) btnLogCopy.setFont(btnLogCopyFont); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         btnLogCopy.setText("복사"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlLogTitle.add(btnLogCopy, new GridConstraints(0, 4, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final JScrollPane scrollPane2 = new JScrollPane(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font scrollPane2Font = this.$$$getFont$$$("D2Coding", Font.PLAIN, 12, scrollPane2.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (scrollPane2Font != null) scrollPane2.setFont(scrollPane2Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlLog.add(scrollPane2, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final JScrollPane scrollPane3 = new JScrollPane(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Font scrollPane3Font = this.$$$getFont$$$("D2Coding", Font.PLAIN, 12, scrollPane3.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (scrollPane3Font != null) scrollPane3.setFont(scrollPane3Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pnlLog.add(scrollPane3, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         taLog = new JTextArea(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         taLog.setBackground(new Color(-16777216)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         taLog.setCaretColor(new Color(-1)); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -568,12 +385,12 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         taLog.setForeground(new Color(-1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         taLog.setMargin(new Insets(4, 4, 4, 4)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         taLog.setText("[10:50:08.561] [ INFO] ************************************************************************************\n[10:50:08.561] [ INFO] **                   Center Communication Server Information                      **\n[10:50:08.561] [ INFO] **     bindAddress: 0.0.0.0\n[10:50:08.561] [ INFO] **      listenPort: 9901\n[10:50:08.561] [ INFO] **         backlog: 1024\n[10:50:08.561] [ INFO] **   acceptThreads: 16\n[10:50:08.561] [ INFO] **   workerThreads: 16\n[10:50:08.561] [ INFO] ************************************************************************************\n"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        scrollPane2.setViewportView(taLog); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        scrollPane3.setViewportView(taLog); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlStatusBar = new JPanel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlStatusBar.setLayout(new GridLayoutManager(1, 7, new Insets(0, 4, 4, 4), -1, -1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         rootPanel.add(pnlStatusBar, new GridConstraints(2, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final Spacer spacer4 = new Spacer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlStatusBar.add(spacer4, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, 1, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final Spacer spacer2 = new Spacer(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pnlStatusBar.add(spacer2, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, 1, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lblSystime = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Font lblSystimeFont = this.$$$getFont$$$("Malgun Gothic", Font.BOLD, 12, lblSystime.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (lblSystimeFont != null) lblSystime.setFont(lblSystimeFont); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -581,10 +398,10 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lblSystime.setHorizontalTextPosition(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lblSystime.setText(" 2022-08-04 13:24:33 "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlStatusBar.add(lblSystime, new GridConstraints(0, 6, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final JLabel label6 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label6.setIcon(new ImageIcon(getClass().getResource("/static/image/on.png"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label6.setText(" "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlStatusBar.add(label6, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final JLabel label2 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label2.setIcon(new ImageIcon(getClass().getResource("/static/image/on.png"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label2.setText(" "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pnlStatusBar.add(label2, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lblCpuRate = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Font lblCpuRateFont = this.$$$getFont$$$("Malgun Gothic", Font.BOLD, 12, lblCpuRate.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (lblCpuRateFont != null) lblCpuRate.setFont(lblCpuRateFont); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -599,20 +416,20 @@ public class MainUI { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lblMemoryUsage.setHorizontalTextPosition(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lblMemoryUsage.setText("    "); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pnlStatusBar.add(lblMemoryUsage, new GridConstraints(0, 3, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, new Dimension(40, -1), new Dimension(40, -1), new Dimension(40, -1), 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final JLabel label7 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font label7Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label7.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (label7Font != null) label7.setFont(label7Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label7.setHorizontalAlignment(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label7.setHorizontalTextPosition(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label7.setText("  CPU 사용율(%):"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlStatusBar.add(label7, new GridConstraints(0, 4, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        final JLabel label8 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Font label8Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label8.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (label8Font != null) label8.setFont(label8Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label8.setHorizontalAlignment(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label8.setHorizontalTextPosition(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        label8.setText("  메모리 사용율(%):"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        pnlStatusBar.add(label8, new GridConstraints(0, 2, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final JLabel label3 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Font label3Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label3.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (label3Font != null) label3.setFont(label3Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label3.setHorizontalAlignment(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label3.setHorizontalTextPosition(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label3.setText("  CPU 사용율(%):"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pnlStatusBar.add(label3, new GridConstraints(0, 4, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final JLabel label4 = new JLabel(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Font label4Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label4.getFont()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (label4Font != null) label4.setFont(label4Font); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label4.setHorizontalAlignment(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label4.setHorizontalTextPosition(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        label4.setText("  메모리 사용율(%):"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pnlStatusBar.add(label4, new GridConstraints(0, 2, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 |