KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > activemq > memory > MapCache


1 /**
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one or more
4  * contributor license agreements. See the NOTICE file distributed with
5  * this work for additional information regarding copyright ownership.
6  * The ASF licenses this file to You under the Apache License, Version 2.0
7  * (the "License"); you may not use this file except in compliance with
8  * the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */

18 package org.apache.activemq.memory;
19
20 import java.util.Map JavaDoc;
21
22 import java.util.concurrent.ConcurrentHashMap JavaDoc;
23
24 /**
25  * Use any Map to implement the Cache. No cache eviction going on here. Just gives
26  * a Map a Cache interface.
27  *
28  * @version $Revision$
29  */

30 public class MapCache implements Cache {
31     
32     protected final Map JavaDoc map;
33     
34     public MapCache() {
35         this(new ConcurrentHashMap JavaDoc());
36     }
37     
38     public MapCache(Map JavaDoc map) {
39         this.map = map;
40     }
41
42     public Object JavaDoc put(Object JavaDoc key, Object JavaDoc value) {
43         return map.put(key, value);
44     }
45
46     public Object JavaDoc get(Object JavaDoc key) {
47         return map.get(key);
48     }
49
50     public Object JavaDoc remove(Object JavaDoc key) {
51         return map.remove(key);
52     }
53     
54     public void close() {
55         map.clear();
56     }
57
58     public int size() {
59         return map.size();
60     }
61 }
62
Popular Tags