com.esri.adf.web.ags.data.geometry
Class AGSGeometryResource

java.lang.Object
  extended by com.esri.adf.web.data.GISResource
      extended by com.esri.adf.web.ags.data.geometry.AGSGeometryResource
All Implemented Interfaces:
WebContextInitialize, WebLifecycle, Serializable
Direct Known Subclasses:
AGSLocalGeometryResource

public class AGSGeometryResource
extends GISResource

The AGSGeometryResource represents a GISResource for ArcGIS Server Geometry Services. More specifically, this is the internet resource to the ArcGIS Server. User will need to provide a URL to a web service end point. Additionally, for secure web services, user will need to provide an AGSUser to authenticate against the service.

It is important to note that this resource uses the SOAP protocol to communicate with the server. More specifically, it uses SOAP over HTTP. In order for some of the AGS functionalities to share the same codebase we use SOAP to communicate with local services as well wherever possible. Given this scenario, this class serves as a super-class for the AGSLocalGeometryResource which represents a GISResource for ArcGIS Server Local Geometry Services.

The capabilities of this service are restricted by the methods exposed by the GeometryServerPort interface to ArcGIS Server internet geometry services.

See Also:
Serialized Form

Field Summary
protected  String endPointURL
          The URL to a Geometry Web Service end point.
protected  String generatedAlias
          If the user does not provide an alias for this resource, the end point URL is used as an alias and is represented by this variable.
protected  com.esri.arcgisws.GeometryServerBindingStub geometryServer
          The remote stub to the geometry service that this resource represents.
protected  String serviceCatalogURL
          The URL to a web service catalog end point.
protected  AGSUser user
          An AGSUser object to authenticate connections to secure web services.
 
Fields inherited from class com.esri.adf.web.data.GISResource
alias, context, defaultSpatialReference, functionalities, hasFailedFunctionalities, init
 
Constructor Summary
AGSGeometryResource()
           Creates a new AGSGeometryResource with no URL set.
AGSGeometryResource(String endPointURL)
           Creates a new AGSGeometryResource to an ArcGIS Server Geometry Service at the given end point.
 
Method Summary
protected  void createGeometryServer()
           This method connects to the ArcGIS Server Geometry Service end point and creates a remote stub to the server.
 String getAlias()
           Returns a reader friendly name for this resource.
 String getEndPointURL()
           Returns the URL to a Geometry Web Service end point.
 com.esri.arcgisws.GeometryServerPort getGeometryServer()
           Returns The remote stub to the geometry service that this resource represents.
 String getServiceCatalogURL()
          Returns the service catalog end point URL.
 AGSUser getUser()
           Returns the AGSUser to authenticate connections to secure web services.
 void init(WebContext webContext)
           This method is called by the WebContext to initialize the resource.
 void setEndPointURL(String geometryEndPointURL)
           Sets the URL to a Geometry Web Service end point.
 void setServiceCatalogURL(String serviceCatalogURL)
          Sets the service catalog end point URL.
 void setUser(AGSUser user)
           Sets the AGSUser to authenticate connections to secure web services.
 
Methods inherited from class com.esri.adf.web.data.GISResource
activate, addFunctionality, destroy, getDefaultSpatialReference, getFunctionalities, getFunctionality, getWebContext, passivate, setAlias, setFunctionalities
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

geometryServer

protected transient com.esri.arcgisws.GeometryServerBindingStub geometryServer
The remote stub to the geometry service that this resource represents.


endPointURL

protected String endPointURL
The URL to a Geometry Web Service end point.
  For example,
   http://localhost:8399/arcgis/services/Geometry/GeometryServer
 


serviceCatalogURL

protected String serviceCatalogURL
The URL to a web service catalog end point.


generatedAlias

protected String generatedAlias
If the user does not provide an alias for this resource, the end point URL is used as an alias and is represented by this variable.


user

protected AGSUser user
An AGSUser object to authenticate connections to secure web services.

Constructor Detail

AGSGeometryResource

public AGSGeometryResource()

Creates a new AGSGeometryResource with no URL set. This constructor is typically used when one configures this resource in a JSF config file. If you are to programmatically create this resource, it is recommended that you use the other constructor that takes an end point URL as input.

See Also:
AGSGeometryResource(String)

AGSGeometryResource

public AGSGeometryResource(String endPointURL)

Creates a new AGSGeometryResource to an ArcGIS Server Geometry Service at the given end point. If you are to programmatically create this resource, it is recommended that you use this constructor.

Parameters:
endPointURL - the URL to the ArcGIS Server Geometry Service
See Also:
AGSGeometryResource()
Method Detail

createGeometryServer

protected void createGeometryServer()

This method connects to the ArcGIS Server Geometry Service end point and creates a remote stub to the server. If user's credentials is provided it will attempt to connect to the server with that user's credentials.

Throws:
ADFAGSException - if an error occurs while connecting to the endPointURL

init

public void init(WebContext webContext)
Description copied from class: GISResource

This method is called by the WebContext to initialize the resource. This is typically called when the context itself is initialized or when users add a new resource to the context by using the WebContext.addResource(String, GISResource) method. A GISResource is usable only after this method has been called.

This method iterates through all its supported GISFunctionalitys and calls the GISFunctionality.initFunctionality(GISResource) on them all.

Sub-classes that want to do custom initialization should override this method and make the super call first before doing the custom stuff:

 public void init(WebContext context) {
   super.init(context);
   myInit();
 }
 

Specified by:
init in interface WebContextInitialize
Overrides:
init in class GISResource
Parameters:
webContext - the WebContext that maintains a reference to this resource
See Also:
WebContextInitialize.init(com.esri.adf.web.data.WebContext), GISFunctionality.initFunctionality(GISResource), WebContext.init(WebContext), WebContext.addResource(String, GISResource)

getAlias

public String getAlias()
Description copied from class: GISResource

Returns a reader friendly name for this resource.

It is a good practice for users to explicitly set an alias when the resource is created programmatically or declaratively. Resource providers should provide an auto-generated alias anyway in case users don't explicitly set an alias themselves.

Overrides:
getAlias in class GISResource
Returns:
a reader friendly name for this resource

getGeometryServer

public com.esri.arcgisws.GeometryServerPort getGeometryServer()

Returns The remote stub to the geometry service that this resource represents.

Returns:
The remote stub to the geometry service that this resource represents

getEndPointURL

public String getEndPointURL()

Returns the URL to a Geometry Web Service end point.

Returns:
the URL to a Geometry Web Service end point

setEndPointURL

public void setEndPointURL(String geometryEndPointURL)

Sets the URL to a Geometry Web Service end point.

Parameters:
geometryEndPointURL - the URL to a Geometry Web Service end point

getServiceCatalogURL

public String getServiceCatalogURL()
Returns the service catalog end point URL.

Returns:
the service catalog end point URL

setServiceCatalogURL

public void setServiceCatalogURL(String serviceCatalogURL)
Sets the service catalog end point URL.

Parameters:
serviceCatalogURL - the service catalog end point URL

setUser

public void setUser(AGSUser user)

Sets the AGSUser to authenticate connections to secure web services.

Parameters:
user - the AGSUser to authenticate connections to secure web services

getUser

public AGSUser getUser()

Returns the AGSUser to authenticate connections to secure web services.

Returns:
the AGSUser to authenticate connections to secure web services