1 19 20 package org.netbeans.modules.xml.wsdl.ui.view.treeeditor.newtype; 21 22 import java.io.IOException ; 23 24 import org.netbeans.modules.xml.wsdl.model.Input; 25 import org.netbeans.modules.xml.wsdl.model.Operation; 26 import org.netbeans.modules.xml.wsdl.model.Output; 27 import org.netbeans.modules.xml.wsdl.model.PortType; 28 import org.netbeans.modules.xml.wsdl.model.WSDLComponent; 29 import org.netbeans.modules.xml.wsdl.model.WSDLModel; 30 import org.netbeans.modules.xml.wsdl.ui.actions.ActionHelper; 31 import org.netbeans.modules.xml.wsdl.ui.actions.NameGenerator; 32 import org.openide.util.NbBundle; 33 import org.openide.util.datatransfer.NewType; 34 35 public class RequestResponseOperationNewType extends NewType { 36 private PortType mPortType = null; 37 38 public RequestResponseOperationNewType(WSDLComponent message) { 39 mPortType = (PortType) message; 40 } 41 42 43 @Override 44 public String getName() { 45 return NbBundle.getMessage(RequestResponseOperationNewType.class, "LBL_NewType_RequestResponseOperation"); 46 } 47 48 49 @Override 50 public void create() throws IOException { 51 WSDLModel model = mPortType.getModel(); 52 model.startTransaction(); 53 String operationName = NameGenerator.getInstance().generateUniqueOperationName(mPortType); 54 Operation operation = model.getFactory().createRequestResponseOperation(); 55 operation.setName(operationName); 56 mPortType.addOperation(operation); 57 Input input = model.getFactory().createInput(); 58 String inputName = NameGenerator.getInstance().generateUniqueOperationInputName(operation); 59 input.setName(inputName); 60 operation.setInput(input); 61 Output output = model.getFactory().createOutput(); 62 String outputName = NameGenerator.getInstance().generateUniqueOperationOutputName(operation); 63 output.setName(outputName); 64 operation.setOutput(output); 65 model.endTransaction(); 66 ActionHelper.selectNode(operation); 67 } 68 } 69 | Popular Tags |