KickJava   Java API By Example, From Geeks To Geeks.

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


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
21 /**
22  * Defines the interface used to cache messages.
23  *
24  * @version $Revision$
25  */

26 public interface Cache {
27     
28     /**
29      * Gets an object that was previously <code>put</code> into this object.
30      *
31      * @param msgid
32      * @return null if the object was not previously put or if the object has expired out of the cache.
33      */

34     public Object JavaDoc get(Object JavaDoc key);
35
36     /**
37      * Puts an object into the cache.
38      *
39      * @param messageID
40      * @param message
41      */

42     public Object JavaDoc put(Object JavaDoc key, Object JavaDoc value);
43
44     /**
45      * Removes an object from the cache.
46      *
47      * @param messageID
48      * @return the object associated with the key if it was still in the cache.
49      */

50     public Object JavaDoc remove(Object JavaDoc key);
51
52     /**
53      * Lets a cache know it will not be used any further and that it can release
54      * acquired resources
55      */

56     public void close();
57
58     /**
59      * How big is the cache right now?
60      * @return
61      */

62     public int size();
63     
64 }
65
Popular Tags