KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > j2ee > websphere6 > ui > ConnectionTabVisualPanel


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19 package org.netbeans.modules.j2ee.websphere6.ui;
20
21 import java.util.Vector JavaDoc;
22 import java.awt.event.*;
23 import javax.swing.*;
24 import org.openide.ErrorManager;
25 import org.openide.util.NbBundle;
26 import org.netbeans.modules.j2ee.websphere6.ui.InstancesModel;
27 import org.netbeans.modules.j2ee.websphere6.WSURIManager;
28 import org.netbeans.modules.j2ee.websphere6.j2ee.DeploymentManagerProperties;
29 import org.netbeans.modules.j2ee.deployment.plugins.api.InstanceProperties;
30 import org.openide.awt.Mnemonics;
31 /**
32  *
33  * @author dlm198383
34  */

35 public class ConnectionTabVisualPanel extends javax.swing.JPanel JavaDoc {
36     
37     
38     private final DeploymentManagerProperties targetData;
39     
40     
41     /** Creates new form ConnectionTabVisualPanel */
42     public class TabServerProperties extends ServerProperties {
43         public TabServerProperties() {
44             super();
45         }
46         public TabServerProperties(JComboBox serverCombobox,
47                 JComboBox localInstancesCombobox,
48                 JTextField domainPathField,
49                 JTextField hostField,
50                 JTextField portField) {
51             super(serverCombobox,
52                     localInstancesCombobox,
53                     domainPathField,
54                     hostField,
55                     portField);
56         }
57         public class TabServerTypeActionListener extends ServerTypeActionListener{
58             public void actionPerformed(ActionEvent e) {
59                 super.actionPerformed(e);
60                 isValid();
61             }
62         }
63     }
64     TabServerProperties tabServerProperties=null;
65     
66     public ConnectionTabVisualPanel(DeploymentManagerProperties data) {
67         this.targetData=data;
68         initComponents();
69         tabServerProperties=new TabServerProperties(
70                 serverTypeCombo,
71                 localInstancesCombo,
72                 profilePathField,
73                 hostField,
74                 portField);
75         InstanceProperties ips = targetData. getInstanceProperties();
76         ips.refreshServerInstance();
77         String JavaDoc url = (String JavaDoc) ips.getProperty("url"); // NOI18N
78
int dex = url.indexOf(WSURIManager.WSURI);
79         if (dex > -1)
80             url = url.substring(dex+WSURIManager.WSURI.length());
81         
82         localInstancesCombo.setModel(
83                 new InstancesModel(
84                 tabServerProperties.getServerInstances(
85                 targetData.getServerRoot())));
86         for(int i=0;i<localInstancesCombo.getModel().getSize();i++) {
87             if(((Instance)localInstancesCombo.getItemAt(i)).getDomainPath().equals(
88                     targetData.getDomainRoot())) {
89                     localInstancesCombo.setSelectedIndex(i);
90                     break;
91             }
92         }
93         
94         //localInstancesCombo.addActionListener(tabServerProperties.getInstanceSelectionListener());
95

96         
97         dex=url.indexOf(":");
98         if(dex>-1)
99             url=url.substring(0,dex);
100         hostField.setText(url);
101         
102         
103         userNameField.setText(targetData.getUserName());
104         userNameField.addKeyListener(new java.awt.event.KeyAdapter JavaDoc() {
105             public void keyReleased(java.awt.event.KeyEvent JavaDoc evt) {
106                 String JavaDoc userName = userNameField.getText();
107                 targetData.setUserName(userName);
108             }
109         });
110         
111         passwordField.setText(targetData.getPassword());
112         passwordField.addKeyListener(new java.awt.event.KeyAdapter JavaDoc() {
113             public void keyReleased(java.awt.event.KeyEvent JavaDoc evt) {
114                 String JavaDoc password = new String JavaDoc(passwordField.getPassword());
115                 targetData.setPassword(password);
116             }
117         });
118         
119         
120         
121         //domainField.setText(targetData.getDomainName());
122
profilePathField.setText(targetData.getDomainRoot());
123         portField.setText(targetData.getPort());
124         //portField.setModel(new SpinnerNumberModel(0,0,65535,1));
125
//portField.setValue(new Integer(targetData.getPort()));
126
/*
127         portField.addChangeListener(new javax.swing.event.ChangeListener() {
128             public void stateChanged(javax.swing.event.ChangeEvent e) {
129                 String port = portField.getValue().toString();
130          
131                 if(!port.trim().matches("[0-9]+")){
132                     portField.setValue(new Integer(targetData.getPort()));
133                 } else {
134                     targetData.setPort(port);
135                 }
136             }
137         });
138          */

139         /*
140         portField.addKeyListener(new java.awt.event.KeyAdapter() {
141             public void keyReleased(java.awt.event.KeyEvent evt) {
142                 //String port = portField.getValue().toString();
143                 String port = portField.getText();
144                 if(!port.trim().matches("[0-9]+")){
145                     //portField.setValue(new Integer(targetData.getPort()));
146                     portField.setText(targetData.getPort());
147                 } else if((new java.lang.Integer(port)).intValue() > 65535) {
148                     portField.setText(targetData.getPort());
149                 } else {
150                     targetData.setPort(port);
151                 }
152             }
153             public void keyPressed(java.awt.event.KeyEvent evt) {
154                 //String port = portField.getValue().toString();
155                 String port = portField.getText();
156                 if(!port.trim().matches("[0-9]+")){
157                     //portField.setValue(new Integer(targetData.getPort()));
158                     portField.setText(targetData.getPort());
159                 } else if((new java.lang.Integer(port)).intValue() > 65535) {
160                     portField.setText(targetData.getPort());
161                 } else {
162                     targetData.setPort(port);
163                 }
164             }
165         });
166         */

167         
168         /*serverTypeCombo.addItem(NbBundle.getMessage(ConnectionTabVisualPanel.class, "TXT_serverTypeLocal"));
169         serverTypeCombo.addItem(NbBundle.getMessage(ConnectionTabVisualPanel.class,"TXT_serverTypeRemote"));
170          */

171         Vector JavaDoc types=new Vector JavaDoc();
172         types.add(NbBundle.getMessage(ConnectionTabVisualPanel.class, "TXT_ServerTypeLocal"));
173         types.add(NbBundle.getMessage(ConnectionTabVisualPanel.class,"TXT_ServerTypeRemote"));
174         serverTypeCombo.setModel(new InstancesModel(types));
175         
176         //serverTypeCombo.addActionListener(tabServerProperties.getServerTypeActionListener());
177

178         /*
179         serverTypeCombo.addItemListener(new java.awt.event.ItemListener() {
180             public void itemStateChanged(java.awt.event.ItemEvent e) {
181                 if (serverTypeCombo.getSelectedItem().equals(NbBundle.
182                         getMessage(ServerProperties.class,
183                         "TXT_serverTypeLocal"))) {
184                     targetData.setIsLocal(targetData.getIsLocal().equals("true")?"false":"true");
185                 }
186             }
187          
188         }
189         );*/

190         
191         portField.setEditable(false);
192         //portField.setEnabled(false);
193
hostField.setEditable(false);
194         String JavaDoc getLocal=targetData.getIsLocal();
195         if(getLocal!=null)
196             serverTypeCombo.setSelectedItem(getLocal.equals("true")?
197                 NbBundle.getMessage(ConnectionTabVisualPanel.class, "TXT_ServerTypeLocal"):
198                 NbBundle.getMessage(ConnectionTabVisualPanel.class, "TXT_ServerTypeRemote"));
199         
200         //setName(NbBundle.getMessage(ConnectionTabVisualPanel.class, "TITLE_AddUserDefinedLocalServerPanel"));
201

202         setMnemonics(jLabel1);
203         setMnemonics(jLabel2);
204         setMnemonics(jLabel3);
205         setMnemonics(jLabel4);
206         setMnemonics(jLabel5);
207         setMnemonics(jLabel6);
208         setMnemonics(jLabel7);
209         
210     }
211     private void setMnemonics(JLabel label) {
212         String JavaDoc name = label.getText();
213         int index = Mnemonics.findMnemonicAmpersand(name);
214         if(index < 0) {
215             Mnemonics.setLocalizedText(label,name);
216             label.setDisplayedMnemonic(name.charAt(0));
217         } else {
218             Mnemonics.setLocalizedText(label,name.substring(0,index) + name.substring(index+1));
219             label.setDisplayedMnemonic(name.charAt(index+1));
220         }
221     }
222     
223     /**
224      * Checks whether the specified path is the valid domain root directory.
225      *
226      * @return true if the path is the valid domain root, false otherwise
227      */

228     public boolean isValid() {
229         
230         // if the server instance is local, then check the profile root
231
// directory for validity
232
if (serverTypeCombo.getSelectedItem().equals(NbBundle.getMessage(
233                 ConnectionTabVisualPanel.class,
234                 "TXT_ServerTypeLocal"))) { // NOI18N
235
if (!tabServerProperties.isValidDomainRoot(profilePathField.getText())) {
236                 JOptionPane.showMessageDialog(null,
237                         NbBundle.getMessage(ConnectionTabVisualPanel.class,
238                         "ERR_InvalidDomainRoot")); // NOI18N
239
return false;
240             }
241         }
242         
243         // check the host field (not empty)
244
if (hostField.getText().trim().equals("")) {
245             JOptionPane.showMessageDialog(null,
246                     NbBundle.getMessage(ConnectionTabVisualPanel.class,
247                     "ERR_InvalidHost")); // NOI18N
248
return false;
249         }
250         
251         // check the port field (not empty and a positive integer)
252
//if (!portField.getText().trim().matches("[0-9]+")) {
253
//if (!portField.getValue().toString().trim().matches("[0-9]+")) {
254
if (!portField.getText().trim().matches("[0-9]+")) {
255             JOptionPane.showMessageDialog(null,
256                     NbBundle.getMessage(ConnectionTabVisualPanel.class,
257                     "ERR_InvalidPort")); // NOI18N
258
return false;
259         }
260         
261         // no checks for username & password as they may be intentionally blank
262

263         // save the data to the parent instantiating iterator
264

265         targetData.setDomainRoot(profilePathField.getText());
266         targetData.setHost(hostField.getText());
267         //targetData.setPort(portField.getValue().toString());
268
targetData.setPort(portField.getText());
269         targetData.setUserName(userNameField.getText());
270         targetData.setPassword(new String JavaDoc(
271                 passwordField.getPassword()));
272         
273         targetData.setIsLocal(serverTypeCombo.getSelectedItem().
274                 equals(NbBundle.getMessage(ConnectionTabVisualPanel.class,
275                 "TXT_ServerTypeLocal")) ? "true" : "false"); // NOI18N
276

277         targetData.setServerName(((Instance) localInstancesCombo.
278                 getSelectedItem()).getName());
279         targetData.setConfigXmlPath(((Instance) localInstancesCombo.
280                 getSelectedItem()).getConfigXmlPath());
281         
282         targetData.getInstanceProperties().refreshServerInstance();
283         // everything seems ok
284
return true;
285     }
286     
287     
288     
289     /** This method is called from within the constructor to
290      * initialize the form.
291      * WARNING: Do NOT modify this code. The content of this method is
292      * always regenerated by the Form Editor.
293      */

294     // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
295
private void initComponents() {
296         jLabel2 = new javax.swing.JLabel JavaDoc();
297         serverTypeCombo = new javax.swing.JComboBox JavaDoc();
298         jLabel3 = new javax.swing.JLabel JavaDoc();
299         localInstancesCombo = new javax.swing.JComboBox JavaDoc();
300         jLabel4 = new javax.swing.JLabel JavaDoc();
301         jLabel5 = new javax.swing.JLabel JavaDoc();
302         hostField = new javax.swing.JTextField JavaDoc();
303         jLabel6 = new javax.swing.JLabel JavaDoc();
304         jLabel7 = new javax.swing.JLabel JavaDoc();
305         userNameField = new javax.swing.JTextField JavaDoc();
306         passwordField = new javax.swing.JPasswordField JavaDoc();
307         profilePathField = new javax.swing.JTextField JavaDoc();
308         jLabel1 = new javax.swing.JLabel JavaDoc();
309         portField = new javax.swing.JTextField JavaDoc();
310
311         jLabel2.setLabelFor(serverTypeCombo);
312         jLabel2.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("LBL_LocalRemote"));
313
314         serverTypeCombo.setEnabled(false);
315         serverTypeCombo.getAccessibleContext().setAccessibleName(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("TTL_AccessMethod"));
316         serverTypeCombo.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("MSG_AccessMethodDescription"));
317
318         jLabel3.setLabelFor(localInstancesCombo);
319         jLabel3.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("LBL_LocalInstances"));
320         jLabel3.getAccessibleContext().setAccessibleName("Local Instances Label");
321
322         localInstancesCombo.setEnabled(false);
323         localInstancesCombo.getAccessibleContext().setAccessibleName(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("TTL_LocalInstances"));
324         localInstancesCombo.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("MSG_LocalInstances"));
325
326         jLabel4.setLabelFor(hostField);
327         jLabel4.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("LBL_Host"));
328         jLabel4.getAccessibleContext().setAccessibleName("Host Label");
329
330         jLabel5.setLabelFor(portField);
331         jLabel5.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("LBL_Port"));
332         jLabel5.getAccessibleContext().setAccessibleName("Port Label");
333
334         hostField.setEditable(false);
335         hostField.getAccessibleContext().setAccessibleName(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("TTL_Host"));
336         hostField.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("MSG_Host"));
337
338         jLabel6.setLabelFor(userNameField);
339         jLabel6.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("LBL_Username"));
340         jLabel6.getAccessibleContext().setAccessibleName("Username Label");
341
342         jLabel7.setLabelFor(passwordField);
343         jLabel7.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("LBL_Password"));
344         jLabel7.getAccessibleContext().setAccessibleName("Password Label");
345
346         userNameField.getAccessibleContext().setAccessibleName(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("TTL_Username"));
347         userNameField.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("MSG_Username"));
348
349         passwordField.getAccessibleContext().setAccessibleName(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("TTL_Password"));
350         passwordField.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("MSG_Password"));
351
352         profilePathField.setEditable(false);
353         profilePathField.getAccessibleContext().setAccessibleName(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("TTL_ProfilePath"));
354         profilePathField.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("MSG_ProfilePath"));
355
356         jLabel1.setLabelFor(profilePathField);
357         jLabel1.setText(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("LBL_ProfilePath"));
358
359         portField.setEditable(false);
360         portField.addFocusListener(new java.awt.event.FocusAdapter JavaDoc() {
361             public void focusLost(java.awt.event.FocusEvent JavaDoc evt) {
362                 portFieldFocusLost(evt);
363             }
364         });
365
366         portField.getAccessibleContext().setAccessibleName(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("TTL_Port"));
367         portField.getAccessibleContext().setAccessibleDescription(java.util.ResourceBundle.getBundle("org/netbeans/modules/j2ee/websphere6/ui/Bundle").getString("MSG_Port"));
368
369         org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(this);
370         this.setLayout(layout);
371         layout.setHorizontalGroup(
372             layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
373             .add(layout.createSequentialGroup()
374                 .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
375                     .add(layout.createSequentialGroup()
376                         .addContainerGap()
377                         .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
378                             .add(jLabel3)
379                             .add(jLabel2)
380                             .add(jLabel1))
381                         .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
382                         .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false)
383                             .add(serverTypeCombo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 90, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
384                             .add(localInstancesCombo, 0, 320, Short.MAX_VALUE)
385                             .add(profilePathField)))
386                     .add(layout.createSequentialGroup()
387                         .add(36, 36, 36)
388                         .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
389                             .add(jLabel7)
390                             .add(jLabel6)
391                             .add(jLabel5))
392                         .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
393                         .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
394                             .add(portField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 65, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
395                             .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false)
396                                 .add(passwordField)
397                                 .add(userNameField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 117, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))))
398                     .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
399                         .add(62, 62, 62)
400                         .add(jLabel4)
401                         .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
402                         .add(hostField, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 374, Short.MAX_VALUE)))
403                 .addContainerGap())
404         );
405         layout.setVerticalGroup(
406             layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
407             .add(layout.createSequentialGroup()
408                 .addContainerGap()
409                 .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
410                     .add(jLabel2)
411                     .add(serverTypeCombo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
412                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
413                 .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
414                     .add(jLabel3)
415                     .add(localInstancesCombo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
416                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
417                 .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
418                     .add(profilePathField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
419                     .add(jLabel1))
420                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
421                 .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
422                     .add(jLabel4)
423                     .add(hostField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
424                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
425                 .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
426                     .add(jLabel5)
427                     .add(portField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
428                 .add(8, 8, 8)
429                 .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
430                     .add(jLabel6)
431                     .add(userNameField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
432                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
433                 .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
434                     .add(passwordField, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
435                     .add(jLabel7))
436                 .addContainerGap())
437         );
438     }// </editor-fold>//GEN-END:initComponents
439

440     private void portFieldFocusLost(java.awt.event.FocusEvent JavaDoc evt) {//GEN-FIRST:event_portFieldFocusLost
441
String JavaDoc port = portField.getText();
442         if(!port.trim().matches("[0-9]+")){
443             JOptionPane.showMessageDialog(portField,NbBundle.getMessage(ConnectionTabVisualPanel.class,"ERR_InvalidPort"));
444         } else if((new java.lang.Integer JavaDoc(port)).intValue() > 65535) {
445             JOptionPane.showMessageDialog(portField,NbBundle.getMessage(ConnectionTabVisualPanel.class,"ERR_InvalidPort"));
446         } else {
447             targetData.setPort(port);
448         }
449     }//GEN-LAST:event_portFieldFocusLost
450

451     
452     // Variables declaration - do not modify//GEN-BEGIN:variables
453
private javax.swing.JTextField JavaDoc hostField;
454     private javax.swing.JLabel JavaDoc jLabel1;
455     private javax.swing.JLabel JavaDoc jLabel2;
456     private javax.swing.JLabel JavaDoc jLabel3;
457     private javax.swing.JLabel JavaDoc jLabel4;
458     private javax.swing.JLabel JavaDoc jLabel5;
459     private javax.swing.JLabel JavaDoc jLabel6;
460     private javax.swing.JLabel JavaDoc jLabel7;
461     private javax.swing.JComboBox JavaDoc localInstancesCombo;
462     private javax.swing.JPasswordField JavaDoc passwordField;
463     private javax.swing.JTextField JavaDoc portField;
464     private javax.swing.JTextField JavaDoc profilePathField;
465     private javax.swing.JComboBox JavaDoc serverTypeCombo;
466     private javax.swing.JTextField JavaDoc userNameField;
467     // End of variables declaration//GEN-END:variables
468

469     
470     
471     
472     
473     
474     
475     
476     
477     /**
478      * A listener that reacts to the change of the server type combobox,
479      * is the local server type is selected we should disable several fields
480      * and enable some others instead.
481      *
482      * @author Kirill Sorokin, edited by Dmitry Lipin
483      */

484     private class ServerTypeActionListener implements ActionListener {
485         /**
486          * The main action handler. This method is called when the combobox
487          * value changes
488          */

489         
490         public void actionPerformed(ActionEvent e) {
491             // if the selected type is local
492
if (serverTypeCombo.getSelectedItem().equals(NbBundle.
493                     getMessage(ServerProperties.class,
494                     "TXT_ServerTypeLocal"))) { // NOI18N
495
Instance instance = (Instance) localInstancesCombo.
496                         getSelectedItem();
497                 
498                 // enable the local instances combo
499
localInstancesCombo.setEnabled(true);
500                 
501                 // enable and set as read-only the domain path field
502
profilePathField.setEnabled(true);
503                 profilePathField.setEditable(false);
504                 
505                 // enable and set as read-only the host field
506
hostField.setEnabled(true);
507                 hostField.setEditable(false);
508                 hostField.setText(instance.getHost());
509                 
510                 // enable and set as read-only the port field
511
//portField.setEnabled(true);
512
//portField.setEditable(false);
513
//portField.setText(instance.getPort());
514
portField.setEnabled(true);
515                 portField.setEditable(false);
516                 //portField.setValue(new Integer(instance.getPort()));
517
portField.setText(instance.getPort());
518                 
519             } else {
520                 // disable the local instances combo
521
localInstancesCombo.setEnabled(false);
522                 
523                 // disable the domain path field
524
profilePathField.setEnabled(false);
525                 profilePathField.setEditable(false);
526                 
527                 // enable and set as read-write the host field
528
hostField.setEnabled(true);
529                 hostField.setEditable(false);
530                 
531                 // enable and set as read-write the port field
532
portField.setEnabled(true);
533                 portField.setEditable(true);
534                 //portField.setEditable(true);
535
}
536             
537             isValid();
538         }
539     }
540     /**
541      * Updates the local instances combobox model with the fresh local
542      * instances list
543      */

544     public void updateInstancesList() {
545         localInstancesCombo.setModel(
546                 new InstancesModel(
547                 tabServerProperties.getServerInstances(
548                 targetData.getServerRoot())));
549         updateInstanceInfo();
550     }
551     
552     /**
553      * Updates the selected local instance information, i.e. profile path,
554      * host, port.
555      */

556     private void updateInstanceInfo() {
557         // get the selected local instance
558
Instance instance = (Instance) localInstancesCombo.getSelectedItem();
559         
560         // set the fields' values
561
profilePathField.setText(instance.getDomainPath());
562         hostField.setText(instance.getHost());
563         //portField.setValue(new Integer(instance.getPort()));
564
portField.setText(instance.getPort());
565     }
566     /**
567      * A simple listeners that reacts to user's selectin a local instance. It
568      * updates the selected instance info.
569      *
570      * @author Kirill Sorokin
571      */

572     private class InstanceSelectionListener implements ActionListener {
573         /**
574          * The main action handler. This method is called when a new local
575          * instance is selected
576          */

577         public void actionPerformed(ActionEvent e) {
578             updateInstanceInfo();
579         }
580     }
581     
582     
583     
584     
585 }
586
Popular Tags