1 19 package org.netbeans.modules.j2ee.sun.share.configbean.customizers.webservice; 20 21 import java.awt.GridBagConstraints ; 22 import java.awt.Insets ; 23 import java.beans.PropertyChangeEvent ; 24 import java.beans.PropertyChangeListener ; 25 import java.util.Iterator ; 26 import java.util.List ; 27 import java.util.ResourceBundle ; 28 29 import javax.swing.DefaultComboBoxModel ; 30 import org.netbeans.modules.j2ee.sun.dd.api.common.PortInfo; 31 import org.netbeans.modules.j2ee.sun.dd.api.common.WebserviceEndpoint; 32 33 import org.netbeans.modules.j2ee.sun.share.configbean.WebServiceDescriptor; 34 import org.netbeans.modules.j2ee.sun.share.configbean.customizers.common.BaseCustomizer; 35 36 40 public class WebServiceDescriptorCustomizer extends BaseCustomizer implements 41 PropertyChangeListener { 42 43 static final ResourceBundle bundle = ResourceBundle.getBundle( 44 "org.netbeans.modules.j2ee.sun.share.configbean.customizers.webservice.Bundle"); 46 static final ResourceBundle customizerBundle = ResourceBundle.getBundle( 47 "org.netbeans.modules.j2ee.sun.share.configbean.customizers.Bundle"); 49 51 private WebServiceDescriptor theBean; 52 53 private SelectedEndpointPanel selectedEndpointPanel; 55 private DefaultComboBoxModel endpointModel; 56 57 58 59 public WebServiceDescriptorCustomizer() { 60 initComponents(); 61 initUserComponents(); 62 } 63 64 public WebServiceDescriptor getBean() { 65 return theBean; 66 } 67 68 73 private void initComponents() { 75 java.awt.GridBagConstraints gridBagConstraints; 76 77 jPanel1 = new javax.swing.JPanel (); 78 jLblName = new javax.swing.JLabel (); 79 jTxtName = new javax.swing.JTextField (); 80 jLblWsdlPublishLocation = new javax.swing.JLabel (); 81 jTxtWsdlPublishLocation = new javax.swing.JTextField (); 82 jLblPortDescription = new javax.swing.JLabel (); 83 jLblPortComponentName = new javax.swing.JLabel (); 84 jCbxPortSelector = new javax.swing.JComboBox (); 85 86 setLayout(new java.awt.GridBagLayout ()); 87 88 jPanel1.setLayout(new java.awt.GridBagLayout ()); 89 90 jLblName.setLabelFor(jTxtName); 91 jLblName.setText(bundle.getString("LBL_WebServiceDescriptionName_1")); 92 gridBagConstraints = new java.awt.GridBagConstraints (); 93 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 94 gridBagConstraints.ipady = 4; 95 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 96 jPanel1.add(jLblName, gridBagConstraints); 97 jLblName.getAccessibleContext().setAccessibleName(bundle.getString("ACSN_WebServiceDescriptionName")); 98 jLblName.getAccessibleContext().setAccessibleDescription(bundle.getString("ACSD_WebServiceDescriptionName")); 99 100 jTxtName.setEditable(false); 101 gridBagConstraints = new java.awt.GridBagConstraints (); 102 gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 103 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 104 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH; 105 gridBagConstraints.insets = new java.awt.Insets (0, 6, 0, 0); 106 jPanel1.add(jTxtName, gridBagConstraints); 107 108 jLblWsdlPublishLocation.setLabelFor(jTxtWsdlPublishLocation); 109 jLblWsdlPublishLocation.setText(bundle.getString("LBL_WsdlPublishLocation_1")); 110 gridBagConstraints = new java.awt.GridBagConstraints (); 111 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 112 gridBagConstraints.ipady = 4; 113 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 114 gridBagConstraints.insets = new java.awt.Insets (6, 0, 0, 0); 115 jPanel1.add(jLblWsdlPublishLocation, gridBagConstraints); 116 jLblWsdlPublishLocation.getAccessibleContext().setAccessibleName(bundle.getString("ACSN_WsdlPublishLocation")); 117 jLblWsdlPublishLocation.getAccessibleContext().setAccessibleDescription(bundle.getString("ACSD_WsdlPublishLocation")); 118 119 jTxtWsdlPublishLocation.addKeyListener(new java.awt.event.KeyAdapter () { 120 public void keyReleased(java.awt.event.KeyEvent evt) { 121 jTxtWsdlPublishLocationKeyReleased(evt); 122 } 123 }); 124 125 gridBagConstraints = new java.awt.GridBagConstraints (); 126 gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 127 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 128 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH; 129 gridBagConstraints.weightx = 1.0; 130 gridBagConstraints.weighty = 1.0; 131 gridBagConstraints.insets = new java.awt.Insets (6, 6, 0, 0); 132 jPanel1.add(jTxtWsdlPublishLocation, gridBagConstraints); 133 134 gridBagConstraints = new java.awt.GridBagConstraints (); 135 gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 136 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 137 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST; 138 gridBagConstraints.weightx = 1.0; 139 gridBagConstraints.insets = new java.awt.Insets (0, 6, 5, 5); 140 add(jPanel1, gridBagConstraints); 141 142 jLblPortDescription.setText(bundle.getString("LBL_ServiceEndpointDescription")); 143 gridBagConstraints = new java.awt.GridBagConstraints (); 144 gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 145 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 146 gridBagConstraints.insets = new java.awt.Insets (6, 6, 0, 5); 147 add(jLblPortDescription, gridBagConstraints); 148 149 jLblPortComponentName.setLabelFor(jCbxPortSelector); 150 jLblPortComponentName.setText(bundle.getString("LBL_PortComponentName_1")); 151 gridBagConstraints = new java.awt.GridBagConstraints (); 152 gridBagConstraints.insets = new java.awt.Insets (6, 6, 5, 0); 153 add(jLblPortComponentName, gridBagConstraints); 154 155 jCbxPortSelector.addActionListener(new java.awt.event.ActionListener () { 156 public void actionPerformed(java.awt.event.ActionEvent evt) { 157 jCbxPortSelectorActionPerformed(evt); 158 } 159 }); 160 161 gridBagConstraints = new java.awt.GridBagConstraints (); 162 gridBagConstraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 163 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 164 gridBagConstraints.weightx = 1.0; 165 gridBagConstraints.insets = new java.awt.Insets (6, 6, 5, 5); 166 add(jCbxPortSelector, gridBagConstraints); 167 168 } 170 private void jCbxPortSelectorActionPerformed(java.awt.event.ActionEvent evt) { EndpointMapping endpointMapping = (EndpointMapping) endpointModel.getSelectedItem(); 172 173 if(endpointMapping != null) { 174 selectedEndpointPanel.setEndpointMapping(endpointMapping); 175 } else { 176 selectedEndpointPanel.setEndpointMapping(null); 177 } 178 } 180 private void jTxtWsdlPublishLocationKeyReleased(java.awt.event.KeyEvent evt) { if(theBean != null) { 182 String oldWsdlPublishLocation = theBean.getWsdlPublishLocation(); 183 try { 184 String newWsdlPublishLocation = jTxtWsdlPublishLocation.getText().trim(); 185 if(!newWsdlPublishLocation.equals(oldWsdlPublishLocation)) { 186 theBean.setWsdlPublishLocation(newWsdlPublishLocation); 187 validateField(WebServiceDescriptor.FIELD_WSDL_PUBLISH_LOCATION); 188 } 189 } catch(java.beans.PropertyVetoException ex) { 190 jTxtWsdlPublishLocation.setText(oldWsdlPublishLocation); 191 } 192 } 193 } 195 private javax.swing.JComboBox jCbxPortSelector; 197 private javax.swing.JLabel jLblName; 198 private javax.swing.JLabel jLblPortComponentName; 199 private javax.swing.JLabel jLblPortDescription; 200 private javax.swing.JLabel jLblWsdlPublishLocation; 201 private javax.swing.JPanel jPanel1; 202 private javax.swing.JTextField jTxtName; 203 private javax.swing.JTextField jTxtWsdlPublishLocation; 204 206 private void initUserComponents() { 207 addTitlePanel(bundle.getString("TITLE_WebServiceDescriptor")); 209 getAccessibleContext().setAccessibleName(bundle.getString("ACSN_WebServiceDescriptor")); getAccessibleContext().setAccessibleDescription(bundle.getString("ACSD_WebServiceDescriptor")); 212 213 selectedEndpointPanel = new SelectedEndpointPanel(this); 214 215 GridBagConstraints gridBagConstraints = new GridBagConstraints (); 216 gridBagConstraints.gridwidth = GridBagConstraints.REMAINDER; 217 gridBagConstraints.fill = GridBagConstraints.BOTH; 218 gridBagConstraints.weightx = 1.0; 219 gridBagConstraints.weighty = 1.0; 220 gridBagConstraints.insets = new Insets (0, 6, 0, 5); 221 add(selectedEndpointPanel, gridBagConstraints); 222 223 addErrorPanel(); 225 } 226 227 protected void initFields() { 228 jTxtName.setText(theBean.getWebServiceDescriptionName()); 229 jTxtWsdlPublishLocation.setText(theBean.getWsdlPublishLocation()); 230 231 endpointModel = new DefaultComboBoxModel (); 234 List endpointList = theBean.getWebServiceEndpoints(); 235 if(endpointList != null) { 236 Iterator iter = endpointList.iterator(); 237 while(iter.hasNext()) { 238 WebserviceEndpoint endpoint = (WebserviceEndpoint) iter.next(); 239 endpointModel.addElement(new EndpointMapping(endpoint)); 240 } 241 } 242 243 enableButtonsAndPanels(); 247 248 jCbxPortSelector.setModel(endpointModel); 249 250 if(endpointModel.getSize() > 0) { 251 jCbxPortSelector.setSelectedIndex(0); 252 } 253 } 254 255 private void enableButtonsAndPanels() { 256 boolean enabled = (endpointModel.getSize() > 0); 257 jCbxPortSelector.setEnabled(enabled); 258 selectedEndpointPanel.setContainerEnabled(selectedEndpointPanel, enabled); 259 } 260 261 public void propertyChange(PropertyChangeEvent propertyChangeEvent) { 262 String eventName = propertyChangeEvent.getPropertyName(); 263 264 if(WebServiceDescriptor.WEBSERVICE_DESCRIPTION_NAME.equals(eventName)) { 265 jTxtName.setText(theBean.getWebServiceDescriptionName()); 266 } else if(WebServiceDescriptor.ENDPOINT_SECURITY_BINDING.equals(eventName)) { 267 selectedEndpointPanel.reloadEndpointMapping(); 268 } 269 } 270 271 protected void addListeners() { 272 super.addListeners(); 273 theBean.addPropertyChangeListener(this); 274 } 275 276 protected void removeListeners() { 277 super.removeListeners(); 278 theBean.removePropertyChangeListener(this); 279 } 280 281 protected boolean setBean(Object bean) { 282 boolean result = super.setBean(bean); 283 284 if(bean instanceof WebServiceDescriptor) { 285 theBean = (WebServiceDescriptor) bean; 286 result = true; 287 } else { 288 assert (result == false) : 290 "WebServiceDescriptorCustomizer was passed wrong bean type in setBean(Object bean)"; 292 theBean = null; 293 result = false; 294 } 295 296 return result; 297 } 298 299 public String getHelpId() { 300 return "AS_CFG_WebServiceDescriptor"; } 302 } 303 | Popular Tags |