org.geotools.data.ows
Interface Request

All Known Subinterfaces:
DescribeLayerRequest, GetCapabilitiesRequest, GetFeatureInfoRequest, GetLegendGraphicRequest, GetMapRequest, GetStylesRequest, PutStylesRequest
All Known Implementing Classes:
AbstractDescribeLayerRequest, AbstractGetCapabilitiesRequest, AbstractGetFeatureInfoRequest, AbstractGetLegendGraphicRequest, AbstractGetMapRequest, AbstractGetStylesRequest, AbstractPutStylesRequest, AbstractRequest, AbstractWMSRequest, WMS1_0_0.GetCapsRequest, WMS1_0_0.GetFeatureInfoRequest, WMS1_0_0.GetMapRequest, WMS1_1_0.GetCapsRequest, WMS1_1_0.GetFeatureInfoRequest, WMS1_1_0.GetMapRequest, WMS1_1_0.InternalDescribeLayerRequest, WMS1_1_0.InternalGetLegendGraphicRequest, WMS1_1_0.InternalGetStylesRequest, WMS1_1_0.InternalPutStylesRequest, WMS1_1_1.GetCapsRequest, WMS1_1_1.GetFeatureInfoRequest, WMS1_1_1.GetMapRequest, WMS1_3_0.GetCapsRequest, WMS1_3_0.GetFeatureInfoRequest, WMS1_3_0.GetMapRequest

public interface Request

This represents a Request to be made against a Open Web Service.

Author:
rgould
Module:

Field Summary
static String REQUEST
          Represents the REQUEST parameter
static String SERVICE
           
static String VERSION
          Represents the VERSION parameter
static String WMTVER
          Represents the WMTVER parameter
 
Method Summary
 Response createResponse(String contentType, InputStream inputStream)
          Each Request must know how to create it's counterpart Response.
 URL getFinalURL()
          Once the properties of the request are configured, this will return the URL that points to the server and contains all of the appropriate name/value parameters.
 String getPostContentType()
          If this request uses POST, it must specify the content type of the data that is to be written out during performPostOutput().
 Properties getProperties()
           
 void performPostOutput(OutputStream outputStream)
          This is called during the connection to the server, allowing this request to write out data to the server by using the provided outputStream.
 boolean requiresPost()
          This method indicates whether this request needs to transmit some data to the server using POST.
 void setProperty(String name, String value)
          Sets the name/value property for this request.
 

Field Detail

REQUEST

static final String REQUEST
Represents the REQUEST parameter

See Also:
Constant Field Values

VERSION

static final String VERSION
Represents the VERSION parameter

See Also:
Constant Field Values

WMTVER

static final String WMTVER
Represents the WMTVER parameter

See Also:
Constant Field Values

SERVICE

static final String SERVICE
See Also:
Constant Field Values
Method Detail

getFinalURL

URL getFinalURL()
Once the properties of the request are configured, this will return the URL that points to the server and contains all of the appropriate name/value parameters.

Returns:
a URL that can be used to issue the request

setProperty

void setProperty(String name,
                 String value)
Sets the name/value property for this request. Note that when using this method, it is up to the programmer to provide their own encoding of value according to the OWS specifications! The code will not do this for you. Different OWS specifications define different ways to do this. There are notorious differences between WMS 1.1.1 (section 6.2.1) and WMS 1.3.0 (section 6.3.2) for example. If value is null, "name" is removed from the properties table.

Parameters:
name - the name of the property
value - the value of the property

getProperties

Properties getProperties()
Returns:
a copy of this request's properties

createResponse

Response createResponse(String contentType,
                        InputStream inputStream)
                        throws ServiceException,
                               IOException
Each Request must know how to create it's counterpart Response. Given the content type and input stream (containin the response data), this method must return an appropriate Response object.

Parameters:
contentType - the MIME type of the data in the inputStream
inputStream - contains the data from the response
Throws:
ServiceException
IOException

requiresPost

boolean requiresPost()
This method indicates whether this request needs to transmit some data to the server using POST. If this returns true, performPostOutput() will be called during the connection, allowing the data to be written out to the server.

Returns:
true if this request needs POST support, false otherwise.

getPostContentType

String getPostContentType()
If this request uses POST, it must specify the content type of the data that is to be written out during performPostOutput(). For open web services, this is usually "application/xml".

Returns:
the MIME type of the data to be sent during the request

performPostOutput

void performPostOutput(OutputStream outputStream)
                       throws IOException
This is called during the connection to the server, allowing this request to write out data to the server by using the provided outputStream. Implementors of this method do not need to call outputStream.flush() or outputStream.close(). The framework will call them immediately after calling this method.

Parameters:
outputStream -
Throws:
IOException


Copyright © 1996-2009 Geotools. All Rights Reserved.