|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.networkanalyst.NAServer
public class NAServer
Deprecated as of 10.0. A MapServer object extension for performing network analysis within a stateless environment.
At version 10.1, ArcGIS for Server no longer supports performing network analysis via local connections using the GISServer and GISClient APIs. Use the SOAP or REST API instead.
The NAServer is a MapServer object extension that can be used to perform network analysis in a stateless environment using ArcGIS for Server.
Field Summary |
---|
Fields inherited from interface com.esri.arcgis.system.IObjectActivate |
---|
IID, IIDe3b78022_143e_4e61_9099_ed319ec061e7, xxDummy |
Fields inherited from interface com.esri.arcgis.system.IRequestHandler |
---|
IID46a0e2ea_3b64_4a46_bd78_88a1660f35bb |
Fields inherited from interface com.esri.arcgis.system.IRESTRequestHandler |
---|
IID, IID9d66a418_d54a_48ed_88bd_043a25fa9c83, xxDummy |
Constructor Summary | |
---|---|
NAServer()
Constructs a NAServer using ArcGIS Engine. |
|
NAServer(Object obj)
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts. NAServer theNAServer = (NAServer) obj; |
Method Summary | |
---|---|
void |
activate()
Activates the object. |
void |
construct(IPropertySet props)
Two phase object construction. |
void |
deactivate()
Deactivates the object. |
boolean |
equals(Object o)
Compare this object with another |
static String |
getClsid()
getClsid. |
String[] |
getNALayerNames(int layerType)
Array of network analysis layers of a particular analysis type. |
INAServerNetworkDescription |
getNetworkDescription(String nALayerName)
Description of the network dataset associated with the specified network analysis layer. |
String |
getSchema()
This method returns the resource hierarchy of a REST based SOE. |
INAServerSolverParams |
getSolverParameters(String nALayerName)
Default solver parameters for the specified network analysis layer. |
INAServerSolverParams |
getSolverParameters2(String nALayerName,
String layerToken,
boolean populateNAClasses)
Default solver parameters for the specified network analysis layer. |
byte[] |
handleBinaryRequest(byte[] request)
Handles a binary request. |
byte[] |
handleBinaryRequest2(String capabilities,
byte[] request)
Handles a binary request with explicit capabilities. |
byte[] |
handleRESTRequest(String capabilities,
String resourceName,
String operationName,
String operationInput,
String outputFormat,
String requestProperties,
String[] responseProperties)
Handles REST requests for SOE. |
String |
handleStringRequest(String capabilities,
String request)
Handles a SOAP string request. |
int |
hashCode()
the hashcode for this object |
void |
init(IServerObjectHelper pSOH)
Initializes and starts the server object specified by the IServerObjectHelper reference. |
void |
initLogging(ILog log)
Initializes an object with a log. |
void |
interfaceSupportsErrorInfo(GUID riid)
interfaceSupportsErrorInfo |
void |
shutdown()
Stops the server object specified by the IServerObjectHelper reference. |
INAServerSolverResults |
solve(INAServerSolverParams nAServerSolverParams)
Perform network analysis based on the input solve parameters. |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef |
---|
getJintegraDispatch, release |
Constructor Detail |
---|
public NAServer() throws IOException, UnknownHostException
IOException
- if there are interop problems
UnknownHostException
- if there are interop problemspublic NAServer(Object obj) throws IOException
NAServer theNAServer = (NAServer) obj;
obj
to NAServer
.
obj
- an object returned from ArcGIS Engine or Server
IOException
- if there are interop problemsMethod Detail |
---|
public static String getClsid()
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public String[] getNALayerNames(int layerType) throws IOException, AutomationException
GetNALayerNames returns an array of names of NALayers of a given type. For example, you could use this method to find the names of all of the route analysis layers in the default map of the map server.
getNALayerNames
in interface INAServer
layerType
- A com.esri.arcgis.networkanalyst.esriNAServerLayerType constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public INAServerNetworkDescription getNetworkDescription(String nALayerName) throws IOException, AutomationException
GetNetworkDescription returns an NAServerNetworkDescription object that allows you to retrieve things like the name of the network dataset as well as the sources and attributes within the network dataset.
getNetworkDescription
in interface INAServer
nALayerName
- The nALayerName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public INAServerSolverParams getSolverParameters(String nALayerName) throws IOException, AutomationException
GetSolverParameters returns the NAServerSolverParams object (NAServerRouteParams, NAServerClosestFacilityParams, NAServerServiceAreaParams, NAServerLocationAllocationParams, NAServerODCostMatrixParams, NAServerVRPParams) corresponding to the NALayer name passed in. The parameter object returned will have defaults based on the NALayer it is referencing.
You can pass this resulting object into the Solve method on NAServer to perform network analysis.
getSolverParameters
in interface INAServer
nALayerName
- The nALayerName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public INAServerSolverResults solve(INAServerSolverParams nAServerSolverParams) throws IOException, AutomationException
Solve performs network analysis based on the NAServerSolverParams object (NAServerRouteParams, NAServerClosestFacilityParams, NAServerServiceAreaParams) that was passed in and returns it's output through an NAServerSolverResults object (NAServerRouteResults, NAServerClosestFacilityResults, NAServerServiceAreaParams).
solve
in interface INAServer
nAServerSolverParams
- A reference to a com.esri.arcgis.networkanalyst.INAServerSolverParams (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public INAServerSolverParams getSolverParameters2(String nALayerName, String layerToken, boolean populateNAClasses) throws IOException, AutomationException
GetSolverParameters2 returns the NAServerSolverParams object (NAServerRouteParams, NAServerClosestFacilityParams, NAServerServiceAreaParams, NAServerLocationAllocationParams, NAServerODCostMatrixParams, NAServerVRPParams) corresponding to the NALayerName and LayerToken passed in. if PopulateNAClasses was set to True, returned NAServerSolverParams instance will contain correspondent recordsets populated with content of NAClasses.
As opposed to GetSolverParameters, NAServerSolverParams instance returned by GetSolverParameters2 does not contain MapDescription and ImageDescription populated, which significantly reduces response size.
You can pass this resulting object into the Solve method on NAServer to perform network analysis.
LayerToken can be obtained from NAServerSolverResults object if the instance of NAServerSolverParams previously passed to the Solve method had SaveLayerOnServer set to True.
This method can be useful when, for example, multiple clients are working with a shared network analysis layer stored on server, or shared layer originally was created and saved on server by another client process.
getSolverParameters2
in interface INAServer2
nALayerName
- The nALayerName (in)layerToken
- The layerToken (in)populateNAClasses
- The populateNAClasses (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void init(IServerObjectHelper pSOH) throws IOException, AutomationException
init
in interface IServerObjectExtension
pSOH
- A reference to a com.esri.arcgis.server.IServerObjectHelper (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void shutdown() throws IOException, AutomationException
shutdown
in interface IServerObjectExtension
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void initLogging(ILog log) throws IOException, AutomationException
initLogging
in interface ILogSupport
log
- A reference to a com.esri.arcgis.system.ILog (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void activate() throws IOException, AutomationException
activate
in interface IObjectActivate
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void deactivate() throws IOException, AutomationException
deactivate
in interface IObjectActivate
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void construct(IPropertySet props) throws IOException, AutomationException
construct
in interface IObjectConstruct
props
- A reference to a com.esri.arcgis.system.IPropertySet (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public byte[] handleBinaryRequest(byte[] request) throws IOException, AutomationException
handleBinaryRequest
in interface IRequestHandler
request
- An unsigned byte (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String handleStringRequest(String capabilities, String request) throws IOException, AutomationException
handleStringRequest
in interface IRequestHandler
capabilities
- The capabilities (in)request
- The request (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public byte[] handleBinaryRequest2(String capabilities, byte[] request) throws IOException, AutomationException
handleBinaryRequest2
in interface IRequestHandler2
capabilities
- The capabilities (in)request
- An unsigned byte (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public byte[] handleRESTRequest(String capabilities, String resourceName, String operationName, String operationInput, String outputFormat, String requestProperties, String[] responseProperties) throws IOException, AutomationException
This method is invoked by ArcGIS Server's REST handler, which intercepts client's request (in URL form), parses it and passes it on to this method in form of parameter values.
The REST SOE developer must add logic to use these parameter values to determine which resource/operation is being requested and accordingly handle these requests and generate responses in the output format indicated by the "outputFormat" parameter. For more information on developing REST SOEs, please consult the Java ArcObjects Developer Guide.
Developer doc: Developing extensions > Server Object Extensions > SOE Web Services > REST Web Services > Developing SOE REST Web Services
Samples: Samples > Server Object Extensions section
handleRESTRequest
in interface IRESTRequestHandler
capabilities
- The capabilities supported by the SOE. An admin can choose which
capabilities are enabled on a particular SOE (in ArcGIS Manager or ArcCatalog), based on certain criteria such as security roles.
This list of allowed capabilities is then sent to this method, at runtime, as a comma separated list. (in)resourceName
- Name of the resource being addressed. If empty, its assumed
that root resource is being addressed. (in)operationName
- Name of the operation being invoked. If empty, description of
resource is returned. (in)operationInput
- Input parameters, in form of comma separated list, to the operation specified by operationName parameter. (in)outputFormat
- OutputFormat of operation. Possible formats are JSON, HTML, AMF, etc. (in)requestProperties
- The requestProperties (in)responseProperties
- The responseProperties (out)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getSchema() throws IOException, AutomationException
For an SOE that has a root resource (called "root") with one operation ("operation0"), and 2 sub-resources with one operation each ("operation1" and "operation2" respectively), the schema would look like:
{
"name": "MyRESTSOE",
"description": "My REST SOE with 3 resources and 1 operation each.",
"isCollection": false,
"operations": [
{
"name": "operation0",
"parameters": ["param01"],
"supportedOutputFormats": ["json"]
}
],
"resources": [
{
"name": "subresource1",
"description": "Sub Resource 1",
"isCollection": true,
"operations": [
{
"name": "operation1",
"parameters": ["param10", "param11"],
"supportedOutputFormats": ["json"]
}
]
},
{
"name": "subresource2",
"description": "Sub Resource 2",
"isCollection": true,
"operations": [
{
"name": "operation2",
"parameters": ["param20", "param21"],
"supportedOutputFormats": ["json"]
}
]
}
]
}
getSchema
in interface IRESTRequestHandler
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void interfaceSupportsErrorInfo(GUID riid) throws IOException, AutomationException
Indicates whether the interface supports IErrorInfo.
interfaceSupportsErrorInfo
in interface ISupportErrorInfo
riid
- A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |