| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| package org.apache.axis2.tools.idea; |
| |
| import org.apache.axis2.tools.bean.CodegenBean; |
| import org.apache.axis2.tools.component.WizardComponents; |
| import org.apache.axis2.tools.component.WizardPanel; |
| import org.apache.axis2.tools.wizardframe.CodegenFrame; |
| import org.apache.axis2.util.URLProcessor; |
| |
| import javax.swing.*; |
| import javax.wsdl.WSDLException; |
| import javax.xml.namespace.QName; |
| import java.awt.*; |
| import java.awt.event.ItemEvent; |
| import java.awt.event.ItemListener; |
| import java.util.Collection; |
| import java.util.Iterator; |
| import java.util.List; |
| |
| public class SecondPanel extends WizardPanel { |
| |
| private JComboBox cmbCodeGenOption; |
| private JComboBox cmbLan; |
| private JComboBox cmbServiceName; |
| private JComboBox cmbPortName; |
| private JTextField txtPacakgeName; |
| private JComboBox cmbdbtype; |
| private JCheckBox chkTestCase; |
| private JRadioButton clientSide; |
| private JRadioButton rdBoth; |
| private JRadioButton rdsyn; |
| private JRadioButton rdasync; |
| private JRadioButton serverSide; |
| private JCheckBox serviceXML; |
| private JCheckBox serverSideInterface; |
| private JRadioButton all; |
| private JTable table; |
| private JScrollPane spTable; |
| private List serviceNameList; |
| private PackageNameTableModel model; |
| private CodegenBean codegenBean; |
| |
| public SecondPanel(WizardComponents wizardComponents,CodegenBean codegenBean) { |
| super(wizardComponents, "Axis2 Idea Plugin WSDL2Java Wizards"); |
| this.codegenBean=codegenBean; |
| setPanelTopTitle("Options"); |
| setPanelBottomTitle("Set the options for the code generator. If you wish to edit the codegen options, Select custom"); |
| init(); |
| } |
| |
| private void init(){ |
| |
| cmbLan = new JComboBox(); |
| cmbLan.addItem("java"); |
| cmbLan.setToolTipText("Select the language of the generated code"); |
| |
| cmbServiceName = new JComboBox(); |
| add(cmbServiceName); |
| cmbServiceName.setToolTipText("Select the name of the service that the code should be generated for"); |
| |
| cmbPortName = new JComboBox(); |
| cmbPortName.setToolTipText("Select the port name that the code should be generated for"); |
| |
| txtPacakgeName = new JTextField("org.axis2"); |
| txtPacakgeName.setToolTipText("Set the package name of the generated code"); |
| |
| cmbdbtype = new JComboBox(); |
| cmbdbtype.addItem("adb"); |
| cmbdbtype.addItem("xmlbeans"); |
| cmbdbtype.addItem("none"); |
| cmbdbtype.setToolTipText("Select the databinding framework to be used in the generation process"); |
| |
| chkTestCase = new JCheckBox("Generate Test Case", false); |
| chkTestCase.setVisible(true); |
| chkTestCase.setToolTipText("A test case will be generated if this is checked"); |
| |
| ButtonGroup generationType = new ButtonGroup(); |
| |
| clientSide = new JRadioButton("Generate Client Side",true); |
| generationType.add(clientSide); |
| |
| ButtonGroup buttonGroup = new ButtonGroup(); |
| |
| rdBoth = new JRadioButton("Generate both sync and async", true); |
| buttonGroup.add(rdBoth); |
| |
| rdsyn = new JRadioButton("Generate sync only", false); |
| buttonGroup.add(rdsyn); |
| |
| rdasync = new JRadioButton("Generate async only", false); |
| buttonGroup.add(rdasync); |
| |
| serverSide = new JRadioButton("Generate Server Side"); |
| generationType.add(serverSide); |
| |
| serviceXML = new JCheckBox("Generate default service.xml", false); |
| |
| serverSideInterface = new JCheckBox("Generate an interface for skeleton", false); |
| |
| all = new JRadioButton("Generate All"); |
| generationType.add(all); |
| |
| model = new PackageNameTableModel(new Object [1][2]); |
| table = new JTable(model); |
| spTable=new JScrollPane(table); |
| |
| cmbCodeGenOption =new JComboBox(); |
| cmbCodeGenOption .addItem("default"); |
| cmbCodeGenOption .addItem("custom"); |
| cmbCodeGenOption .setToolTipText("Select the Codegen option"); |
| |
| |
| this.setLayout(new GridBagLayout()); |
| |
| this.add(new JLabel("Cogen Option") |
| , new GridBagConstraints(0, 0, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.NONE |
| , new Insets(1, 10, 0,10), 0, 0)); |
| |
| this.add(cmbCodeGenOption |
| , new GridBagConstraints(1, 0, GridBagConstraints.REMAINDER, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL |
| , new Insets(1, 5, 0,10), 0, 0)); |
| cmbCodeGenOption.addItemListener(new ItemListener() { |
| public void itemStateChanged(ItemEvent e) { |
| if (e.getStateChange() == ItemEvent.SELECTED) { |
| setEnabledForCodegenType(); |
| update(); |
| } |
| } |
| }); |
| |
| this.add(new JLabel("Out put lang") |
| , new GridBagConstraints(0, 1, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.NONE |
| , new Insets(1,10, 0,10), 0, 0)); |
| |
| this.add(cmbLan |
| , new GridBagConstraints(1, 1, GridBagConstraints.REMAINDER, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1, 5, 0,10), 0, 0)); |
| |
| this.add(new JLabel("Service name") |
| , new GridBagConstraints(0, 2, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.NONE |
| , new Insets(1, 10, 0,10), 0, 0)); |
| |
| this.add(cmbServiceName |
| , new GridBagConstraints(1, 2, GridBagConstraints.REMAINDER, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1, 5, 0,10), 0, 0)); |
| |
| this.add(new JLabel("port Name") |
| , new GridBagConstraints(0, 3, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.NONE |
| , new Insets(1, 10, 0,10), 0, 0)); |
| this.add(cmbPortName |
| , new GridBagConstraints(1, 3, GridBagConstraints.REMAINDER, 1,1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1, 5, 0,10), 0, 0)); |
| this.add(new JLabel("DataBinding") |
| , new GridBagConstraints(0, 4, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.NONE |
| , new Insets(1, 10, 0,10), 0, 0)); |
| this.add(cmbdbtype |
| , new GridBagConstraints(1, 4, GridBagConstraints.REMAINDER, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1, 5, 0,10), 0, 0)); |
| this.add(new JLabel("Custom Packege") |
| , new GridBagConstraints(0, 5, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.NONE |
| , new Insets(1, 10, 0,10), 0, 0)); |
| this.add(txtPacakgeName |
| , new GridBagConstraints(1, 5, GridBagConstraints.REMAINDER, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1, 5, 0,10), 0, 0)); |
| this.add(chkTestCase |
| , new GridBagConstraints(0, 6, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1, 10, 0,10), 0, 0)); |
| this.add(new JSeparator() |
| , new GridBagConstraints(0, 7, GridBagConstraints.REMAINDER, 1, 0.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.BOTH |
| , new Insets(1, 10, 1,1), 0, 0)); |
| |
| |
| this.add(clientSide |
| , new GridBagConstraints(0, 8, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.NONE |
| , new Insets(1, 10, 0,10), 0, 0)); |
| clientSide.addItemListener(new ItemListener() { |
| public void itemStateChanged(ItemEvent e) { |
| if (e.getStateChange() == ItemEvent.SELECTED) { |
| setEnabledForCustom(); |
| update(); |
| } |
| } |
| }); |
| this.add(rdBoth |
| , new GridBagConstraints(0, 9, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.NONE |
| , new Insets(1, 10, 0,10), 0, 0)); |
| this.add(rdsyn |
| , new GridBagConstraints(1, 9, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.NONE |
| , new Insets(1, 5, 0,10), 0, 0)); |
| this.add(rdasync |
| , new GridBagConstraints(2, 9, 1, 1, 1.0,0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.NONE |
| , new Insets(1, 5, 0,10), 0, 0)); |
| |
| |
| this.add(new JSeparator() |
| , new GridBagConstraints(0, 10, GridBagConstraints.REMAINDER, 1, 0.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.BOTH |
| , new Insets(1, 10, 1,1), 0, 0)); |
| |
| this.add(serverSide |
| , new GridBagConstraints(0, 11, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1, 10, 0,10), 0, 0)); |
| serverSide.addItemListener(new ItemListener() { |
| public void itemStateChanged(ItemEvent e) { |
| if (e.getStateChange() == ItemEvent.SELECTED) { |
| setEnabledForCustom(); |
| update(); |
| } |
| } |
| }); |
| this.add(serviceXML |
| , new GridBagConstraints(0, 12, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1, 10, 0,10), 0, 0)); |
| this.add(serverSideInterface |
| , new GridBagConstraints(1, 12, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1, 5, 0,10), 0, 0)); |
| |
| |
| this.add(new JSeparator() |
| , new GridBagConstraints(0, 13, GridBagConstraints.REMAINDER, 1, 0.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.BOTH |
| , new Insets(1, 10, 1,1), 0, 0)); |
| |
| |
| this.add(all |
| , new GridBagConstraints(0, 14, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1,10, 0,10), 0, 0)); |
| all.addItemListener(new ItemListener() { |
| public void itemStateChanged(ItemEvent e) { |
| if (e.getStateChange() == ItemEvent.SELECTED) { |
| setEnabledForCustom(); |
| update(); |
| } |
| } |
| }); |
| this.add(new JSeparator() |
| , new GridBagConstraints(0, 15, GridBagConstraints.REMAINDER, 1, 0.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.BOTH |
| , new Insets(1, 10, 1,1), 0, 0)); |
| |
| this.add(new JLabel("Namespace to Package Mapping") |
| , new GridBagConstraints(0, 16, 1, 1, 1.0, 0.0 |
| , GridBagConstraints.WEST , GridBagConstraints.HORIZONTAL |
| , new Insets(1,10, 0,10), 0, 0)); |
| |
| this.add(spTable |
| , new GridBagConstraints(0, 17, GridBagConstraints.REMAINDER, 1, 1.0, 1.0 |
| , GridBagConstraints.NORTHWEST , GridBagConstraints.BOTH |
| , new Insets(1,10, 20,10), 0, 0)); |
| |
| setNextButtonEnabled(false); |
| setEnabledForCodegenType(); |
| |
| } |
| public void next() { |
| switchPanel(CodegenFrame.PANEL_LAST_A ); |
| } |
| public void back() { |
| switchPanel(CodegenFrame.PANEL_FIRST_A ); |
| } |
| |
| public void update(){ |
| checkPageComlete(); |
| populateParamsFromWSDL(); |
| |
| } |
| |
| private void loadNamespaces(Collection namespaceMap){ |
| |
| Iterator namespaces = namespaceMap.iterator(); |
| Object tableData [][] = new Object[namespaceMap.size()][2]; |
| int i = 0; |
| while(namespaces.hasNext()){ |
| |
| String namespace = (String)namespaces.next(); |
| tableData[i][0] = namespace; |
| tableData[i][1] = getPackageFromNamespace(namespace); |
| i++; |
| } |
| |
| model.setTableData(tableData); |
| |
| |
| } |
| private void setEnabledForCodegenType(){ |
| if(cmbCodeGenOption.getSelectedItem().equals("default") ){ |
| cmbdbtype.setEnabled(false); |
| cmbLan.setEnabled(false); |
| cmbPortName .setEnabled(false); |
| cmbServiceName.setEnabled(false); |
| txtPacakgeName.setEnabled(false); |
| cmbdbtype.setEnabled(false); |
| if(chkTestCase.isSelected()) { |
| chkTestCase.setEnabled(false); |
| chkTestCase.setSelected(false); |
| } else |
| chkTestCase.setEnabled(false); |
| clientSide.setEnabled(false); |
| rdBoth .setEnabled(false); |
| rdsyn.setEnabled(false); |
| rdasync.setEnabled(false); |
| serverSide.setEnabled(false); |
| table.setEnabled(false); |
| spTable.setEnabled(false); |
| serviceXML.setEnabled(false); |
| serverSideInterface.setEnabled(false); |
| all.setEnabled(false); |
| }else{ |
| cmbdbtype.setEnabled(true); |
| cmbLan.setEnabled(true); |
| cmbPortName .setEnabled(true); |
| cmbServiceName.setEnabled(true); |
| txtPacakgeName.setEnabled(true); |
| cmbdbtype.setEnabled(true); |
| if(!clientSide.isSelected()) { |
| clientSide.setEnabled(true); |
| clientSide.setSelected(true); |
| } else |
| clientSide.setEnabled(true); |
| serverSide.setEnabled(true); |
| table.setEnabled(true); |
| spTable.setEnabled(true); |
| all.setEnabled(true); |
| setEnabledForCustom(); |
| } |
| } |
| private void setEnabledForCustom(){ |
| if(clientSide.isSelected()){ |
| if(serviceXML.isSelected()||serverSideInterface.isSelected()){ |
| serverSide.setSelected(false); |
| serverSideInterface.setSelected(false); |
| serviceXML.setEnabled(false); |
| serverSideInterface.setEnabled(false); |
| }else{ |
| serviceXML.setEnabled(false); |
| serverSideInterface.setEnabled(false); |
| } |
| if(rdasync.isSelected()){ |
| rdasync.setEnabled(true); |
| rdasync.setSelected(false); |
| }else{ |
| rdasync.setEnabled(true); |
| } |
| if(!rdBoth.isSelected()){ |
| rdBoth.setEnabled(true); |
| rdBoth.setSelected(true); |
| }else{ |
| rdBoth.setEnabled(true); |
| } |
| if(rdsyn.isSelected()){ |
| rdsyn.setEnabled(true); |
| rdsyn.setSelected(false); |
| }else{ |
| rdsyn.setEnabled(true); |
| } |
| chkTestCase.setEnabled(true); |
| }else if(serverSide.isSelected()){ |
| if(serviceXML.isSelected()||serverSideInterface.isSelected()){ |
| serverSide.setSelected(false); |
| serverSideInterface.setSelected(false); |
| serviceXML.setEnabled(true); |
| serverSideInterface.setEnabled(true); |
| }else{ |
| serviceXML.setEnabled(true); |
| serverSideInterface.setEnabled(true); |
| } |
| if( rdasync.isSelected()||rdBoth.isSelected()||rdsyn.isSelected()) { |
| rdasync.setSelected(false); |
| rdBoth.setSelected(false); |
| rdsyn.setSelected(false); |
| rdasync.setEnabled(false); |
| rdBoth.setEnabled(false); |
| rdsyn .setEnabled(false); |
| } else{ |
| rdasync.setEnabled(false); |
| rdBoth.setEnabled(false); |
| rdsyn .setEnabled(false); |
| } |
| if(chkTestCase.isSelected()) { |
| chkTestCase.setEnabled(false); |
| chkTestCase.setSelected(false); |
| } else |
| chkTestCase.setEnabled(false); |
| }else if(all.isSelected()){ |
| chkTestCase.setEnabled(true); |
| if(serviceXML.isSelected()||serverSideInterface.isSelected()){ |
| serverSide.setSelected(false); |
| serverSideInterface.setSelected(false); |
| serviceXML.setEnabled(false); |
| serverSideInterface.setEnabled(false); |
| }else{ |
| serviceXML.setEnabled(false); |
| serverSideInterface.setEnabled(false); |
| } |
| if( rdasync.isSelected()||rdBoth.isSelected()||rdsyn.isSelected()) { |
| rdasync.setSelected(false); |
| rdBoth.setSelected(false); |
| rdsyn.setSelected(false); |
| rdasync.setEnabled(false); |
| rdBoth.setEnabled(false); |
| rdsyn .setEnabled(false); |
| } else{ |
| rdasync.setEnabled(false); |
| rdBoth.setEnabled(false); |
| rdsyn .setEnabled(false); |
| } |
| } |
| } |
| public String getPackageFromNamespace(String namespace){ |
| return URLProcessor.makePackageName(namespace); |
| } |
| public int getPageType() { |
| return WizardPanel.WSDL_2_JAVA_TYPE; |
| } |
| private void checkPageComlete(){ |
| if(cmbCodeGenOption.getSelectedItem().equals("default")){ |
| setPageComplete(true); |
| setNextButtonEnabled(true); |
| } else{ |
| if(txtPacakgeName.getText().equals("")){ |
| setPageComplete(false); |
| setNextButtonEnabled(false); |
| } else{ |
| setPageComplete(true); |
| setNextButtonEnabled(true); |
| } |
| } |
| } |
| /** |
| * populate the service and the port from the WSDL this needs to be public |
| * since the WSDLselection page may call this |
| */ |
| public void populateParamsFromWSDL() { |
| try { |
| String lname = codegenBean.getWSDLFileName(); |
| if (!"".equals(lname.trim())) { |
| |
| codegenBean.readWSDL(); |
| |
| // enable the combo's |
| // setComboBoxEnable(true); |
| |
| this.serviceNameList = codegenBean.getServiceList(); |
| if (!serviceNameList.isEmpty()) { |
| cmbServiceName.removeAll(); |
| for (int i = 0; i < serviceNameList.size(); i++) { |
| // add the local part of the |
| cmbServiceName.addItem(((QName) serviceNameList.get(i)) |
| .getLocalPart()); |
| }; |
| // select the first one as the default |
| cmbServiceName.setSelectedIndex(0); |
| //setComboBoxEnable(false); |
| // load the ports |
| loadPortNames(); |
| } else { |
| // service name list being empty means we are switching to |
| // the interface mode |
| if (cmbServiceName!=null) cmbServiceName .removeAll(); |
| if (cmbPortName!=null) cmbPortName.removeAll(); |
| // disable the combo's |
| // setComboBoxEnable(false); |
| //this is not an error |
| |
| } |
| |
| populatePackageName(); |
| |
| //populate the namespacess |
| loadNamespaces(codegenBean.getDefinitionNamespaceMap()); |
| } |
| } catch (WSDLException e) { |
| // disable the combo's |
| setComboBoxEnable(false); |
| } |
| catch (Exception e) { |
| // disable the combo's |
| setComboBoxEnable(false); |
| } |
| |
| } |
| private void populatePackageName() { |
| this.txtPacakgeName.setText(codegenBean.packageFromTargetNamespace()); |
| } |
| private void setComboBoxEnable(boolean b) { |
| if (cmbServiceName != null) { |
| cmbServiceName .setEnabled(b); |
| cmbPortName .setEnabled(b); |
| } |
| } |
| private void loadPortNames() { |
| int selectionIndex = cmbServiceName.getSelectedIndex(); |
| if (selectionIndex != -1) { |
| java.util.List ports = codegenBean.getPortNameList((QName) serviceNameList |
| .get(selectionIndex)); |
| if (!ports.isEmpty()) { |
| cmbPortName.removeAll(); |
| for (int i = 0; i < ports.size(); i++) { |
| // add the local part of the |
| cmbPortName.addItem(ports.get(i).toString()); |
| } |
| cmbPortName.setSelectedIndex(0); |
| } else { |
| //Todo error message null |
| } |
| } |
| } |
| public void populateOptions(){ |
| populateParamsFromWSDL(); |
| } |
| private void dialogChanged() { |
| String fileName = getPackageName(); |
| |
| if (fileName.length() == 0) { |
| //Todo error message "File name should be specified" |
| setError("File name should be specified",true); |
| setPageComplete(false); |
| return; |
| } |
| |
| //try populate the options |
| // getWizardComponents().getWizardPanel(3).populateOptions(); |
| setPageComplete(true); |
| // update the status |
| //Todo error message null |
| |
| } |
| public String getSelectedLanguage() { |
| return cmbLan.getSelectedItem().toString(); |
| } |
| /** |
| * the async only status |
| * |
| * @return true if "Generate asynchronous code only" is checked |
| */ |
| public boolean isAsyncOnlyOn() { |
| return rdasync.isSelected(); |
| } |
| /** |
| * the sync only status |
| * |
| * @return true if "Generate synchronous code only" is checked |
| */ |
| public boolean isSyncOnlyOn() { |
| return rdsyn.isSelected(); |
| } |
| /** |
| * return the package name |
| * |
| * @return a string containing the package name to use for code generation |
| */ |
| public String getPackageName() { |
| if ("".equals(txtPacakgeName.getText().trim())){ |
| //we do not allow the packaging to be empty |
| //if the user sets it to empty we set it to |
| //the default |
| return URLProcessor.DEFAULT_PACKAGE; |
| } |
| return this.txtPacakgeName.getText(); |
| } |
| /** |
| * The serverside status |
| * |
| * @return true if "Generate Server-Side" is checked |
| */ |
| public boolean isServerside() { |
| return this.serverSide.isSelected(); |
| } |
| /** |
| * |
| * @return true if "Generate XML configuration file" is checked |
| */ |
| public boolean isServerXML() { |
| if (this.serviceXML.isEnabled()) |
| return this.serviceXML.isSelected(); |
| else |
| return false; |
| } |
| /** |
| * |
| * @return true if "Generate test case" is checked |
| */ |
| public boolean isGenerateTestCase() { |
| return this.chkTestCase.isSelected(); |
| } |
| /** |
| * |
| * @return null if portname is empty |
| */ |
| public String getPortName() { |
| int selectionIndex = cmbPortName.getSelectedIndex(); |
| if (selectionIndex != -1) { |
| String text = this.cmbPortName.getSelectedItem().toString(); |
| if (text == null || text.trim().equals("")) { |
| return null; |
| } |
| return text; |
| } else { |
| return null; |
| } |
| } |
| /** |
| * @return null if the text is empty |
| * |
| */ |
| public String getServiceName() { |
| int selectionIndex = cmbServiceName.getSelectedIndex(); |
| // cater for the scenario where the combo's can be empty |
| if (selectionIndex != -1) { |
| String text = this.cmbServiceName.getSelectedItem().toString(); |
| |
| if (text == null || text.trim().equals("")) { |
| return null; |
| } |
| return text; |
| } else { |
| return null; |
| } |
| } |
| |
| public String getDatabinderName() { |
| return this.cmbdbtype.getSelectedItem().toString(); |
| |
| } |
| |
| public boolean getGenerateServerSideInterface() { |
| return this.serverSideInterface.isSelected(); |
| } |
| |
| public boolean getGenerateAll() { |
| return this.all.isSelected(); |
| } |
| |
| public String getNs2PkgMapping(){ |
| String returnList=""; |
| String packageValue; |
| for (int i=0;i<table.getRowCount() ;i++){ |
| packageValue = table.getValueAt(i,1).toString(); |
| if (packageValue!=null && !"".equals(packageValue)){ |
| returnList = returnList + |
| ("".equals(returnList)?"":",") + |
| table.getValueAt(i,0).toString()+ "=" + packageValue; |
| } |
| } |
| return "".equals(returnList)?null:returnList; |
| } |
| |
| private void handleCustomPackageNameModifyEvent() { |
| // This method is add as a tempory fix for the Axis2-1368 |
| // TODO fix this permanantly. |
| String text = this.txtPacakgeName.getText(); |
| if ((text == null) || (text.trim().equals(""))|| (text.endsWith(".")) || (text.startsWith("."))) { |
| //Todo error message "Invalid package name. Please enter a valid package name." |
| return; |
| } |
| //Todo error message null |
| } |
| |
| } |
| |