KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > opensymphony > user > provider > file > XMLAccessProvider


1 /*
2  * Copyright (c) 2002-2003 by OpenSymphony
3  * All rights reserved.
4  */

5 package com.opensymphony.user.provider.file;
6
7 import org.apache.commons.logging.Log;
8 import org.apache.commons.logging.LogFactory;
9
10 import java.util.Properties JavaDoc;
11
12
13 /**
14 * Following properties are <b>required</b>:
15 * <ul>
16 * <li><b>storeFile</b> - the absolute path to the store file (<i>ex: c:\groups.xml</i>) or a resource location in the jar (<i>ex: /groups.xml</i>) </li>
17 * <li><b>storeFileType</b> - one of (file, resource)
18 * </ul>
19 *
20 * XML format example:
21 * <pre>
22 * &lt;groups&gt;
23 * &lt;group id="myGroup"&gt;
24 * &lt;user id="myUser"/&gt;
25 * &lt;user id="someOtherUser"/&gt;
26 * &lt;/group&gt;
27 * &lt;group id="anEmptyGroup"/&gt;
28 * &lt;group id="foo"&gt;
29 * &lt;user id="bar"/&gt;
30 * &lt;user id="baz"/&gt;
31 * &lt;/group&gt;
32 * &lt;/groups&gt;
33 * </pre>
34 *
35 * @author Dave Brondsema
36 *
37 */

38 public class XMLAccessProvider extends FileAccessProvider {
39     //~ Static fields/initializers /////////////////////////////////////////////
40

41     protected static final Log log = LogFactory.getLog(SerializableAccessProvider.class);
42
43     //~ Methods ////////////////////////////////////////////////////////////////
44

45     public boolean init(Properties JavaDoc properties) {
46         boolean retVal = super.init(properties);
47
48         if (retVal) {
49             groupCache = new XMLGroupsCache(properties.getProperty("storeFile"), properties.getProperty("storeFileType"));
50
51             return true;
52         }
53
54         return false;
55     }
56 }
57
Popular Tags