1 19 20 package org.netbeans.modules.j2ee.persistence.action; 21 22 import java.io.IOException ; 23 import org.openide.ErrorManager; 24 import org.openide.filesystems.FileObject; 25 import org.openide.loaders.DataObject; 26 import org.openide.nodes.Node; 27 import org.openide.util.HelpCtx; 28 import org.openide.util.NbBundle; 29 import org.openide.util.actions.NodeAction; 30 31 34 public final class UseEntityManagerAction extends NodeAction { 35 36 protected void performAction(Node[] activatedNodes) { 37 if (activatedNodes.length != 1) { 38 return; 39 } 40 41 FileObject target = activatedNodes[0].getCookie(DataObject.class).getPrimaryFile(); 42 43 EntityManagerGenerator emGenerator = new EntityManagerGenerator(target, target.getName()); 44 GenerationOptions options = new GenerationOptions(); 45 options.setParameterName("object"); 46 options.setParameterType("Object"); 47 options.setMethodName("persist"); 48 options.setOperation(GenerationOptions.Operation.PERSIST); 49 options.setReturnType("void"); 50 try { 51 emGenerator.generate(options); 52 } catch (IOException ex) { 53 ErrorManager.getDefault().notify(ex); 54 } 55 } 56 57 public String getName() { 58 return NbBundle.getMessage(UseEntityManagerAction.class, "CTL_UseEntityManagerAction"); 59 } 60 61 @Override 62 protected void initialize() { 63 super.initialize(); 64 putValue("noIconInMenu", Boolean.TRUE); 65 } 66 67 public HelpCtx getHelpCtx() { 68 return HelpCtx.DEFAULT_HELP; 69 } 70 71 @Override 72 protected boolean asynchronous() { 73 return false; 74 } 75 76 protected boolean enable(Node[] activatedNodes) { 77 return true; 78 } 79 80 } 81 82 | Popular Tags |