KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > enterprise > tools > common > validation > util > ObjectFactory


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the License). You may not use this file except in
5  * compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * https://glassfish.dev.java.net/public/CDDLv1.0.html or
9  * glassfish/bootstrap/legal/CDDLv1.0.txt.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * Header Notice in each file and include the License file
15  * at glassfish/bootstrap/legal/CDDLv1.0.txt.
16  * If applicable, add the following below the CDDL Header,
17  * with the fields enclosed by brackets [] replaced by
18  * you own identifying information:
19  * "Portions Copyrighted [year] [name of copyright owner]"
20  *
21  * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
22  */

23
24 /*
25  * ObjectFactory.java August 19, 2003, 6:29 AM
26  */

27
28 package com.sun.enterprise.tools.common.validation.util;
29
30 import java.lang.reflect.Constructor JavaDoc;
31
32 /**
33  * This class is a generic Factory that employes Java reflection to
34  * create Objects.
35  * @author Rajeshwar Patil
36  * @version %I%, %G%
37  */

38
39 public class ObjectFactory {
40     /* A class implementation comment can go here. */
41     
42     /** Create an instance of the class with the specified name by calling the
43       * no-argument constructor.
44      */

45     public static Object JavaDoc newInstance(String JavaDoc className){
46         
47         Utils utils = new Utils();
48         return utils.createObject(className);
49     }
50
51
52     /** Create an instance of the class with the specified name by calling the
53       * a constructor that takes an String.
54      */

55     public static Object JavaDoc newInstance(String JavaDoc className, String JavaDoc argument){
56         Class JavaDoc classObject = null;
57         Utils utils = new Utils();
58
59         Class JavaDoc[] argumentTypes = new Class JavaDoc[] {String JavaDoc.class};
60         Constructor JavaDoc constructor =
61             utils.getConstructor(className, argumentTypes);
62
63         Object JavaDoc[] argumentValues = new Object JavaDoc[] {argument};
64
65         return utils.createObject(constructor, argumentValues);
66     }
67
68
69     /** Create an instance of the class with the specified name by calling the
70       * a constructor that takes an String.
71      */

72     public static Object JavaDoc newInstance(String JavaDoc className, Object JavaDoc argument){
73         Class JavaDoc classObject = null;
74         Utils utils = new Utils();
75
76         Class JavaDoc[] argumentTypes = new Class JavaDoc[] {Object JavaDoc.class};
77         Constructor JavaDoc constructor =
78             utils.getConstructor(className, argumentTypes);
79
80         Object JavaDoc[] argumentValues = new Object JavaDoc[] {argument};
81
82         return utils.createObject(constructor, argumentValues);
83     }
84 }
85
Popular Tags