1 30 package com.genimen.djeneric.tools.strongtyper; 31 32 public class ManagerGenerator extends Generator 33 { 34 public ManagerGenerator() 35 { 36 } 37 38 public String getPackageName() 39 { 40 return getImplPackageName(); 41 } 42 43 public String getClassName() 44 { 45 return getManagerClassName() + (isAbstract() ? getGeneratedSuffix() : ""); 46 } 47 48 public String getCode() throws Exception 49 { 50 StringBuffer code = new StringBuffer (5000); 51 if (getPackageName().trim().length() > 0) code.append("package " + getPackageName() + ";\n\n"); 52 53 code.append("import " + getItfPackageName() + ".*;\n"); 54 55 code.append("import com.genimen.djeneric.repository.*;\n" + "import com.genimen.djeneric.repository.rdbms.*;\n" 56 + "import com.genimen.djeneric.repository.exceptions.*;\n\n"); 57 58 code.append(StrongTyper.getRegenerationTags(1)); 59 60 code 61 .append("\n" 62 + "public class " 63 + getClassName() 64 + " extends RdbmsPersistenceManager\n" 65 + "{\n" 66 + " public " 67 + getClassName() 68 + "(DjRepositoryDescriptor rdesc) throws DjenericException\n" 69 + " {\n" 70 + " super(null, rdesc);\n" 71 + " }\n" 72 + "\n" 73 + " public " 74 + getClassName() 75 + "(DjMessenger msg, DjRepositoryDescriptor rdesc, String repositoryUser, String repositoryPassword) throws DjenericException\n" 76 + " {\n" + " super(msg, rdesc, repositoryUser, repositoryPassword);\n" + " }\n" + "\n" 77 + " public DjSession createSession() throws " + getExceptionClassName() + "\n" + " {\n" + " try\n" 78 + " {\n" + " " + getSessionClassName() + " ses = new " + getSessionClassName() + "(this);\n" 79 + " ses.setCommitAllowed(isCommitAllowed());\n" + "\n" + " return ses;\n" + " }\n" 80 + " catch(Exception x)\n" + " {\n" + " throw new " + getExceptionClassName() + "(x);\n" 81 + " }\n" + " }\n" + "\n" + " public " + getSessionInterfaceName() + " create" 82 + getSessionInterfaceName() + "() throws " + getExceptionClassName() + "\n" + " { \n" + " return (" 83 + getSessionClassName() + ") createSession();\n" + " }\n"); 84 85 code.append(StrongTyper.getRegenerationTags(0)); 86 code.append("}\n"); 87 88 return code.toString(); 89 } 90 91 } | Popular Tags |