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

📄 configdialog.java

📁 jxta_src_2.41b jxta 2.41b 最新版源码 from www.jxta.org
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
        private final CardLayout addrLayout;                private final Panel addrPanel;        private final TextField interfaceAddr;        private final TextField localPort;                private final Choice ips;                public IfAddrPanel(String defaultInterfaceAddr, String defaultPort) {                        super(new FlowLayout(FlowLayout.LEADING, 0, 0));                        ips = new Choice();            boolean modeManual = false;                        ips.add("Any/All Local Addresses");                        try {                Iterator allIntf = IPUtils.getAllLocalAddresses();                boolean sawValid = false;                                while (allIntf.hasNext()) {                    InetAddress anAddr = (InetAddress) allIntf.next();                                        if (IPUtils.LOOPBACK.equals(anAddr)) {                        continue;                    }                                        ips.add( IPUtils.getHostAddress(anAddr) );                    sawValid = true;                }                                if (!sawValid) {                    modeManual = true;                }                                // if an address was previously configured, switch to manual                // if we do not find any interface, switch to manual too.                if (defaultInterfaceAddr != null) {                    InetAddress defaultIntf = InetAddress.getByName(defaultInterfaceAddr);                                        if (!IPUtils.ANYADDRESS.equals(defaultIntf)) {                        modeManual = true;                                                // However, if this address is in the automatic list,                        // switch back to automatic and select it.                        allIntf = IPUtils.getAllLocalAddresses();                                                while (allIntf.hasNext()) {                            InetAddress anAddr = (InetAddress) allIntf.next();                                                        if (defaultIntf.equals(anAddr)) {                                modeManual = false;                                ips.select(defaultInterfaceAddr);                            }                        }                    }                }            } catch (Exception e) {                modeManual = true;            }                        manual = new Checkbox("Manual", null, modeManual);            add(manual);            manual.addItemListener(this);                        addrLayout = new CardLayout();            addrPanel = new Panel(addrLayout);                        Panel autoPanel = new Panel(new FlowLayout(FlowLayout.LEADING));                        autoPanel.add(ips);                        Panel manPanel = new Panel(new FlowLayout(FlowLayout.LEADING));                        interfaceAddr = new TextField(defaultInterfaceAddr, 20);            manPanel.add(interfaceAddr);                        addrPanel.add(manPanel, "man");            addrPanel.add(autoPanel, "auto");                        add(addrPanel);                        localPort = new TextField(defaultPort, 6);            add(localPort);                        setManual(modeManual);        }                /**         *  {@inheritDoc}         **/        private void setManual(boolean manMode) {            addrLayout.show(addrPanel, manMode ? "man" : "auto");                        this.validate();        }                /**         *  {@inheritDoc}         **/        public void setEnabled(boolean enabled) {            super.setEnabled(enabled);                        manual.setEnabled(enabled);            ips.setEnabled(enabled);            interfaceAddr.setEnabled(enabled);            localPort.setEnabled(enabled);        }                /**         *  {@inheritDoc}         **/        public void itemStateChanged(ItemEvent e) {            if (e.getSource() == manual) {                setManual(manual.getState());            }        }                public String getAddress() {            if (manual.getState()) {                return interfaceAddr.getText().trim();            } else {                return ips.getSelectedItem().trim();            }        }                public String getPort() {            return localPort.getText().trim();        }                public String getMode() {            return manual.getState() ? "manual" : "auto";        }            }            static final class IPTptPanel extends BorderPanelGBL implements ItemListener {                private static final int TYPE_HTTP = 0;        private static final int TYPE_TCP = 1;                private final Checkbox useMe;        private final Checkbox pubAddrOnly;        private final Checkbox multicast;        private final Checkbox clientEnabled;                private final IfAddrPanel ifAddr;        private final HostPortPanel publicAddr;                public IPTptPanel(int type,        boolean defaultState,        String name,        String defaultInterfaceAddr,        String defaultPort,        boolean clientState,        boolean serverState,        String defaultPublicAddr,        String defaultPublicPort,        boolean pubAddrOnlyState        ) {            this(type, defaultState, name, defaultInterfaceAddr, defaultPort, clientState, serverState, defaultPublicAddr, defaultPublicPort,            pubAddrOnlyState, false);        }                public IPTptPanel(int type,        boolean defaultState,        String name,        String defaultInterfaceAddr,        String defaultPort,        boolean clientState,        boolean serverState,        String defaultPublicAddr,        String defaultPublicPort,        boolean pubAddrOnlyState,        boolean multicastState) {                        super(name);                        ifAddr = new IfAddrPanel(defaultInterfaceAddr, defaultPort);                        useMe = new Checkbox("Enabled", null, defaultState);                        if (type == TYPE_TCP) {                multicast = new Checkbox("Multicast", null, multicastState);            } else {                multicast = null;            }                        clientEnabled = new Checkbox("Enable Outgoing connections", null, clientState);                        pubAddrOnly = new Checkbox("Hide private addresses", null, pubAddrOnlyState);                        publicAddr = new HostPortPanel("Enable Incoming Connections", "(Optional) Public address", defaultPublicAddr, defaultPublicPort,            serverState);                        GridBagConstraints constraints = new GridBagConstraints();                        constraints.weightx = 1.0;            constraints.weighty = 1.0;                        constraints.gridx = 0;            constraints.gridy = 1;            constraints.anchor = GridBagConstraints.FIRST_LINE_START;            add(useMe, constraints);                        if (type == TYPE_TCP) {                constraints.anchor = GridBagConstraints.FIRST_LINE_END;                add(multicast, constraints);            }                        constraints.gridx = 0;            constraints.gridy++;            constraints.anchor = GridBagConstraints.LINE_START;            add(ifAddr, constraints);                        constraints.gridx = 0;            constraints.gridy++;                        constraints.anchor = GridBagConstraints.LINE_START;            add(clientEnabled, constraints);                        constraints.anchor = GridBagConstraints.EAST;            add(pubAddrOnly, constraints);                        constraints.gridx = 0;            constraints.gridy++;                        constraints.anchor = GridBagConstraints.LINE_START;            add(publicAddr, constraints);            publicAddr.setState(serverState);                        setState(defaultState);            useMe.addItemListener(this);        }                /**         *  {@inheritDoc}         **/        public void setState(boolean state) {            useMe.setState(state);            ifAddr.setEnabled(state);            publicAddr.setEnabled(state);            if (multicast != null) {                multicast.setEnabled(state);            }            clientEnabled.setEnabled(state);            pubAddrOnly.setEnabled(state);        }                /**         *  {@inheritDoc}         **/        public boolean getState() {            return useMe.getState();        }                /**         *  {@inheritDoc}         **/        public void itemStateChanged(ItemEvent e) {            setState(useMe.getState());        }                public String getInterfaceAddress() {            return ifAddr.getAddress().trim();        }                public String getConfigMode() {            return ifAddr.getMode();        }                public boolean getPubAddrOnly() {            return pubAddrOnly.getState();        }                public void setPubAddrOnly(boolean state) {            pubAddrOnly.setState(state);        }    }            /**     *  Manages Peer Identity configuration     **/    final class IdPanel extends Panel implements ActionListener {                private final TextField peerName;        private final TextField passwd;        private final TextField vpasswd;        private final Button file;        private final TextField certFile;                public IdPanel(String defaultPeerName, boolean needSecurityConfig) {                        super(new GridBagLayout());                        peerName = new TextField(defaultPeerName, 20);                        GridBagConstraints constraints = new GridBagConstraints();                        constraints.gridx = 0;            constraints.gridy = 0;            constraints.anchor = GridBagConstraints.FIRST_LINE_END;            add(new Label("Peer Name", Label.RIGHT), constraints);                        constraints.gridx++;            constraints.anchor = GridBagConstraints.FIRST_LINE_START;            add(peerName, constraints);                        if (needSecurityConfig) {                // FIXME 20031005 bondolo@jxta.org see <http://platform.jxta.org/issues/show_bug.cgi?id=838>                passwd = new TextField(System.getProperty("net.jxta.tls.password", ""), 20);                vpasswd = new TextField(System.getProperty("net.jxta.tls.password", ""), 20);                passwd.setEchoChar('*');                vpasswd.setEchoChar('*');                file = new Button("Import Root Certificate File...");                certFile = new TextField("", 40);                certFile.setEditable(false);                                constraints.gridx = 0;                constraints.gridy++;                constraints.anchor = GridBagConstraints.LINE_END;                add(new Label("Password", Label.RIGHT), constraints);                                constraints.gridx++;                constraints.anchor = GridBagConstraints.LINE_START;                add(passwd, constraints);                                constraints.gridx = 0;                constraints.gridy++;                constraints.anchor = GridBagConstraints.LINE_END;                add(new Label("Verify Password", Label.RIGHT), constraints);                                constraints.gridx++;                constraints.anchor = GridBagConstraints.LINE_START;                add(vpasswd, constraints);                                constraints.gridx = 0;                constraints.gridy += 2;                constraints.anchor = GridBagConstraints.LINE_START;                add(file, constraints);                                constraints.gridx++;                constraints.anchor = GridBagConstraints.CENTER;                add(certFile, constraints);                                file.addActionListener(this);            } else {                passwd = null;                vpasswd = null;                file = null;                certFile = null;            }        }                /**         *  {@inheritDoc}         **/        public String getName() {            return peerName.getText().trim();        }                public String getPassword() {            return passwd.getText();        }                public String getVerifyPassword() {            return vpasswd.getText();        }                public File getCertFile() {            String filepath = certFile.getText();                        if (0 == filepath.length()) {                return null;            }                        return new File(filepath);        }                public void clearPasswords() {

⌨️ 快捷键说明

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