1 19 package org.netbeans.modules.websvc.core.jaxws.actions; 20 21 import org.netbeans.modules.websvc.api.jaxws.project.WSUtils; 22 import org.netbeans.modules.websvc.api.jaxws.project.config.Service; 23 import org.netbeans.modules.websvc.core.AddOperationCookie; 24 import org.netbeans.modules.websvc.core.WebServiceActionProvider; 25 import org.netbeans.modules.websvc.core.WebServiceActionProvider; 26 import org.openide.filesystems.FileObject; 27 import org.openide.util.HelpCtx; 28 import org.openide.util.NbBundle; 29 import org.openide.nodes.Node; 30 import org.openide.util.actions.NodeAction; 31 32 public class AddOperationAction extends NodeAction { 33 34 public String getName() { 35 return NbBundle.getMessage(AddOperationAction.class, "LBL_OperationAction"); 36 } 37 38 public HelpCtx getHelpCtx() { 39 return HelpCtx.DEFAULT_HELP; 40 } 41 42 protected boolean asynchronous() { 43 return false; 44 } 45 46 protected boolean enable(Node[] activatedNodes) { 47 return activatedNodes.length == 1 && 48 !isFromWSDL(activatedNodes[0]); 52 } 53 54 private boolean isFromWSDL(Node node) { 55 Service service = (Service)node.getLookup().lookup(Service.class); 56 if (service!=null) return (service.getWsdlUrl()!=null); 57 return false; 58 } 59 60 protected void performAction(Node[] activatedNodes) { 61 62 if (activatedNodes.length != 1) { 63 return; 64 } 65 66 FileObject implClassFo = activatedNodes[0].getLookup().lookup(FileObject.class); 67 if (implClassFo!=null) { 68 AddOperationCookie addOperationCookie = WebServiceActionProvider.getAddOperationAction(implClassFo); 69 if (addOperationCookie!=null) addOperationCookie.addOperation(implClassFo); 70 } 71 } 80 } 81 82 | Popular Tags |