1 package org.apache.commons.betwixt.registry;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 import java.util.HashMap;
20 import java.util.Map;
21
22 import org.apache.commons.betwixt.XMLBeanInfo;
23
24 /*** The default caching implementation.
25 * A hashmap is used.
26 *
27 * @author <a href="mailto:rdonkin@apache.org">Robert Burrell Donkin</a>
28 * @version $Id: DefaultXMLBeanInfoRegistry.java,v 1.6 2004/02/28 13:38:33 yoavs Exp $
29 */
30 public class DefaultXMLBeanInfoRegistry implements XMLBeanInfoRegistry {
31
32 /*** Used to associated <code>XMLBeanInfo</code>'s to classes */
33 private Map xmlBeanInfos = new HashMap();
34
35 /***
36 * Get <code>XMLBeanInfo</code> from cache.
37 *
38 * @param forThisClass the class for which to find a <code>XMLBeanInfo</code>
39 * @return cached <code>XMLBeanInfo</code> associated with given class
40 * or <code>null</code> if no <code>XMLBeanInfo</code> has been associated
41 */
42 public XMLBeanInfo get(Class forThisClass) {
43 return (XMLBeanInfo) xmlBeanInfos.get(forThisClass);
44 }
45
46 /***
47 * Put into cache
48 *
49 * @param forThisClass the class to cache the <code>XMLBeanInfo</code> for
50 * @param beanInfo the <code>XMLBeanInfo</code> to cache
51 */
52 public void put(Class forThisClass, XMLBeanInfo beanInfo) {
53 xmlBeanInfos.put(forThisClass, beanInfo);
54 }
55
56 /***
57 * Flush existing cached <code>XMLBeanInfo</code>'s.
58 */
59 public void flush() {
60 xmlBeanInfos.clear();
61 }
62 }