View Javadoc

1   package com.silvermindsoftware.hitch.reflect;
2   
3   import java.util.HashMap;
4   import java.util.Map;
5   import java.util.Collections;
6   
7   /**
8    * Copyright 2007 Brandon Goodin
9    *
10   * Licensed under the Apache License, Version 2.0 (the "License");
11   * you may not use this file except in compliance with the License.
12   * You may obtain a copy of the License at
13   *
14   *   http://www.apache.org/licenses/LICENSE-2.0
15   *
16   * Unless required by applicable law or agreed to in writing, software
17   * distributed under the License is distributed on an "AS IS" BASIS,
18   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19   * See the License for the specific language governing permissions and
20   * limitations under the License.
21   */
22  
23  /**
24   * @svnLink $Revision: 3873 $;$Date: 2009-08-04 13:59:45 +0200 (Di, 04. Aug 2009) $;$Author: swismer $;$URL: https://el4j.svn.sourceforge.net/svnroot/el4j/branches/el4j_3_1/el4j/framework/modules/swing/src/main/java/com/silvermindsoftware/hitch/reflect/ClassManager.java $
25   */
26  public class ClassManager {
27  
28  	private static final Map<Class, ClassInfo> classInfoCache = Collections.synchronizedMap(new HashMap<Class, ClassInfo>());
29  
30  	public static ClassInfo getClassInfo(Class clazz) {
31  		if(classInfoCache.containsKey(clazz)) {
32  			return classInfoCache.get(clazz);
33  		} else {
34  			ClassInfo classInfo = new ClassInfo(clazz);
35  			classInfoCache.put(clazz, classInfo);
36  			return classInfo;
37  		}
38  	}
39  
40  }