1 19 20 package org.netbeans.modules.j2ee.ejbcore.ejb.wizard.cmp; 21 22 import java.io.IOException ; 23 import java.util.Collections ; 24 import java.util.Set ; 25 import org.netbeans.api.progress.ProgressHandle; 26 import org.netbeans.api.project.Project; 27 import org.netbeans.modules.j2ee.persistence.wizard.fromdb.PersistenceGenerator; 28 import org.netbeans.modules.j2ee.persistence.wizard.fromdb.ProgressPanel; 29 import org.netbeans.modules.j2ee.persistence.wizard.fromdb.RelatedCMPHelper; 30 import org.netbeans.spi.project.ui.templates.support.Templates; 31 import org.openide.ErrorManager; 32 import org.openide.WizardDescriptor; 33 import org.openide.filesystems.FileObject; 34 35 36 40 public class CmpGenerator implements PersistenceGenerator { 41 42 private CmpFromDbGenerator generator; 43 private org.netbeans.modules.j2ee.api.ejbjar.EjbJar ejbModule; 44 45 public CmpGenerator() { 46 } 47 48 public CmpGenerator(Project project) { 49 this.ejbModule = org.netbeans.modules.j2ee.api.ejbjar.EjbJar.getEjbJars(project)[0]; 50 try { 51 this.generator = new CmpFromDbGenerator(project, ejbModule.getDeploymentDescriptor()); 52 } catch (IOException ioe) { 53 ErrorManager.getDefault().notify(ioe); 54 } 55 } 56 57 public void generateBeans(final ProgressPanel progressPanel, 58 RelatedCMPHelper helper, FileObject dbschemaFile, 59 final ProgressHandle handle, boolean justTesting) throws IOException { 60 CmpFromDbGenerator.ProgressNotifier progressNotifier = new CmpFromDbGenerator.ProgressNotifier() { 61 public void switchToDeterminate(int workunits) { 62 handle.switchToDeterminate(workunits); 63 } 64 public void progress(int workunit) { 65 handle.progress(workunit); 66 } 67 public void progress(String message) { 68 handle.progress(message); 69 progressPanel.setText(message); 70 } 71 }; 72 generator.generateBeans(helper, dbschemaFile, progressNotifier); 73 } 74 75 public String generateEntityName(String name) { 76 return name; 77 } 78 79 public Set createdObjects() { 80 return Collections.singleton(ejbModule.getDeploymentDescriptor()); 81 } 82 83 public void init(WizardDescriptor wiz) { 84 Project project = Templates.getProject(wiz); 85 this.ejbModule = org.netbeans.modules.j2ee.api.ejbjar.EjbJar.getEjbJars(project)[0]; 86 try { 87 this.generator = new CmpFromDbGenerator(project, ejbModule.getDeploymentDescriptor()); 88 } catch (IOException ioe) { 89 ErrorManager.getDefault().notify(ioe); 90 } 91 } 92 93 public void uninit() { 94 } 95 96 public String getFQClassName(String tableName) { 97 return null; 98 } 99 100 } 101 | Popular Tags |