KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > j2ee > sun > share > configbean > customizers > webservice > ServiceRefPortInfoPanel


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 /*
20  * ServiceRefPortInfoPanel.java
21  *
22  * Created on November 2, 2003, 10:28 AM
23  */

24
25 package org.netbeans.modules.j2ee.sun.share.configbean.customizers.webservice;
26
27 import java.util.List JavaDoc;
28 import java.util.Iterator JavaDoc;
29
30 import java.awt.GridBagConstraints JavaDoc;
31 import java.awt.Insets JavaDoc;
32 import java.beans.PropertyVetoException JavaDoc;
33
34 import javax.swing.JPanel JavaDoc;
35 import javax.swing.DefaultComboBoxModel JavaDoc;
36
37 import org.netbeans.modules.j2ee.sun.dd.api.CommonDDBean;
38 import org.netbeans.modules.j2ee.sun.dd.api.common.PortInfo;
39
40 import org.netbeans.modules.j2ee.sun.share.configbean.ServiceRef;
41 import org.netbeans.modules.j2ee.sun.share.configbean.StorageBeanFactory;
42
43 /**
44  *
45  * @author Peter Williams
46  */

47 public class ServiceRefPortInfoPanel extends JPanel JavaDoc {
48
49     private ServiceRefCustomizer masterPanel;
50     private SelectedPortInfoPanel selectedPortPanel;
51
52     private DefaultComboBoxModel JavaDoc portInfoModel;
53
54     /** Creates new form ServiceRefPortInfoPanel */
55     public ServiceRefPortInfoPanel(ServiceRefCustomizer src) {
56         masterPanel = src;
57
58         initComponents();
59         initUserComponents();
60     }
61
62     /** This method is called from within the constructor to
63      * initialize the form.
64      * WARNING: Do NOT modify this code. The content of this method is
65      * always regenerated by the Form Editor.
66      */

67     // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
68
private void initComponents() {
69         java.awt.GridBagConstraints JavaDoc gridBagConstraints;
70
71         jLblPortInfoUsageDescription = new javax.swing.JLabel JavaDoc();
72         jPnlPortInfoSelector = new javax.swing.JPanel JavaDoc();
73         jLblPortInfo = new javax.swing.JLabel JavaDoc();
74         jComboPortInfo = new javax.swing.JComboBox JavaDoc();
75         jPnlPortInfoButtons = new javax.swing.JPanel JavaDoc();
76         jBtnAddPortInfo = new javax.swing.JButton JavaDoc();
77         jBtnRemovePortInfo = new javax.swing.JButton JavaDoc();
78
79         setLayout(new java.awt.GridBagLayout JavaDoc());
80
81         getAccessibleContext().setAccessibleName(ServiceRefCustomizer.bundle.getString("ACSN_PortInfoTab"));
82         getAccessibleContext().setAccessibleDescription(ServiceRefCustomizer.bundle.getString("ACSD_PortInfoTab"));
83         jLblPortInfoUsageDescription.setText(ServiceRefCustomizer.bundle.getString("LBL_ServicePortInfoDescription"));
84         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
85         gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER;
86         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
87         gridBagConstraints.insets = new java.awt.Insets JavaDoc(6, 6, 0, 5);
88         add(jLblPortInfoUsageDescription, gridBagConstraints);
89
90         jPnlPortInfoSelector.setLayout(new java.awt.GridBagLayout JavaDoc());
91
92         jPnlPortInfoSelector.setBorder(javax.swing.BorderFactory.createEtchedBorder());
93         jLblPortInfo.setLabelFor(jComboPortInfo);
94         jLblPortInfo.setText(ServiceRefCustomizer.bundle.getString("LBL_PortInfo_1"));
95         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
96         gridBagConstraints.ipady = 8;
97         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
98         gridBagConstraints.insets = new java.awt.Insets JavaDoc(6, 6, 5, 0);
99         jPnlPortInfoSelector.add(jLblPortInfo, gridBagConstraints);
100
101         jComboPortInfo.setPrototypeDisplayValue("");
102         jComboPortInfo.addActionListener(new java.awt.event.ActionListener JavaDoc() {
103             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
104                 jComboPortInfoActionPerformed(evt);
105             }
106         });
107
108         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
109         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
110         gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH;
111         gridBagConstraints.weightx = 1.0;
112         gridBagConstraints.insets = new java.awt.Insets JavaDoc(6, 6, 5, 0);
113         jPnlPortInfoSelector.add(jComboPortInfo, gridBagConstraints);
114         jComboPortInfo.getAccessibleContext().setAccessibleName(ServiceRefCustomizer.bundle.getString("ACSN_PortInfo"));
115         jComboPortInfo.getAccessibleContext().setAccessibleDescription(ServiceRefCustomizer.bundle.getString("ACSD_PortInfo"));
116
117         jPnlPortInfoButtons.setLayout(new java.awt.GridBagLayout JavaDoc());
118
119         jBtnAddPortInfo.setText(ServiceRefCustomizer.bundle.getString("LBL_Add"));
120         jBtnAddPortInfo.addActionListener(new java.awt.event.ActionListener JavaDoc() {
121             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
122                 jBtnAddPortInfoActionPerformed(evt);
123             }
124         });
125
126         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
127         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
128         jPnlPortInfoButtons.add(jBtnAddPortInfo, gridBagConstraints);
129         jBtnAddPortInfo.getAccessibleContext().setAccessibleName(ServiceRefCustomizer.bundle.getString("ACSN_Add"));
130         jBtnAddPortInfo.getAccessibleContext().setAccessibleDescription(ServiceRefCustomizer.bundle.getString("ACSD_Add"));
131
132         jBtnRemovePortInfo.setText(ServiceRefCustomizer.bundle.getString("LBL_Remove"));
133         jBtnRemovePortInfo.addActionListener(new java.awt.event.ActionListener JavaDoc() {
134             public void actionPerformed(java.awt.event.ActionEvent JavaDoc evt) {
135                 jBtnRemovePortInfoActionPerformed(evt);
136             }
137         });
138
139         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
140         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
141         gridBagConstraints.insets = new java.awt.Insets JavaDoc(0, 6, 0, 0);
142         jPnlPortInfoButtons.add(jBtnRemovePortInfo, gridBagConstraints);
143         jBtnRemovePortInfo.getAccessibleContext().setAccessibleName(ServiceRefCustomizer.bundle.getString("ACSN_Remove"));
144         jBtnRemovePortInfo.getAccessibleContext().setAccessibleDescription(ServiceRefCustomizer.bundle.getString("ACSD_Remove"));
145
146         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
147         gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER;
148         gridBagConstraints.insets = new java.awt.Insets JavaDoc(6, 6, 5, 5);
149         jPnlPortInfoSelector.add(jPnlPortInfoButtons, gridBagConstraints);
150
151         gridBagConstraints = new java.awt.GridBagConstraints JavaDoc();
152         gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER;
153         gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
154         gridBagConstraints.weightx = 1.0;
155         gridBagConstraints.insets = new java.awt.Insets JavaDoc(6, 6, 5, 5);
156         add(jPnlPortInfoSelector, gridBagConstraints);
157
158     }// </editor-fold>//GEN-END:initComponents
159

160     private void jBtnRemovePortInfoActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jBtnRemovePortInfoActionPerformed
161
// Add your handling code here:
162
int index = jComboPortInfo.getSelectedIndex();
163
164         if(index != -1) {
165             // FIXME do we want to put up a warning?
166
try {
167                 PortInfoMapping portInfoMapping = (PortInfoMapping) jComboPortInfo.getSelectedItem();
168                 ServiceRef bean = masterPanel.getBean();
169                 if(bean != null) {
170                     bean.removePortInfo(portInfoMapping.getPortInfo());
171                 }
172                 jComboPortInfo.removeItemAt(index);
173                 enableButtonsAndPanels();
174
175                 if(portInfoModel.getSize() > 0) {
176                     jComboPortInfo.setSelectedIndex(0);
177                 } else {
178                     jComboPortInfo.setSelectedIndex(-1);
179                 }
180             } catch(PropertyVetoException JavaDoc ex) {
181             }
182         }
183     }//GEN-LAST:event_jBtnRemovePortInfoActionPerformed
184

185     private void jBtnAddPortInfoActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jBtnAddPortInfoActionPerformed
186
// Add your handling code here:
187
try {
188             StorageBeanFactory storageFactory = masterPanel.getBean().getConfig().getStorageFactory();
189             PortInfoMapping portInfoMapping = new PortInfoMapping(storageFactory.createPortInfo(),
190                 ServiceRefCustomizer.bundle.getString("LBL_NewPortInfo")); // NOI18N
191
ServiceRef bean = masterPanel.getBean();
192             if(bean != null) {
193                 bean.addPortInfo(portInfoMapping.getPortInfo());
194             }
195             jComboPortInfo.addItem(portInfoMapping);
196             enableButtonsAndPanels();
197
198             jComboPortInfo.setSelectedItem(portInfoMapping);
199         } catch(PropertyVetoException JavaDoc ex) {
200         }
201     }//GEN-LAST:event_jBtnAddPortInfoActionPerformed
202

