| 1 23 24 package com.rift.coad.lib.deployment.rmi; 25 26 import junit.framework.*; 27 import java.io.File ; 28 import java.lang.reflect.Method ; 29 import java.lang.reflect.Type ; 30 import java.net.URLClassLoader ; 31 import java.net.URL ; 32 import java.util.StringTokenizer ; 33 import java.util.Vector ; 34 import java.util.Iterator ; 35 import java.util.regex.Matcher ; 36 import java.util.regex.Pattern ; 37 import org.apache.log4j.Logger; 38 import com.rift.coad.lib.common.ClassUtil; 39 import com.rift.coad.lib.common.FileUtil; 40 import com.rift.coad.lib.common.RandomGuid; 41 import com.rift.coad.lib.common.ResourceReader; 42 import com.rift.coad.lib.common.TextFile; 43 import com.rift.coad.lib.common.JarUtil; 44 import com.rift.coad.lib.deployment.CoadunationParser; 45 import com.rift.coad.lib.deployment.BeanInfo; 46 import com.rift.coad.lib.deployment.DeploymentLoader; 47 import com.rift.coad.lib.thirdparty.ant.JavaC; 48 import com.rift.coad.lib.thirdparty.ant.RMIC; 49 50 54 public class TieGeneratorTest extends TestCase { 55 56 public TieGeneratorTest(String testName) { 57 super(testName); 58 } 59 60 protected void setUp() throws Exception { 61 } 62 63 protected void tearDown() throws Exception { 64 } 65 66 public static Test suite() { 67 TestSuite suite = new TestSuite(TieGeneratorTest.class); 68 69 return suite; 70 } 71 72 73 78 private File createTmpDir(File source, File tmpDirBase) throws Exception { 79 File tmpDir = new File (tmpDirBase, 80 RandomGuid.getInstance().getGuid()); 81 if (tmpDir.mkdirs() == false) { 82 throw new Exception ("Failed to create the director [" 83 + tmpDir.getAbsolutePath() + "]"); 84 } 85 JarUtil.extract(source,tmpDir); 86 return tmpDir; 87 } 88 89 92 public void testGenerate() throws Exception { 93 System.out.println("generate"); 94 95 File tmpDir = createTmpDir(new File (System.getProperty("test.jar")), 97 new File (System.getProperty("test.tmp.dir"))); 98 99 TextFile textFile = new TextFile(new File (tmpDir, 101 DeploymentLoader.META_FILE)); 102 CoadunationParser coadunationParser = new CoadunationParser( 103 textFile.getTextDocument()); 104 105 BeanInfo bean = (BeanInfo)coadunationParser.getDeploymentInfo(). 106 getBeans().get("com.test.BeanImpl"); 107 BeanInfo bean2 = (BeanInfo)coadunationParser.getDeploymentInfo(). 108 getBeans().get("com.test3.BeanImpl"); 109 File tmpSource = new File (tmpDir,RandomGuid.getInstance().getGuid()); 110 tmpSource.mkdir(); 111 TieGenerator instance = new TieGenerator(tmpDir,tmpSource,bean); 112 instance.generate(); 113 TieGenerator instance2 = new TieGenerator(tmpDir,tmpSource,bean2); 114 instance2.generate(); 115 116 File [] classPath = new File [] { tmpDir, 118 new File ("./dist/CoadunationLib.jar"), 119 new File ("../CoadunationBase/dist/CoadunationBase.jar"), 120 new File ("../CoadInclude/dist/CoadunationInclude.jar"), 121 new File ("../CoadunationInclude/dist/CoadunationInclude.jar")}; 122 JavaC javaC = new JavaC(classPath,tmpSource,tmpSource); 123 System.out.println("Compiling dir [" + tmpSource.getAbsolutePath() + "]"); 124 javaC.compileClasses(); 125 126 RMIC rmic = new RMIC(classPath,tmpSource,"**/*.class",tmpSource); 127 System.out.println("Compiling dir [" + tmpSource.getAbsolutePath() + "]"); 128 rmic.parse(); 129 } 130 131 132 } 133 | Popular Tags |