Statistics
| Revision:

gvsig-educa / org.gvsig.educa.thematicmap / trunk / org.gvsig.educa.thematicmap / org.gvsig.educa.thematicmap.lib / org.gvsig.educa.thematicmap.lib.impl / src / main / java / org / gvsig / educa / thematicmap / impl / DefaultThematicMapProviderManager.java @ 220

History | View | Annotate | Download (2.1 KB)

1 195 nfrancisco
package org.gvsig.educa.thematicmap.impl;
2
3 218 jjdelcerro
import java.util.ArrayList;
4 220 nfrancisco
import java.util.Iterator;
5 218 jjdelcerro
import java.util.List;
6
7 195 nfrancisco
import org.gvsig.educa.thematicmap.spi.ThematicMapProviderManager;
8 218 jjdelcerro
import org.gvsig.tools.ToolsLocator;
9
import org.gvsig.tools.extensionpoint.ExtensionPoint;
10
import org.gvsig.tools.extensionpoint.ExtensionPointManager;
11 195 nfrancisco
import org.gvsig.tools.service.Service;
12
import org.gvsig.tools.service.spi.AbstractProviderManager;
13 218 jjdelcerro
import org.gvsig.tools.service.spi.ProviderFactory;
14 195 nfrancisco
import org.gvsig.tools.service.spi.ProviderServices;
15 218 jjdelcerro
import org.slf4j.Logger;
16
import org.slf4j.LoggerFactory;
17 195 nfrancisco
18
public class DefaultThematicMapProviderManager extends AbstractProviderManager
19
                implements ThematicMapProviderManager {
20
21 220 nfrancisco
        private static final Logger logger = LoggerFactory
22
                        .getLogger(DefaultThematicMapProviderManager.class);
23
24 195 nfrancisco
        public static final String PROVIDERS_NAME = "ThematicMap.providers";
25
26
        public static final String PROVIDERS_DESCRIPTION = "ThematicMap providers";
27
28 200 nfrancisco
        public DefaultThematicMapProviderManager() {
29
                super();
30
                System.out.println("\nprovider created!\n;");
31
        }
32 220 nfrancisco
33 195 nfrancisco
        @Override
34
        protected String getRegistryDescription() {
35
                return PROVIDERS_DESCRIPTION;
36
        }
37
38
        @Override
39
        protected String getRegistryKey() {
40
                return PROVIDERS_NAME;
41
        }
42
43
        public ProviderServices createProviderServices(Service service) {
44
                return new DefaultThematicMapProviderServices();
45
        }
46
47 218 jjdelcerro
        public List<ProviderFactory> getProviderFactories() {
48
                ExtensionPointManager epm = ToolsLocator.getExtensionPointManager();
49
                List<ProviderFactory> factories = new ArrayList<ProviderFactory>();
50
51 220 nfrancisco
                ExtensionPoint ep_prov = epm.get(PROVIDERS_NAME);
52
                if( ep_prov == null ) {
53
                        return factories;
54
                }
55
                Iterator factoriesIt =  ep_prov.iterator();
56
                while (factoriesIt.hasNext()) {
57
                        ExtensionPoint ep = (ExtensionPoint) factoriesIt.next();
58 218 jjdelcerro
59 220 nfrancisco
                        String factoryName = ep.getName();
60
61
                        ProviderFactory factory = null;
62
63
                        try {
64
                                factory = ((ProviderFactory) ep.create(factoryName));
65
                                factories.add(factory);
66
                        } catch (Exception e) {
67
                                logger.info("Can't create ThematicMapProviderfactory for '"
68
                                                + factoryName + ".");
69 218 jjdelcerro
                        }
70
                }
71
                return factories;
72
        }
73 195 nfrancisco
}