|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.geodatabasedistributed.GeoDataServer
public class GeoDataServer
The GeoDataServer component provides programmatic access to a geodatabase.
The GeoDataServer coclass represents a connection to a geodatabase. It exposes methods to perform geodatabase replication operations, makes copies using data extraction, and query and browse a geodatabase. A GeoDataServer may be initalized with a local geodatabase or it may be accessed as a service published inside ArcGIS for Server. Through ArcGIS for Server, you can use a GeoDataServer to perform geodatabase operations on a remote geodatabase over the Internet.
Field Summary |
---|
Fields inherited from interface com.esri.arcgis.system.IRequestHandler |
---|
IID, IID46a0e2ea_3b64_4a46_bd78_88a1660f35bb, xxDummy |
Fields inherited from interface com.esri.arcgis.system.IObjectActivate |
---|
IID, IIDe3b78022_143e_4e61_9099_ed319ec061e7, xxDummy |
Fields inherited from interface com.esri.arcgis.system.IRESTRequestHandler |
---|
IID, IID9d66a418_d54a_48ed_88bd_043a25fa9c83, xxDummy |
Constructor Summary | |
---|---|
GeoDataServer()
Constructs a GeoDataServer using ArcGIS Engine. |
|
GeoDataServer(Object obj)
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts. GeoDataServer theGeoDataServer = (GeoDataServer) obj; |
Method Summary | |
---|---|
void |
activate()
Activates the object. |
IGDSData |
compareReplicaSchema(IGDSData relativeReplicaSchemaDoc,
int transportType)
Compares the schema of a replica with that of its relative, and returns a schema changes XML document. |
void |
construct(IPropertySet props)
Two phase object construction. |
IGDSData |
createReplica(String parentVersion,
String replicaName,
IGPReplicaDescription replicaDesc,
IGPReplicaOptions repOptions,
IGDSExportOptions exportOptions,
int transportType)
Creates a Replica. |
void |
deactivate()
Deactivates the object. |
boolean |
equals(Object o)
Compare this object with another |
IGPReplicaDatasets |
expandReplicaDatasets(IGPReplicaDatasets repDatasets)
Expands a set of replica datasets taking into consideration geodatabase constructs (topologies, relationship classes, etc.). |
IGPReplicaDatasets |
expandReplicaDatasets2(IGPReplicaDatasets gPReplicaDatasets,
IGPReplicaOptions replicaOptions)
Expands a set of replica datasets taking into consideration geodatabase constructs (topologies, relationship classes, etc.). |
IGDSData |
exportAcknowledgement(String replicaName,
int transportType)
Export an acknowledgement message for a replica. |
IGDSData |
exportReplicaDataChanges(String replicaName,
IGDSExportOptions options,
int transportType,
int generationsToExport,
boolean switchRole)
Exports data changes for a replica. |
IGDSData |
exportReplicaSchema(String replicaName,
int transportType)
Exports the schema of a replica to an Xml document. |
IGDSData |
extractData(String versionName,
IGPReplicaDescription replicaDesc,
IGDSExportOptions options,
int transportType)
Extract Data. |
IServerObjectExtension |
findExtensionByCLSID(String cLSID)
Returns a server object extension found using a string representation of its class ID. |
IServerObjectExtension |
findExtensionByTypeName(String name)
Returns a server object extension found using its type name. |
static String |
getClsid()
getClsid. |
String |
getConfigurationName()
Name of the server object configuration that defines the server object. |
IDataElements |
getDataElements(IDEBrowseOptions pBrowseOptions)
The data elements in the workspace. |
String |
getDefaultWorkingVersion()
The default working version for all operations/methods. |
IWorkspace |
getDefaultWorkingWorkspace()
The default working workspace for the geodata server. |
int |
getMaxRecordCount()
The maximum number of records to be returned by a search. |
IGDSQueryResultPortion |
getNextResultPortion(IResultPortionInfo desiredRange)
Gets the next portion of the results. |
String |
getPhysicalOutputDirectory()
The physical directory for output files. |
IGPReplica |
getReplica(String replicaName)
Return the replica in the workspace that has a specific name. |
IGPReplicas |
getReplicas()
The replicas in the workspace. |
String |
getSchema()
This method returns the resource hierarchy of a REST based SOE. |
String |
getTypeName()
Type of the server object (MapServer or GeocodeServer). |
IGPVersionInfos |
getVersions()
The versions in the workspace. |
String |
getVirtualOutputDirectory()
The virtual directory for output files. |
int |
getWrappedWorkspaceType()
The type of the geodatabase the geodataserver operates on. |
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 |
importAcknowledgement(IGDSData data)
Import an acknowledgement message for a replica. |
void |
importData(IGDSData pData,
int fmt)
Imports data into the workspace. |
boolean |
importReplicaDataChanges(int sourceType,
int reconcilePolicy,
boolean columnLevel,
IGDSData data)
Import the data changes for a replica. |
void |
importReplicaSchemaChanges(IGDSData schemaChangesDoc)
Updates the schema of the replica with the changes in an schema changes XML document. |
void |
initFromConnectionString(String connectionString)
Initializes a GeoDataServer object from a connection string to a geodatabase. |
void |
initFromFile(String file)
Initializes a GeoDataServer object from a geodatabase or an sde connection file (*.sde). |
void |
initFromMap(String filePath)
Initializes a GeoDataServer object with a map document. |
void |
initLogging(ILog log)
Initializes an object with a log. |
void |
initWithWorkspace(IWorkspace pWorkspace)
Initializes a GeoDataServer object with a workspace. |
void |
interfaceSupportsErrorInfo(GUID riid)
interfaceSupportsErrorInfo |
IGDSData |
reExportReplicaDataChanges(String replicaName,
IGDSExportOptions options,
int transportType,
int gensToExport)
Re-exports data changes for a replica. |
void |
setMaxRecordCount(int count)
The maximum number of records returned for query results. |
void |
setPhysicalOutputDirectory(String dirPath)
The physical directory for output files. |
void |
setVirtualOutputDirectory(String dirPath)
The virtual directory for output files. |
IGDSQueryResultPortion |
tableSearch(String versionName,
String tableName,
IQueryFilter queryFilter,
IResultPortionInfo queryRange)
Returns the records satisfying the specified query. |
void |
unregisterReplica(String replicaName)
Unregisters the replica. |
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 GeoDataServer() throws IOException, UnknownHostException
IOException
- if there are interop problems
UnknownHostException
- if there are interop problemspublic GeoDataServer(Object obj) throws IOException
GeoDataServer theGeoDataServer = (GeoDataServer) obj;
obj
to GeoDataServer
.
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 int getMaxRecordCount() throws IOException, AutomationException
The MaxRecordCount returns the maximum number of records that can be returned at once by a search. This value is stored as a configuration parameter with GeoDataServers publised on ArcGIS for Server. When intializing GeoDataServers from local geodatabases, you can set this value using the IGeoDataServerInit::MaxRecordCount property.
The TableSearch and GetNextResultPortion methods use this value to determine the maximum number of records that can be returned at once.
getMaxRecordCount
in interface IGeoDataServer
getMaxRecordCount
in interface IGeoDataServerInit
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IDataElements getDataElements(IDEBrowseOptions pBrowseOptions) throws IOException, AutomationException
getDataElements
in interface IGeoDataServer
pBrowseOptions
- A reference to a com.esri.arcgis.geodatabase.IDEBrowseOptions (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGPVersionInfos getVersions() throws IOException, AutomationException
If the GeoDataServer references an ArcSDE geodatabase, the Versions property returns the versions in the geodatabase.
getVersions
in interface IGeoDataServer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGPReplicas getReplicas() throws IOException, AutomationException
The Replicas property returns a list of the replicas from the geodatabase referenced by the GeoDataServer.
getReplicas
in interface IGeoDataServer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getDefaultWorkingVersion() throws IOException, AutomationException
If the GeoDataServer references an ArcSDE geodatabase, the DefaultWorkingVersion property returns the version used by default for GeoDataServer operations. Some methods, such as IGeoDataServer::CreateReplica allow you to reference a different version from which to execute the method.
getDefaultWorkingVersion
in interface IGeoDataServer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getWrappedWorkspaceType() throws IOException, AutomationException
getWrappedWorkspaceType
in interface IGeoDataServer
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGDSData extractData(String versionName, IGPReplicaDescription replicaDesc, IGDSExportOptions options, int transportType) throws IOException, AutomationException
The extractData method extracts schema and data from the geodatabase represented by the GeoDataServer in a disconnected environment. To extract data in a connected environment, see IReplicationAgent::ExtractData.
If the GeoDataServer references an ArcSDE geodatabase, the versionName parameter defines the version from which the data will be extracted.
The replicaDesc parameter is a description of the data to extract as well as various settings that define how the data will be extracted. For example, you can set a spatial filter and specify whether or not to include related data. See the GPReplicaDescription coclass for more information.
The options parameter defines the output of the method. This includes the outut format and whether or not the output will be compressed. See GDSExportOptions for more information.
If exporting to XML or FileGDBTransport, the output of this method can be used with the ImportData method to import the data into a destination geodatabase. If exporting to a file geodatabase or personal geodatabase, the output geodatabase can be used directly.
The TransportType indicates the desired transport type. Use esriGDSTransportTypeURL to place the output in a file in the virtual output directory. Use esriGDSTransportTypeEmbedded to have the results embedded in the output GDSData object. If no virtual output directory exists, the results will be embedded regardless of the value set for this parameter.
When executed, the method returns a GDSData object. See the GDSData coclass for more information.
extractData
in interface IGeoDataServer
versionName
- The versionName (in)replicaDesc
- A reference to a com.esri.arcgis.geodatabase.IGPReplicaDescription (in)options
- A reference to a com.esri.arcgis.geodatabasedistributed.IGDSExportOptions (in)transportType
- A com.esri.arcgis.geodatabasedistributed.esriGDSTransportType constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGDSData createReplica(String parentVersion, String replicaName, IGPReplicaDescription replicaDesc, IGPReplicaOptions repOptions, IGDSExportOptions exportOptions, int transportType) throws IOException, AutomationException
This method is used to create a replica in a disconected environment. You may create either a two way replica, a one way replica or a check-out replica. To create replicas in a connected environment, see IReplicationAgent2::CreateReplica2.
The parentVersion parameter is the version on the geodatabase represented by the geodatataserver that the replica will be created from. ReplicaName is the name for the replica.
The replicaDesc parameter is a description of the data to replicate as well as various settings that define how the data will be replicated. For example, you can set a spatial filter, set the replica model type, and specify whether or not to include related data. See the GPReplicaDescription coclass for more information.
The repOptions parameter is used to set various replica options such as the replica access type and the initial data sender. See the GPReplicaOptions coclass for more information.
The exportOptions parameter defines the output of the method. This includes the outut format and whether or not the output will be compressed. See GDSExportOptions for more information.
If exporting to XML or FileGDBTransport, the output of this method is used with the ImportData method to import the replica into a destination geodatabase and complete replica creation. For check-out replicas, you can also choose to replicate directly to a file geodatabase or personal geodatabase. Here the output is the replica geodatabase and therefore no import is required.
FileGDBTransport is not supported when IGPReplicaOptions registerExistingDataOnly flag is set to true. To create a replica by registering existing data only, export to XML instead.
The TransportType indicates the desired transport type. Use esriGDSTransportTypeURL to place the output in a file in the virtual output directory. Use esriGDSTransportTypeEmbedded to have the results embedded in the output GDSData object. If no virtual output directory exists, the results will be embedded regardless of the value set for this parameter.
When executed, the method returns a GDSData object. See the GDSData coclass for more information.
createReplica
in interface IGeoDataServer
parentVersion
- The parentVersion (in)replicaName
- The replicaName (in)replicaDesc
- A reference to a com.esri.arcgis.geodatabase.IGPReplicaDescription (in)repOptions
- A reference to a com.esri.arcgis.geodatabase.IGPReplicaOptions (in)exportOptions
- A reference to a com.esri.arcgis.geodatabasedistributed.IGDSExportOptions (in)transportType
- A com.esri.arcgis.geodatabasedistributed.esriGDSTransportType constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGPReplicaDatasets expandReplicaDatasets(IGPReplicaDatasets repDatasets) throws IOException, AutomationException
The ExpandReplicaDatasets method returns the expanded list of datasets to replicate or extract. Data extraction and replica creation apply an expansion process to ensure that all feature classes in a topology or geometric network and related feature classes and tables are included. For example, if you pass in a GPReplicaDataset for a feature class that is involved in a topology, replica creation will include all feature classes in the topology.
This method allows you to set properties for each expanded GPReplicaDataset before creating replicas or extracting data. Unless you use this method, the expanded classes will be given default properties.
expandReplicaDatasets
in interface IGeoDataServer
repDatasets
- A reference to a com.esri.arcgis.geodatabase.IGPReplicaDatasets (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void importData(IGDSData pData, int fmt) throws IOException, AutomationException
The ImportData method imports data into the geodatabase referenced by the GeoDataServer. The pData parameter takes a GDSData object which defines the data to import. The fmt parameter specifies the format of the data.
The data to import may be a XML workspace document or a FileGDB transport file generated from the IGeoDataServer::CreateReplica command. The process of importing these files completes the replica creation process and add a new child replica to the geodatabase.
The data may also be from a personal geodatabase, file geodatabase or an XML workspace document generated outside the context of replication. The IGeoDataServer::ExtractData method, for example, can also be used to generate these files. In these cases, the data is simply copied to the geodatabase.
importData
in interface IGeoDataServer
pData
- A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData (in)fmt
- A com.esri.arcgis.geodatabasedistributed.esriGDSImportFormat constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGDSData exportReplicaDataChanges(String replicaName, IGDSExportOptions options, int transportType, int generationsToExport, boolean switchRole) throws IOException, AutomationException
The ExportReplicaDataChanges method is used to export data changes from a replica. Use this method when synchronizing replicas in a disconnected environment. To synchronize replicas in a connected environment, see IReplicationAgent::SynchronizeReplica.
This method should be used in conjunction with the IGeoDataServer::ImportReplicaDataChanges method to complete the transfer of data changes from one replica to it's relative. Note that this method can only be executed for replicas that are data senders. See IGPReplica::ReplicaState for more information.
The ReplicaName is the name of the replica from which to export changes.
The options parameter defines the output of the method. This includes the outut format and whether or not the output will be compressed. See GDSExportOptions for more information.
The TransportType indicates the desired transport type. Use esriGDSTransportTypeURL to place the output in a file in the virtual output directory. Use esriGDSTransportTypeEmbedded to have the results embedded in the output GDSData object. If no virtual output directory exists, the results will be embedded regardless of the value set for this parameter.
The generationsToExport parameter uses the esriExportGenerationsOption enumeration to specify what data changes to export. You may choose to export only unacknowledged data change, only new data changes, all data changes, or no data changes. You would export no data changes if you were interested in switching roles (see below). See the esriExportGenerationsOptions enumeration for more information.
Set the switchRole parameter to true if after exporting the data changes, you want to start receiving changes from the relative replica. When set to true, the source replica transitions from a data sender to a data receiver upon export. When the relative replica successfully imports this delta file, it transitions from a data receiver to a data sender. See the ImportReplicaDataChanges method for more information.
When executed, the method returns a GDSData object. See the GDSData coclass for more information.
exportReplicaDataChanges
in interface IGeoDataServer
replicaName
- The replicaName (in)options
- A reference to a com.esri.arcgis.geodatabasedistributed.IGDSExportOptions (in)transportType
- A com.esri.arcgis.geodatabasedistributed.esriGDSTransportType constant (in)generationsToExport
- A com.esri.arcgis.geodatabasedistributed.esriExportGenerationsOption constant (in)switchRole
- The switchRole (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGDSData reExportReplicaDataChanges(String replicaName, IGDSExportOptions options, int transportType, int gensToExport) throws IOException, AutomationException
The ReexportReplicaDataChanges method is used to re-export previously sent data changes from a replica. Use this method when synchronizing replicas in a disconnected environment. To synchronize replicas in a connected environment, see IReplicationAgent::SynchronizeReplica.
This method is very similar to the ExportReplicaDataChanges method, except it only allows you to re-export changes that have been previously sent. The paraemters are the same as the ExportReplicaDataChanges method with the gensToExport parameter.
The gensToExport parameter uses the esriReExportGenerationsOption enumeration to specify what data changes to export. You may choose to export all unacknowledged data changes or only the last unacknowledged changes. See the esriReExportGenerationsOptions enumeration for more information.
reExportReplicaDataChanges
in interface IGeoDataServer
replicaName
- The replicaName (in)options
- A reference to a com.esri.arcgis.geodatabasedistributed.IGDSExportOptions (in)transportType
- A com.esri.arcgis.geodatabasedistributed.esriGDSTransportType constant (in)gensToExport
- A com.esri.arcgis.geodatabasedistributed.esriReExportGenerationsOption constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean importReplicaDataChanges(int sourceType, int reconcilePolicy, boolean columnLevel, IGDSData data) throws IOException, AutomationException
The ImportReplicaDataChanges method is used to import replica data change messages. Use this method when synchronizing replicas in a disconnected environment. To synchronize replicas in a connected environment, see IReplicationAgent::SynchronizeReplica.
This method should be used in conjunction with the IGeoDataServer::ExportReplicaDataChanges method to complete the transfer to data from one replica to it's relative. Note that this method can only be executed for replicas that are data receivers. See IGPReplica::ReplicaState for more information.
The sourcetype defines the file format used to store the changes.
The reconcilePolicy parameter uses the esriReplicaReconilePolicyType enumeration to define how conflicts will be resolved when the changes are imported. When importing to a replica, changes are first applied to a synchronization version. For 2 way and 1 way replicas, this version is always reconciled and posted with the replica version. For check-out replicas, you can also choose whether or not to reconcile and post. The following describes the meaning of each enumeration:
esriReplicaDetectConflicts -If conflicts occur, the reconcile process is aborted and you must reconcile and post manually after sycnhronization is completed.
esriReplicaResolveConflictsInFavorOfImportedChanges - Automatically resolve conflicts in favor of the changes being imported.
esriReplicaResolveConflictsInFavorOfDatabaseChanges - Automatically resolve conflicts in favor of the database importing the changes.
esriReplicaResolveConflictsNone - This enumeration has meaning for check-out replicas only. It indicates that a reconcile and post should not be applied during synchronization.
The columnLevel parameter defines whether or not to use column level conflict detection. If true, conflicts occur only when specific column values differ. If false, any change to any values in each row can cause a conflict.
The data parameter takes a reference to an GDSData object which is the source of the data changes. See the GDSData coclass for more information.
The method returns TRUE if conflicts were detected. It returns FALSE if no conflicts were detected.
importReplicaDataChanges
in interface IGeoDataServer
sourceType
- A com.esri.arcgis.geodatabasedistributed.esriGDSReplicaImportSource constant (in)reconcilePolicy
- A com.esri.arcgis.geodatabase.esriReplicaReconcilePolicyType constant (in)columnLevel
- The columnLevel (in)data
- A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGDSData exportAcknowledgement(String replicaName, int transportType) throws IOException, AutomationException
The ExportAcknowledgement method is used to export an acknowledgement message from a replica. Use this method when synchronizing replicas in a disconnected environment. To synchronize replicas in a connected environment, see IReplicationAgent::SynchronizeReplica.
This method should be used in conjunction with IGeoDataServer::ImportAcknowledgement method where the acknowledgement message can be imported by the relative replica.
The ReplicaName is the name of the replica.
The TransportType indicates the desired transport type. Use esriGDSTransportTypeURL to place the output in a file in the virtual output directory. Use esriGDSTransportTypeEmbedded to have the results embedded in the output GDSData object. If no virtual output directory exists, the results will be embedded regardless of the value set for this parameter.
The acknowledgement message is returned as an instance of a GDSData object. Acknowledgement files are always stored in an XMl format. See the GDSData coclass for more information.
exportAcknowledgement
in interface IGeoDataServer
replicaName
- The replicaName (in)transportType
- A com.esri.arcgis.geodatabasedistributed.esriGDSTransportType constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void importAcknowledgement(IGDSData data) throws IOException, AutomationException
The ImportAcknowledgement method is used to import an acknowledgement message into a replica. Use this method when synchronizing replicas in a disconnected environment. To synchronize replicas in a connected environment, see IReplicationAgent::SynchronizeReplica.
The acknowledgement message must first be generated by calling the GeoDataServer::ExportAcknowledgement method.
The data parameter takes a GDSData object. See the GDSData coclass for more information.
importAcknowledgement
in interface IGeoDataServer
data
- A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void unregisterReplica(String replicaName) throws IOException, AutomationException
The UnregisterReplica method is used to unregister or delete a replica from the geodatabase.
The ReplicaName is the nane of the replica.
unregisterReplica
in interface IGeoDataServer
replicaName
- The replicaName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGDSQueryResultPortion tableSearch(String versionName, String tableName, IQueryFilter queryFilter, IResultPortionInfo queryRange) throws IOException, AutomationException
The TableSearch method is used to query tables and feature classes from the geodatabase referenced by the GeoDataServer. Both attribute and spatial queries can be performed. The method returns an instance of GDSQueryResultPortion, which contains a recordset of features or rows that satisfy the query filter.
The GDSQueryResultPortion can contain up to the number of rows specified by the queryRange parameter. If the query filter returns more rows than the query range allows, subsequent calls to GetNextResultPortion can be used to get the rest of the rows. Results are returned in portions because the GeoDataServer may be from ArcGIS for Server accesed on a network with limited band width.
The maximum number of rows that can be returned by a TableSearch is determined by the IGeoDataServer::MaxRecordCount property.
If the geodatabase referenced by the GeoDataServer is an ArcSDE geodatabase, you can set the versionName parameter to the version on which to execute the query. If no versionName is provided, the version that the GeoDataServer is currently referencing is used. For non-ArcSDE geodatabases, the versionName is ignored.
The tableName and queryFilter parameters define the query and the table or feature class on which to execute the query. The queryRange defines how to return the results.
tableSearch
in interface IGeoDataServer
versionName
- The versionName (in)tableName
- The tableName (in)queryFilter
- A reference to a com.esri.arcgis.geodatabase.IQueryFilter (in)queryRange
- A reference to a com.esri.arcgis.geodatabase.IResultPortionInfo (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGDSQueryResultPortion getNextResultPortion(IResultPortionInfo desiredRange) throws IOException, AutomationException
The GetNextResultPortion method is used to query table and feature classes. This method is used to get additional records after the initial query has been performed using the IGeoDataServer::TableSearch method.
getNextResultPortion
in interface IGeoDataServer
desiredRange
- A reference to a com.esri.arcgis.geodatabase.IResultPortionInfo (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGDSData exportReplicaSchema(String replicaName, int transportType) throws IOException, AutomationException
The ExportReplicaSchema method exports the schema of a replica in XML file.
This method can be used in conjunction with the IGeoDataServer::CompareReplicaSchema method on the relative replica to compare the schemas between a replica pair. The IGeoDataServer::ImportReplicaSchema method can then be used to apply those schema changes to the relative replica database.
The ReplicaName is the name of the replica. The TransportType indicates the desired transport type. Use esriGDSTransportTypeURL to place the output in a file in the virtual output directory. Use esriGDSTransportTypeEmbedded to have the results embedded in the output GDSData object. If no virtual output directory exists, the results will be embedded regardless of the value set for this parameter.
This method returns a GDSData object. See the GDSData coclass for more information.
exportReplicaSchema
in interface IGeoDataServer
replicaName
- The replicaName (in)transportType
- A com.esri.arcgis.geodatabasedistributed.esriGDSTransportType constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGDSData compareReplicaSchema(IGDSData relativeReplicaSchemaDoc, int transportType) throws IOException, AutomationException
The CompareReplicaSchema method is used to compare a replicas schema to its relative replicas schema and returns a schema changes XML document.
This method should be used in conjunction with the IGeoDataServer::ImportReplicaSchemaChanges method to apply the schema changes.
The TransportType indicates the desired transport type. Use esriGDSTransportTypeURL to place the output in a file in the virtual output directory. Use esriGDSTransportTypeEmbedded to have the results embedded in the output GDSData object. If no virtual output directory exists, the results will be embedded regardless of the value set for this parameter.
The relativeReplicaSchemaDoc parameter takes a reference to a GDSData object for the replica schema file of the relative replica. This file must first be created for the relative replica before executing this method. See the IGeoDataServer::ExportReplicaSchema for information on how to generate this file.
This method returns a GDSData object for the schema changes XML document. See the GDSData coclass for more information.
compareReplicaSchema
in interface IGeoDataServer
relativeReplicaSchemaDoc
- A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData (in)transportType
- A com.esri.arcgis.geodatabasedistributed.esriGDSTransportType constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void importReplicaSchemaChanges(IGDSData schemaChangesDoc) throws IOException, AutomationException
The ImportReplicaSchemaChanges method updates the schema of the replica with the changes in a schema changes XML document.
The schemaChangesDoc is GDSData object which references the schema changes XML document. The schema changes XML document must first be generated by running the IGeoDataServer::CompareReplicaSchema method.
importReplicaSchemaChanges
in interface IGeoDataServer
schemaChangesDoc
- A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGPReplicaDatasets expandReplicaDatasets2(IGPReplicaDatasets gPReplicaDatasets, IGPReplicaOptions replicaOptions) throws IOException, AutomationException
expandReplicaDatasets2
in interface IGeoDataServer2
gPReplicaDatasets
- A reference to a com.esri.arcgis.geodatabase.IGPReplicaDatasets (in)replicaOptions
- A reference to a com.esri.arcgis.geodatabase.IGPReplicaOptions (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IGPReplica getReplica(String replicaName) throws IOException, AutomationException
getReplica
in interface IGeoDataServer2
replicaName
- The replicaName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void initFromMap(String filePath) throws IOException, AutomationException
The InitFromMap method uses a file system path to an ArcMap document to initialize the GeoDataServer. The document must contain layers or tables from a single geodatabase connection.
initFromMap
in interface IGeoDataServerInit
filePath
- The filePath (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void initFromFile(String file) throws IOException, AutomationException
The InitFromFile method uses a file system path to a geodatabase or an ArcSDE geodatabase connection file to initialize the GeoDataServer.
initFromFile
in interface IGeoDataServerInit
file
- The file (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void initFromConnectionString(String connectionString) throws IOException, AutomationException
initFromConnectionString
in interface IGeoDataServerInit
connectionString
- The connectionString (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void initWithWorkspace(IWorkspace pWorkspace) throws IOException, AutomationException
The InitWithWorkspace method initializes a GeoDataServer object with a workspace object for the geodatabase.
initWithWorkspace
in interface IGeoDataServerInit
pWorkspace
- A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setPhysicalOutputDirectory(String dirPath) throws IOException, AutomationException
setPhysicalOutputDirectory
in interface IGeoDataServerInit
dirPath
- The dirPath (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getPhysicalOutputDirectory() throws IOException, AutomationException
The PhysicalOutputDirectory method represents the physical directory for output files. This is a path to a local directory where files are placed when executing operations on a GeoDataServer. If the GeoDataServer is running inside ArcGIS for Server, this refers to a directory on the server machine. This value is set when configuring a geodata service inside ArcGIS for Server.
getPhysicalOutputDirectory
in interface IGeoDataServerInit
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setVirtualOutputDirectory(String dirPath) throws IOException, AutomationException
setVirtualOutputDirectory
in interface IGeoDataServerInit
dirPath
- The dirPath (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getVirtualOutputDirectory() throws IOException, AutomationException
The VirtualOutputDirectory property refers to a virtual directory where output files are placed when executing operations on a GeoDataServer. This value is set when configuring a geodata service inside ArcGIS for Server.
The VirtualOutputDirectory should reference the same directory as the PhysicalOutputDirectory.
getVirtualOutputDirectory
in interface IGeoDataServerInit
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setMaxRecordCount(int count) throws IOException, AutomationException
setMaxRecordCount
in interface IGeoDataServerInit
count
- The count (in)
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 IWorkspace getDefaultWorkingWorkspace() throws IOException, AutomationException
The DefaultWorkingWorkspace method represents the default workspace for the GeoDataServer.
getDefaultWorkingWorkspace
in interface IGeoDataServerObjects
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 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 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.public String getConfigurationName() throws IOException, AutomationException
getConfigurationName
in interface IServerObject
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getTypeName() throws IOException, AutomationException
getTypeName
in interface IServerObject
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IServerObjectExtension findExtensionByCLSID(String cLSID) throws IOException, AutomationException
findExtensionByCLSID
in interface IServerObjectExtensionManager
cLSID
- The cLSID (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IServerObjectExtension findExtensionByTypeName(String name) throws IOException, AutomationException
findExtensionByTypeName
in interface IServerObjectExtensionManager
name
- The name (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.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |