Statistics
| Revision:

gvsig-projects-pool / org.gvsig.jvmpreferences / trunk / org.gvsig.jvmpreferences.native / org.gvsig.jvmpreferences.native.lib / org.gvsig.jvmpreferences.native.lib.api / src / main / java / org / gvsig / jvmpreferences / nativeprefs / NativePrefsLocator.java @ 6

History | View | Annotate | Download (1.73 KB)

1
package org.gvsig.jvmpreferences.nativeprefs;
2

    
3
import org.gvsig.tools.locator.BaseLocator;
4
import org.gvsig.tools.locator.Locator;
5
import org.gvsig.tools.locator.LocatorException;
6

    
7
/**
8
 * A locator to access NativePrefsManager. The locator takes care of
9
 * instantiating the right manager and keeps a reference for simplifying
10
 * access. 
11
 * 
12
 * @author Cesar Martinez Izquierdo
13
 *
14
 */
15
public class NativePrefsLocator extends BaseLocator {
16
        private static final String LOCATOR_NAME = "NativePrefsLocator";
17

    
18
        public static final String MANAGER_NAME = LOCATOR_NAME+".manager";
19

    
20
        private static final String MANAGER_DESCRIPTION = "Manager of gvSIG native preferences";
21
        
22
        /**
23
         * Unique instance.
24
         */
25
        private static final NativePrefsLocator instance = new NativePrefsLocator();
26

    
27
        /**
28
         * Return the singleton instance.
29
         *
30
         * @return the singleton instance
31
         */
32
        public static NativePrefsLocator getInstance() {
33
                return instance;
34
        }
35

    
36
        public String getLocatorName() {
37
                return LOCATOR_NAME;
38
        }
39

    
40
        /**
41
         * Return a reference to PersistenceManager.
42
         *
43
         * @return a reference to PersistenceManager
44
         * @throws LocatorException
45
         *             if there is no access to the class or the class cannot be
46
         *             instantiated
47
         * @see Locator#get(String)
48
         */
49
        public static NativePrefsManager getManager()
50
                        throws LocatorException {
51
                return (NativePrefsManager) getInstance().get(MANAGER_NAME);
52
        }
53

    
54
        /**
55
         * Registers the Class implementing the PersistenceManager interface.
56
         *
57
         * @param clazz
58
         *            implementing the PersistenceManager interface
59
         */
60
        @SuppressWarnings("unchecked")
61
        public static void registerNativePrefsManagers(Class<? extends NativePrefsManager> clazz) {
62
                getInstance().register(MANAGER_NAME,
63
                                MANAGER_DESCRIPTION, clazz);
64
        }
65

    
66
}