203     private void jComboPortInfoActionPerformed(java.awt.event.ActionEvent JavaDoc evt) {//GEN-FIRST:event_jComboPortInfoActionPerformed
204
// Add your handling code here:
205
PortInfoMapping portInfoMapping = (PortInfoMapping) portInfoModel.getSelectedItem();
206
207         if(portInfoMapping != null) {
208             selectedPortPanel.setPortInfoMapping(portInfoMapping);
209         } else {
210             selectedPortPanel.setPortInfoMapping(null);
211         }
212     }//GEN-LAST:event_jComboPortInfoActionPerformed
213

214
215     // Variables declaration - do not modify//GEN-BEGIN:variables
216
private javax.swing.JButton JavaDoc jBtnAddPortInfo;
217     private javax.swing.JButton JavaDoc jBtnRemovePortInfo;
218     private javax.swing.JComboBox JavaDoc jComboPortInfo;
219     private javax.swing.JLabel JavaDoc jLblPortInfo;
220     private javax.swing.JLabel JavaDoc jLblPortInfoUsageDescription;
221     private javax.swing.JPanel JavaDoc jPnlPortInfoButtons;
222     private javax.swing.JPanel JavaDoc jPnlPortInfoSelector;
223     // End of variables declaration//GEN-END:variables
224

225     private void initUserComponents() {
226         /** Add selected port panel */
227         selectedPortPanel = new SelectedPortInfoPanel(masterPanel);
228
229         GridBagConstraints JavaDoc gridBagConstraints = new GridBagConstraints JavaDoc();
230         gridBagConstraints.gridwidth = GridBagConstraints.REMAINDER;
231         gridBagConstraints.fill = GridBagConstraints.BOTH;
232         gridBagConstraints.weightx = 1.0;
233         gridBagConstraints.weighty = 1.0;
234         gridBagConstraints.insets = new Insets JavaDoc(0, 6, 5, 5);
235         add(selectedPortPanel, gridBagConstraints);
236     }
237
238     /** Initialization of all the fields in this panel from the bean that
239      * was passed in.
240      */

241     public void initFields(ServiceRef bean) {
242         // FIXME set combobox to proper value
243
portInfoModel = new DefaultComboBoxModel JavaDoc();
244         List JavaDoc portInfoList = bean.getPortInfos();
245         if(portInfoList != null) {
246             Iterator JavaDoc iter = portInfoList.iterator();
247             while(iter.hasNext()) {
248                 PortInfo pi = (PortInfo) iter.next();
249                 portInfoModel.addElement(new PortInfoMapping(pi));
250             }
251         }
252         jComboPortInfo.setModel(portInfoModel);
253
254         if(portInfoModel.getSize() > 0) {
255             jComboPortInfo.setSelectedIndex(0);
256         }
257
258         enableButtonsAndPanels();
259     }
260     
261     protected void addListeners(ServiceRef bean) {
262     }
263
264     protected void removeListeners(ServiceRef bean) {
265     }
266
267     private void enableButtonsAndPanels() {
268         boolean enabled = (portInfoModel.getSize() > 0);
269         jComboPortInfo.setEnabled(enabled);
270         jBtnRemovePortInfo.setEnabled(enabled);
271         selectedPortPanel.setContainerEnabled(selectedPortPanel, enabled);
272     }
273 }
274
Popular Tags