Revision 2142 org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/ToolsLocator.java

View differences:

ToolsLocator.java
22 22
 */
23 23
package org.gvsig.tools;
24 24

  
25
import org.gvsig.tools.bookmarksandhistory.BookmarksAndHistoryManager;
26
import org.gvsig.tools.bookmarksandhistory.impl.DefaultBookmarksAndHistoryManager;
25 27
import org.gvsig.tools.complement.ComplementsManager;
26 28
import org.gvsig.tools.complement.impl.DefaultComplementsManager;
27 29
import org.gvsig.tools.dataTypes.DataTypesManager;
......
105 107
    public static final String COMPLEMENTS_MANAGER_NAME = "org.gvsig.tools.complements.manager";
106 108
    private static final String COMPLEMENTS_MANAGER_DESCRIPTION = "Default complements Manager";
107 109

  
110
    public static final String BOOKMARKSANDHISTORY_MANAGER_NAME = "org.gvsig.tools.bookmarksAndHistory.manager";
111
    private static final String BOOKMARKSANDHISTORY_MANAGER_DESCRIPTION = "Default BookmarksAndHistory Manager";
112
    
108 113
    /**
109 114
     * Unique instance.
110 115
     */
111
    private static final ToolsLocator instance = new ToolsLocator();
116
    private static final ToolsLocator INSTANCE = new ToolsLocator();
112 117

  
113 118
    // Comma list of xml pull parser factories, parsers or serializers
114 119
    private String xmlPullParserFactoryClassNames = ""
......
116 121
            "org.kxml2.io.KXmlParser," + // KXML2 parser
117 122
            "org.kxml2.io.KXmlSerializer"; // KXML2 serializer
118 123

  
124
    @SuppressWarnings("OverridableMethodCallInConstructor")
119 125
    private ToolsLocator() {
120 126
        // Register default ServiceLoader
121
        registerDefault(SERVICE_LOADER_NAME, SERVICE_LOADER_DESCRIPTION,
122
                DefaultServiceLoader.class);
127
        registerDefault(
128
                SERVICE_LOADER_NAME, 
129
                SERVICE_LOADER_DESCRIPTION,
130
                DefaultServiceLoader.class
131
        );
123 132
    }
124 133

  
125 134
    /**
......
128 137
     * @return the singleton instance
129 138
     */
130 139
    public static ToolsLocator getInstance() {
131
        return instance;
140
        return INSTANCE;
132 141
    }
133 142

  
134 143
    @Override
......
551 560
                FOLDERS_MANAGER_DESCRIPTION, clazz);
552 561
    }
553 562

  
554
    public static void registerComplementsManager(Class clazz) {
555
        getInstance().registerDefault(COMPLEMENTS_MANAGER_NAME,
556
                COMPLEMENTS_MANAGER_DESCRIPTION, clazz);
557
    }
558

  
559
    public static ComplementsManager getComplementsManager()
560
            throws LocatorException {
561
        return (ComplementsManager) getInstance().get(COMPLEMENTS_MANAGER_NAME);
562
    }
563

  
564 563
    /**
565 564
     * Return a reference to {@link FoldersManager}.
566 565
     *
......
574 573
        return (FoldersManager) getInstance().get(FOLDERS_MANAGER_NAME);
575 574
    }
576 575

  
576
    /**
577
     * Registers the default Class implementing the BookmarksAndHistoryManager interface.
578
     *
579
     * @param clazz implementing the {@link BookmarksAndHistoryManager} interface
580
     */
581
    public static void registerDefaultBookmarksAndHistoryManager(Class clazz) {
582
        getInstance().registerDefault(BOOKMARKSANDHISTORY_MANAGER_NAME,
583
                BOOKMARKSANDHISTORY_MANAGER_DESCRIPTION, clazz);
584
    }
585

  
586
    /**
587
     * Registers the Class implementing the {@link BookmarksAndHistoryManager}
588
     * interface.
589
     *
590
     * @param clazz implementing the {@link BookmarksAndHistoryManager} interface
591
     */
592
    public static void registerBookmarksAndHistoryManager(Class clazz) {
593
        getInstance().register(BOOKMARKSANDHISTORY_MANAGER_NAME,
594
                BOOKMARKSANDHISTORY_MANAGER_DESCRIPTION, clazz);
595
    }
596

  
597
    /**
598
     * Return a reference to {@link BookmarksAndHistoryManager}.
599
     *
600
     * @return a reference to {@link BookmarksAndHistoryManager}
601
     * @throws LocatorException if there is no access to the class or the class
602
     * cannot be instantiated
603
     * @see Locator#get(String)
604
     */
605
    public static BookmarksAndHistoryManager getBookmarksAndHistoryManager()
606
            throws LocatorException {
607
        return (BookmarksAndHistoryManager) getInstance().get(BOOKMARKSANDHISTORY_MANAGER_NAME);
608
    }
609

  
610
    public static void registerComplementsManager(Class clazz) {
611
        getInstance().registerDefault(COMPLEMENTS_MANAGER_NAME,
612
                COMPLEMENTS_MANAGER_DESCRIPTION, clazz);
613
    }
614

  
615
    public static ComplementsManager getComplementsManager()
616
            throws LocatorException {
617
        return (ComplementsManager) getInstance().get(COMPLEMENTS_MANAGER_NAME);
618
    }
619

  
577 620
    public static void registerDefaultToolsLibraries() {
578 621
        ToolsLocator.registerDefaultOperationManager(DefaultOperationManager.class);
579 622
        ToolsLocator.registerDefaultTaskStatusManager(DefaultTaskStatusManager.class);
......
587 630
        ToolsLocator.registerDefaultFoldersManager(DefaultFoldersManager.class);
588 631
        ToolsLocator.registerDefaultPersistenceManager(ZipXMLPersistenceManager.class);
589 632
        ToolsLocator.registerComplementsManager(DefaultComplementsManager.class);
633
        ToolsLocator.registerDefaultBookmarksAndHistoryManager(DefaultBookmarksAndHistoryManager.class);
590 634
    }
591 635
    
592 636
    public static void initializeLibraries() {

Also available in: Unified diff