Statistics
| Revision:

root / trunk / extensions / extArcims / src / es / prodevelop / cit / gvsig / arcims / fmap / drivers / ArcImsDriver.java @ 8110

History | View | Annotate | Download (2.04 KB)

1
/**
2
 * 
3
 */
4
package es.prodevelop.cit.gvsig.arcims.fmap.drivers;
5

    
6
import java.io.File;
7
import java.io.IOException;
8
import java.net.ProtocolException;
9
import java.net.URL;
10

    
11
import org.gvsig.remoteClient.arcims.ArcImsStatus;
12
import org.gvsig.remoteClient.arcims.exceptions.ArcImsException;
13
import org.gvsig.remoteClient.wms.ICancellable;
14

    
15
/**
16
 * This interface offers the functionality of an ArcIMS client.
17
 * 
18
 * @see es.prodevelop.cit.gvsig.arcims.fmap.drivers.FMapRasterArcImsDriver FMapRasterArcImsDriver
19
 * @author jldominguez
20
 */
21
public interface ArcImsDriver {
22
        
23
        /**
24
        * Gets the layers available on the server
25
        * (the class that implements this interface will 
26
        * get the service name from the user)
27
        * 
28
        * @param server ArcIMS server's URL
29
        */
30
        public void getCapabilities(URL server, ICancellable cancel)
31
                throws ArcImsException, IOException, ProtocolException;
32

    
33
        /**
34
        * Gets the visual information from the layers of 
35
        * the required service (that is, the map itself) depending
36
        * on the graphic context (coord. system, view's size, etc)
37
        * 
38
        * @param status the graphic context in which the request is performed
39
        * @return the graphic data to be viewed, that is, the map
40
        */
41
        public Object getMap(ArcImsStatus status)
42
                throws ArcImsException, IOException, ProtocolException;
43

    
44
        /**
45
        * Gets the layer's available information on a particular xy coordinates
46
        * (usually derived from a mouse click). If it's a raster layer,
47
        * a request will be sent to the server asking for the data associated
48
        * to the elements (polygon, line or point) which cover the clicked
49
        * pixel.
50
        * 
51
        * @param status the graphic context in which the request is performed
52
        * (ccord. system, view's dimension etc.)
53
        * @param i x coordinate of the queried pixel 
54
        * @param j y coordinate of the queried pixel
55
        * @param  max_value maximun number of vector elements whose information
56
        * will be retrieved.
57
        * @return the available information at the given coordinates
58
        */
59
        public String getFeatureInfo(ArcImsStatus status, int i, int j, int max_value)
60
        throws ArcImsException, IOException, ProtocolException;
61

    
62
}