01: /*
02: * The contents of this file are subject to the
03: * Mozilla Public License Version 1.1 (the "License");
04: * you may not use this file except in compliance with the License.
05: * You may obtain a copy of the License at http://www.mozilla.org/MPL/
06: *
07: * Software distributed under the License is distributed on an "AS IS"
08: * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.
09: * See the License for the specific language governing rights and
10: * limitations under the License.
11: *
12: * The Initial Developer of the Original Code is Simulacra Media Ltd.
13: * Portions created by Simulacra Media Ltd are Copyright (C) Simulacra Media Ltd, 2004.
14: *
15: * All Rights Reserved.
16: *
17: * Contributor(s):
18: */
19: package org.openharmonise.commons.cache;
20:
21: /**
22: * Interface to be implemented by classes whose instances can be depended
23: * upon if cached, i.e. if an instance is cached it will remain in the
24: * cache and so another object can safely hold on to it in the knowledge
25: * that it is the cached version.
26: *
27: *
28: * @author Michael Bell
29: * @version $Revision: 1.1 $
30: *
31: */
32: public interface DependableCacheObject {
33:
34: public boolean hasDependants();
35:
36: public void addDependant(CacheDependant dep);
37:
38: public void removeDependant(CacheDependant dep);
39:
40: }
|