KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > scioworks > imap > spec > beans > FileRecordFactory


1 /*
2  * imapWeb
3  *
4  * Enhydra super-servlet specification object
5  *
6  */

7 package scioworks.imap.spec.beans;
8
9 import java.lang.reflect.Constructor JavaDoc;
10     
11 public class FileRecordFactory {
12
13
14     /**
15      * Constructor can't be used.
16      */

17     private FileRecordFactory() {
18     }
19
20     /**
21      * Create a FileRecord as state object/value object/data transfer object
22      */

23     public static FileRecord getFileRecord(String JavaDoc fullClassName,String JavaDoc tmpFilename,String JavaDoc filename,int size,String JavaDoc contentType) {
24         
25         FileRecord result = null;
26        
27         Class JavaDoc objectClass = null;
28
29         try {
30             // Create the value object
31

32       
33          objectClass = Class.forName(fullClassName);
34          
35          Class JavaDoc[] parameterTypes =new Class JavaDoc[4];
36          
37          parameterTypes[0]= String JavaDoc.class;
38          parameterTypes[1]= String JavaDoc.class;
39          parameterTypes[2]= int.class;
40          parameterTypes[3]= String JavaDoc.class;
41        
42          Constructor JavaDoc constr = objectClass.getConstructor(parameterTypes);
43         
44         
45          
46         Object JavaDoc[] objects = new Object JavaDoc[4];
47         objects[0]=tmpFilename;
48         objects[1]=filename;
49         objects[2]=new Integer JavaDoc(size);
50         objects[3]=contentType;
51         
52          Object JavaDoc obj = constr.newInstance(objects);
53    
54       return (FileRecord)obj;
55                         
56                     
57       } catch (Exception JavaDoc ex) {
58             System.out.println("Error on creating the object" + ex);
59         }
60
61         return result;
62     }
63 }
Popular Tags