1 21 22 package org.opensubsystems.core.persist.db; 23 24 import java.util.List ; 25 26 import org.opensubsystems.core.error.OSSException; 27 import org.opensubsystems.core.util.ClassFactory; 28 29 39 class DatabaseDependentClassFactory extends ClassFactory 40 { 41 44 protected void createDefaultClassNames( 45 String strClassIdentifier, 46 String strModifier, 47 List lstClassNames 48 ) throws OSSException 49 { 50 int iIndex; 51 StringBuffer sbClassName = new StringBuffer (); 52 53 55 iIndex = strClassIdentifier.lastIndexOf('.'); 57 58 if (iIndex != -1) 60 { 61 sbClassName.append(strClassIdentifier.substring(0, iIndex + 1)); 63 sbClassName.append(strModifier.toLowerCase()); 64 sbClassName.append("."); 65 sbClassName.append(strModifier); 66 sbClassName.append(strClassIdentifier.substring(iIndex + 1, 67 strClassIdentifier.length())); 68 } 69 else 70 { 71 sbClassName.append(strModifier.toLowerCase()); 72 sbClassName.append("."); 73 sbClassName.append(strModifier); 74 sbClassName.append(strClassIdentifier); 75 } 76 lstClassNames.add(sbClassName.toString()); 77 sbClassName.delete(0, sbClassName.length()); 78 if (iIndex != -1) 80 { 81 sbClassName.append(strClassIdentifier.substring(0, iIndex + 1)); 83 sbClassName.append(strModifier); 84 sbClassName.append(strClassIdentifier.substring(iIndex + 1, 85 strClassIdentifier.length())); 86 } 87 else 88 { 89 sbClassName.append(strModifier); 90 sbClassName.append(strClassIdentifier); 91 } 92 lstClassNames.add(sbClassName.toString()); 93 sbClassName.delete(0, sbClassName.length()); 94 if (iIndex != -1) 96 { 97 sbClassName.append(strClassIdentifier.substring(0, iIndex + 1)); 99 sbClassName.append(strModifier.toLowerCase()); 100 sbClassName.append("."); 101 sbClassName.append(strClassIdentifier.substring(iIndex + 1, 102 strClassIdentifier.length())); 103 } 104 else 105 { 106 sbClassName.append(strModifier.toLowerCase()); 107 sbClassName.append("."); 108 sbClassName.append(strClassIdentifier); 109 } 110 111 lstClassNames.add(sbClassName.toString()); 112 sbClassName.delete(0, sbClassName.length()); 113 sbClassName.append(strClassIdentifier); 115 sbClassName.append("Impl"); 116 lstClassNames.add(sbClassName.toString()); 117 sbClassName.delete(0, sbClassName.length()); 118 sbClassName.append(strClassIdentifier); 120 lstClassNames.add(sbClassName.toString()); 121 } 122 123 126 protected String getModifier( 127 ) throws OSSException 128 { 129 return DatabaseImpl.getInstance().getDatabaseTypeIdentifier(); 130 } 131 } 132
| Popular Tags
|