]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.maps.elevation.server/src/org/simantics/maps/elevation/server/Activator.java
First version of elevation server based on GeoTIFF files
[simantics/district.git] / org.simantics.maps.elevation.server / src / org / simantics / maps / elevation / server / Activator.java
1 package org.simantics.maps.elevation.server;
2
3 import java.util.concurrent.atomic.AtomicBoolean;
4
5 import javax.imageio.spi.IIORegistry;
6 import javax.imageio.spi.ImageInputStreamSpi;
7 import javax.imageio.spi.ImageOutputStreamSpi;
8
9 import org.osgi.framework.BundleActivator;
10 import org.osgi.framework.BundleContext;
11
12 import it.geosolutions.imageio.stream.input.spi.FileImageInputStreamExtImplSpi;
13 import it.geosolutions.imageio.stream.input.spi.StringImageInputStreamSpi;
14 import it.geosolutions.imageio.stream.input.spi.URLImageInputStreamSpi;
15 import it.geosolutions.imageio.stream.output.spi.FileImageOutputStreamExtImplSpi;
16 import it.geosolutions.imageio.stream.output.spi.StringImageOutputStreamSpi;
17 import it.geosolutions.imageio.stream.output.spi.URLImageOutputStreamSpi;
18
19 public class Activator implements BundleActivator {
20     
21     private static AtomicBoolean registered = new AtomicBoolean(false);
22
23     public static final String PLUGIN_ID = "org.simantics.maps.elevation.server";
24
25     @Override
26     public void start(BundleContext context) throws Exception {
27         // register SPI's
28         registerSpis();
29     }
30     
31     public static void registerSpis() {
32         if (!registered.getAndSet(true)) {
33             IIORegistry.getDefaultInstance().registerServiceProvider(new FileImageInputStreamExtImplSpi(), ImageInputStreamSpi.class);
34             IIORegistry.getDefaultInstance().registerServiceProvider(new URLImageInputStreamSpi(), ImageInputStreamSpi.class);
35             IIORegistry.getDefaultInstance().registerServiceProvider(new StringImageInputStreamSpi(), ImageInputStreamSpi.class);
36             IIORegistry.getDefaultInstance().registerServiceProvider(new FileImageOutputStreamExtImplSpi(), ImageOutputStreamSpi.class);
37             IIORegistry.getDefaultInstance().registerServiceProvider(new URLImageOutputStreamSpi(), ImageOutputStreamSpi.class);
38             IIORegistry.getDefaultInstance().registerServiceProvider(new StringImageOutputStreamSpi(), ImageOutputStreamSpi.class);
39         }
40     }
41
42     @Override
43     public void stop(BundleContext context) throws Exception {
44         
45     }
46
47 }