KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sf > cache4j > perfomance > cache > jcs


1 /* =========================================================================
2  * File: jcs.java$
3  *
4  * Copyright 2006 by Yuriy Stepovoy.
5  * email: stepovoy@gmail.com
6  * All rights reserved.
7  *
8  * =========================================================================
9  */

10
11 package net.sf.cache4j.perfomance.cache;
12
13 import net.sf.cache4j.perfomance.ICache;
14
15 import java.util.Properties JavaDoc;
16
17 import org.apache.log4j.PropertyConfigurator;
18 import org.apache.jcs.JCS;
19
20 /**
21  * jcs
22  *
23  * @version $Revision: 1.0 $ $Date: 04/03/2003 11:00:00 $
24  * @author Yuriy Stepovoy. <a HREF="mailto:stepovoy@gmail.com">stepovoy@gmail.com</a>
25  **/

26
27 public class jcs implements ICache {
28 // ----------------------------------------------------------------------------- Константы
29
// ----------------------------------------------------------------------------- Атрибуты класса
30
private JCS _cache;
31 // ----------------------------------------------------------------------------- Статические переменные
32

33     public static final String JavaDoc NAME = "jcs 1.2.7.0";
34
35 // ----------------------------------------------------------------------------- Конструкторы
36
// ----------------------------------------------------------------------------- Public методы
37

38     /**
39      * Инициализирует кеш
40      * @throws Exception
41      */

42     public void init() throws Exception JavaDoc {
43         Properties JavaDoc prop = new Properties JavaDoc();
44         prop.put("log4j.logger.org.apache.jcs", "fatal, jcs");
45         prop.put("log4j.appender.jcs", "org.apache.log4j.ConsoleAppender");
46         prop.put("log4j.appender.jcs.layout", "org.apache.log4j.PatternLayout");
47         prop.put("log4j.appender.jcs.layout.ConversionPattern", "%d %-5p%m%n");
48         PropertyConfigurator.configure(prop);
49
50         _cache = JCS.getInstance("default");
51     }
52
53     /**
54      * Возвращает объект из кеша
55      * @param id идентификатор объекта
56      * @return
57      * @throws Exception
58      */

59     public Object JavaDoc get(Object JavaDoc id) throws Exception JavaDoc {
60         return _cache.get(id);
61     }
62
63     /**
64      * Помещает объект в кеш
65      * @param id идентификатор объекта
66      * @param value объект
67      * @throws Exception
68      */

69     public void put(Object JavaDoc id, Object JavaDoc value) throws Exception JavaDoc {
70         _cache.put(id, value);
71     }
72
73     /**
74      * Удаляет обюъект из кеша
75      * @param id идентификатор объекта
76      * @throws Exception
77      */

78     public void remove(Object JavaDoc id) throws Exception JavaDoc {
79         _cache.remove(id);
80     }
81
82     /**
83      * Возвращает количество объектов в кеше
84      * @return
85      * @throws Exception
86      */

87     public long size() throws Exception JavaDoc {
88         return 0;
89     }
90
91     /**
92      * Деинициализирует кеш
93      */

94     public void destroy() {
95         try {
96             _cache.clear();
97             _cache = null;
98         } catch (Exception JavaDoc e){
99             e.printStackTrace();
100         }
101     }
102
103     /**
104      * Возвращает название кеша
105      * @return
106      */

107     public String JavaDoc getCacheName() {
108         return NAME;
109     }
110
111 // ----------------------------------------------------------------------------- Package scope методы
112
// ----------------------------------------------------------------------------- Protected методы
113
// ----------------------------------------------------------------------------- Private методы
114
// ----------------------------------------------------------------------------- Inner классы
115
}
Popular Tags