⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cconnectiondialog.java

📁 Java写的ERP系统
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        fwPortField.addActionListener(this);
        bTestDB.addActionListener(this);
        bOK.addActionListener(this);
        bCancel.addActionListener(this);

        //
        if (!Ini.isClient())
        {
            appsHostLabel.setVisible(false);
            appsHostField.setVisible(false);
            appsPortLabel.setVisible(false);
            appsPortField.setVisible(false);
            bTestApps.setVisible(false);
        }
    }   //  jbInit

    /**
     *  Set Busy - lock UI
     *  @param busy busy
     */
    private void setBusy (boolean busy)
    {
        if (busy)
            this.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
        else
            this.setCursor(Cursor.getDefaultCursor());
        m_updating = busy;
    }   //  setBusy

    /**
     *  Set Connection
     *  @param cc - if null use current connection
     */
    public void setConnection (CConnection cc)
    {
        m_cc = cc;
        if (m_cc == null)
        {
            m_cc = CConnection.get();
            m_cc.setName();
        }
        /** @todo copy to preserve old values */
        m_ccResult = m_cc;
        //
        m_cc.setType(m_cc.getType());   //  sets defaults
        updateInfo();
    }   //  setConnection

    /**
     *  Get Connection
     *  @return CConnection
     */
    public CConnection getConnection()
    {
        return m_ccResult;
    }   //  getConnection;

    /**
     *  ActionListener
     *  @param e event
     */
    public void actionPerformed(ActionEvent e)
    {
        if (m_updating)
            return;
        Object src = e.getSource();

        if (src == bOK)
        {
            m_cc.setName();
            m_ccResult = m_cc;
            dispose();
            return;
        }
        else if (src == bCancel)
        {
            m_cc.setName();
            dispose();
            return;
        }

        if (Ini.isClient())
        {
            m_cc.setAppsHost(appsHostField.getText());
            m_cc.setAppsPort(appsPortField.getText());
        }
        else
            m_cc.setAppsHost("localhost");

        m_cc.setDbHost(hostField.getText());
        m_cc.setDbPort(portField.getText());
        m_cc.setDbName(sidField.getText());
        m_cc.setRMIoverHTTP(cbRMIoverHTTP.isSelected());        
        m_cc.setDbUid(dbUidField.getText());
        m_cc.setDbPwd(String.valueOf(dbPwdField.getPassword()));
        m_cc.setBequeath(cbBequeath.isSelected());
        m_cc.setViaFirewall(cbFirewall.isSelected());
        m_cc.setFwHost(fwHostField.getText());
        m_cc.setFwPort(fwPortField.getText());
        //
        if (src == bTestApps)
            cmd_testApps();

        //  Database Selection Changed
        else if (src == typeField)
            m_cc.setType(typeField.getSelectedItem().toString());
        //
        else if (src == bTestDB)
            cmd_testDB();

        //  Name
        if (src == nameField)
            m_cc.setName(nameField.getText());

        updateInfo();
    }   //  actionPerformed

    /**
     *  Update Fields from Connection
     */
    private void updateInfo()
    {
        m_updating = true;
        nameField.setText(m_cc.getName());
        appsHostField.setText(m_cc.getAppsHost());
        appsPortField.setText(String.valueOf(m_cc.getAppsPort()));
        cbRMIoverHTTP.setSelected(m_cc.isRMIoverHTTP());        
        bTestApps.setIcon(getStatusIcon(m_cc.isAppsServerOK(false)));
    //	bTestApps.setToolTipText(m_cc.getRmiUri());

        cbOverwrite.setVisible(m_cc.isAppsServerOK(false));
        boolean rw = cbOverwrite.isSelected() || !m_cc.isAppsServerOK(false);
        //
        typeLabel.setReadWrite(rw);
        typeField.setReadWrite(rw);
        typeField.setSelectedItem(m_cc.getType());
        //
        hostLabel.setReadWrite(rw);
        hostField.setReadWrite(rw);
        hostField.setText(m_cc.getDbHost());
        portLabel.setReadWrite(rw);
        portField.setReadWrite(rw);
        portField.setText(String.valueOf(m_cc.getDbPort()));
        sidLabel.setReadWrite(rw);
        sidField.setReadWrite(rw);
        sidField.setText(m_cc.getDbName());
        //
        dbUidField.setText(m_cc.getDbUid());
        dbPwdField.setText(m_cc.getDbPwd());
        //
        cbBequeath.setReadWrite(rw);
        cbBequeath.setEnabled(m_cc.isOracle());
        cbBequeath.setSelected(m_cc.isBequeath());
        //
        boolean fwEnabled = m_cc.isViaFirewall() && m_cc.isOracle();
        cbFirewall.setReadWrite(rw);
        cbFirewall.setSelected(fwEnabled);
        cbFirewall.setEnabled(m_cc.isOracle());
        fwHostLabel.setReadWrite(fwEnabled && rw);
        fwHostField.setReadWrite(fwEnabled && rw);
        fwHostField.setText(m_cc.getFwHost());
        fwPortLabel.setReadWrite(fwEnabled && rw);
        fwPortField.setReadWrite(fwEnabled && rw);
        fwPortField.setText(String.valueOf(m_cc.getFwPort()));
        //
        bTestDB.setToolTipText(m_cc.getConnectionURL());
        bTestDB.setIcon(getStatusIcon(m_cc.isDatabaseOK()));
        m_updating = false;
    }   //  updateInfo

    /**
     *  Get Status Icon - ok or not
     *  @param ok ok
     *  @return Icon
     */
    private Icon getStatusIcon (boolean ok)
    {
        if (ok)
            return bOK.getIcon();
        else
            return bCancel.getIcon();
    }   //  getStatusIcon

    /**
     *  Test Database connection
     */
    private void cmd_testDB()
    {
        setBusy (true);
        Exception e = m_cc.testDatabase();
        if (e != null)
        {
            JOptionPane.showMessageDialog(this,
                e,		//	message
                res.getString("ConnectionError") + " - " + m_cc.getConnectionURL(),
                JOptionPane.ERROR_MESSAGE);
        }
        setBusy (false);
    }   //  cmd_testDB

    /**
     *  Test Application connection
     */
    private void cmd_testApps()
    {
        setBusy (true);
        Exception e = m_cc.testAppsServer();
        if (e != null)
        {
            JOptionPane.showMessageDialog(this,
                e.getLocalizedMessage(),
                res.getString("ServerNotActive") + " - " + m_cc.getAppsHost(),
                JOptionPane.ERROR_MESSAGE);
        }
        setBusy (false);
    }   //  cmd_testApps

}   //  CConnectionDialog

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -