com.esri.arcgis.geodatabasedistributed
Class GeoDataServer

java.lang.Object
  extended bycom.esri.arcgis.geodatabasedistributed.GeoDataServer
All Implemented Interfaces:
IGeoDataServer, IGeoDataServerInit, IGeoDataServerObjects, ILogSupport, IObjectActivate, IObjectConstruct, IRequestHandler, IRequestHandler2, IServerObject, IServerObjectExtensionManager, ISupportErrorInfo, java.io.Serializable

public class GeoDataServer
extends java.lang.Object
implements IGeoDataServer, IGeoDataServerInit, IObjectConstruct, IRequestHandler, IRequestHandler2, IGeoDataServerObjects, IObjectActivate, ILogSupport, ISupportErrorInfo, IServerObject, IServerObjectExtensionManager

The GeoDataServer component provides programmatic access to a geodatabase.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Remarks

The GeoDataServer coclass represents a connection to a geodatabase. It exposes methods to perform geodatabase replication operations, make 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 server. Through ArcGIS server, you can use a GeoDataServer to perform geodatabase operations on a remote geodatabase over the internet.

 

See Also:
Serialized Form

Constructor Summary
GeoDataServer()
          Constructs a GeoDataServer using ArcGIS Engine.
GeoDataServer(java.lang.Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
 
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(java.lang.String parentVersion, java.lang.String replicaName, IGPReplicaDescription replicaDesc, IGPReplicaOptions repOptions, IGDSExportOptions exportOptions, int transportType)
          Creates a Replica.
 void deactivate()
          Deactivates the object.
 boolean equals(java.lang.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.).
 IGDSData exportAcknowledgement(java.lang.String replicaName, int transportType)
          Export an acknowledgement message for a replica.
 IGDSData exportReplicaDataChanges(java.lang.String replicaName, IGDSExportOptions options, int transportType, int generationsToExport, boolean switchRole)
          Exports data changes for a replica.
 IGDSData exportReplicaSchema(java.lang.String replicaName, int transportType)
          Exports the schema of a replica to an Xml document.
 IGDSData extractData(java.lang.String versionName, IGPReplicaDescription replicaDesc, IGDSExportOptions options, int transportType)
          Extract Data.
 IServerObjectExtension findExtensionByCLSID(java.lang.String cLSID)
          Returns a server object extension found using a string representation of its class ID.
 IServerObjectExtension findExtensionByTypeName(java.lang.String name)
          Returns a server object extension found using its type name.
 IGeoDataServer getAsIGeoDataServer()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IGeoDataServerInit getAsIGeoDataServerInit()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IGeoDataServerObjects getAsIGeoDataServerObjects()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ILogSupport getAsILogSupport()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IObjectActivate getAsIObjectActivate()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IObjectConstruct getAsIObjectConstruct()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IRequestHandler getAsIRequestHandler()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IRequestHandler2 getAsIRequestHandler2()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IServerObject getAsIServerObject()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 IServerObjectExtensionManager getAsIServerObjectExtensionManager()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
 ISupportErrorInfo getAsISupportErrorInfo()
          Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.
static java.lang.String getClsid()
           
 java.lang.String getConfigurationName()
          Name of the server object configuration that defines the server object.
 IDataElements getDataElements(IDEBrowseOptions pBrowseOptions)
          Returns all the data elements in the workspace.
 java.lang.String getDefaultWorkingVersion()
          Returns the default working version for all operations/methods.
 IWorkspace getDefaultWorkingWorkspace()
          The default working workspace for the geodb server
 int getMaxRecordCount()
          Returns the maximum number of records to be returned by a search.
 IGDSQueryResultPortion getNextResultPortion(IResultPortionInfo desiredRange)
          Gets the next portion of the results.
 java.lang.String getPhysicalOutputDirectory()
          The physical directory for output files.
 IGPReplicas getReplicas()
          Returns all replicas in the workspace.
 java.lang.String getTypeName()
          Type of the server object (MapServer or GeocodeServer).
 IGPVersionInfos getVersions()
          Returns all the versions in the workspace.
 java.lang.String getVirtualOutputDirectory()
          The virtual directory for output files.
 int getWrappedWorkspaceType()
          Returns the type of the geodatabase the geodataserver operates on.
 byte[] handleBinaryRequest(byte[] request)
          Handles a binary request.
 byte[] handleBinaryRequest2(java.lang.String capabilities, byte[] request)
          Handles a binary request with explicit capabilities.
 java.lang.String handleStringRequest(java.lang.String capabilities, java.lang.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(java.lang.String connectionString)
          Initializes a GeoDataServer object from a connection string to a geodatabase.
 void initFromFile(java.lang.String file)
          Initializes a GeoDataServer object from a geodatabase or an sde connection file (*.sde).
 void initFromMap(java.lang.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)
          Supported Platforms
 IGDSData reExportReplicaDataChanges(java.lang.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(java.lang.String dirPath)
          The physical directory for output files.
 void setVirtualOutputDirectory(java.lang.String dirPath)
          The virtual directory for output files.
 IGDSQueryResultPortion tableSearch(java.lang.String versionName, java.lang.String tableName, IQueryFilter queryFilter, IResultPortionInfo queryRange)
          Returns the records satisfying the specified query.
 void unregisterReplica(java.lang.String replicaName)
          Unregisters the replica.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GeoDataServer

public GeoDataServer()
              throws java.io.IOException,
                     java.net.UnknownHostException
Constructs a GeoDataServer using ArcGIS Engine.

Throws:
java.io.IOException - if there are interop problems
java.net.UnknownHostException - if there are interop problems

GeoDataServer

public GeoDataServer(java.lang.Object obj)
              throws java.io.IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.

Construct a GeoDataServer using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to GeoDataServer.
GeoDataServer theGeoDataServer = (GeoDataServer) obj;

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
java.io.IOException - if there are interop problems
Method Detail

getClsid

public static java.lang.String getClsid()

getAsIGeoDataServer

public IGeoDataServer getAsIGeoDataServer()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIGeoDataServerInit

public IGeoDataServerInit getAsIGeoDataServerInit()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIObjectConstruct

public IObjectConstruct getAsIObjectConstruct()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIRequestHandler

public IRequestHandler getAsIRequestHandler()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIRequestHandler2

public IRequestHandler2 getAsIRequestHandler2()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIGeoDataServerObjects

public IGeoDataServerObjects getAsIGeoDataServerObjects()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIObjectActivate

public IObjectActivate getAsIObjectActivate()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsILogSupport

public ILogSupport getAsILogSupport()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsISupportErrorInfo

public ISupportErrorInfo getAsISupportErrorInfo()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIServerObject

public IServerObject getAsIServerObject()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


getAsIServerObjectExtensionManager

public IServerObjectExtensionManager getAsIServerObjectExtensionManager()
Deprecated. No replacement. The object reference can be directly used where the implemented interface is needed.


equals

public boolean equals(java.lang.Object o)
Compare this object with another


hashCode

public int hashCode()
the hashcode for this object


getMaxRecordCount

public int getMaxRecordCount()
                      throws java.io.IOException,
                             AutomationException
Description copied from interface: IGeoDataServer
Returns the maximum number of records to be returned by a search.

Remarks

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 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.

Specified by:
getMaxRecordCount in interface IGeoDataServer
Returns:
The maxCount
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getDataElements

public IDataElements getDataElements(IDEBrowseOptions pBrowseOptions)
                              throws java.io.IOException,
                                     AutomationException
Description copied from interface: IGeoDataServer
Returns all the data elements in the workspace.

Remarks

The DataElements method  returns an array of data elements that describe the schema of the geodatabase referenced by the GeoDataServer. 

The depth of the description is determined by the options passed in the pBrowseOptions parameter. Setting the expandtype to esriDEExpandType.esriDEExpandChildren will return data elements at the base level of the connection. If you set the expandtype to esriDEExpandType.esriDEExpandDescendants, you can also get data elements for the feature classes and data structures inside the feature datasets.

Specified by:
getDataElements in interface IGeoDataServer
Parameters:
pBrowseOptions - A reference to a com.esri.arcgis.geodatabase.IDEBrowseOptions (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IDataElements
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getVersions

public IGPVersionInfos getVersions()
                            throws java.io.IOException,
                                   AutomationException
Description copied from interface: IGeoDataServer
Returns all the versions in the workspace.

Remarks

If the GeoDataServer references an ArcSDE geodatabase, the Versions property returns the versions in the geodatabase.

Specified by:
getVersions in interface IGeoDataServer
Returns:
A reference to a com.esri.arcgis.geodatabase.IGPVersionInfos
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getReplicas

public IGPReplicas getReplicas()
                        throws java.io.IOException,
                               AutomationException
Description copied from interface: IGeoDataServer
Returns all replicas in the workspace.

Remarks

The Replicas property returns a list of the replicas from the geodatabase referenced by the GeoDataServer

 

Specified by:
getReplicas in interface IGeoDataServer
Returns:
A reference to a com.esri.arcgis.geodatabase.IGPReplicas
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultWorkingVersion

public java.lang.String getDefaultWorkingVersion()
                                          throws java.io.IOException,
                                                 AutomationException
Description copied from interface: IGeoDataServer
Returns the default working version for all operations/methods.

Remarks

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.

Specified by:
getDefaultWorkingVersion in interface IGeoDataServer
Returns:
The defaultWorkingVersion
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getWrappedWorkspaceType

public int getWrappedWorkspaceType()
                            throws java.io.IOException,
                                   AutomationException
Description copied from interface: IGeoDataServer
Returns the type of the geodatabase the geodataserver operates on.

Specified by:
getWrappedWorkspaceType in interface IGeoDataServer
Returns:
A com.esri.arcgis.geodatabase.esriWorkspaceType constant
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

extractData

public IGDSData extractData(java.lang.String versionName,
                            IGPReplicaDescription replicaDesc,
                            IGDSExportOptions options,
                            int transportType)
                     throws java.io.IOException,
                            AutomationException
Description copied from interface: IGeoDataServer
Extract Data.

Remarks

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.

Specified by:
extractData in interface IGeoDataServer
Parameters:
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)
Returns:
A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

createReplica

public IGDSData createReplica(java.lang.String parentVersion,
                              java.lang.String replicaName,
                              IGPReplicaDescription replicaDesc,
                              IGPReplicaOptions repOptions,
                              IGDSExportOptions exportOptions,
                              int transportType)
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: IGeoDataServer
Creates a Replica.

Remarks

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  IReplicationAgent::CreateReplica.

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.  

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.

Specified by:
createReplica in interface IGeoDataServer
Parameters:
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)
Returns:
A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

expandReplicaDatasets

public IGPReplicaDatasets expandReplicaDatasets(IGPReplicaDatasets repDatasets)
                                         throws java.io.IOException,
                                                AutomationException
Description copied from interface: IGeoDataServer
Expands a set of replica datasets taking into consideration geodatabase constructs (topologies, relationship classes, etc.).

Remarks

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.  

 

Specified by:
expandReplicaDatasets in interface IGeoDataServer
Parameters:
repDatasets - A reference to a com.esri.arcgis.geodatabase.IGPReplicaDatasets (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGPReplicaDatasets
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

importData

public void importData(IGDSData pData,
                       int fmt)
                throws java.io.IOException,
                       AutomationException
Description copied from interface: IGeoDataServer
Imports data into the workspace.

Remarks

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.

Specified by:
importData in interface IGeoDataServer
Parameters:
pData - A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData (in)
fmt - A com.esri.arcgis.geodatabasedistributed.esriGDSImportFormat constant (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

exportReplicaDataChanges

public IGDSData exportReplicaDataChanges(java.lang.String replicaName,
                                         IGDSExportOptions options,
                                         int transportType,
                                         int generationsToExport,
                                         boolean switchRole)
                                  throws java.io.IOException,
                                         AutomationException
Description copied from interface: IGeoDataServer
Exports data changes for a replica.

Remarks

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.

Specified by:
exportReplicaDataChanges in interface IGeoDataServer
Parameters:
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)
Returns:
A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

reExportReplicaDataChanges

public IGDSData reExportReplicaDataChanges(java.lang.String replicaName,
                                           IGDSExportOptions options,
                                           int transportType,
                                           int gensToExport)
                                    throws java.io.IOException,
                                           AutomationException
Description copied from interface: IGeoDataServer
Re-exports data changes for a replica.

Remarks

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.

 

Specified by:
reExportReplicaDataChanges in interface IGeoDataServer
Parameters:
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)
Returns:
A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

importReplicaDataChanges

public boolean importReplicaDataChanges(int sourceType,
                                        int reconcilePolicy,
                                        boolean columnLevel,
                                        IGDSData data)
                                 throws java.io.IOException,
                                        AutomationException
Description copied from interface: IGeoDataServer
Import the data changes for a replica.

Remarks

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. 

 

Specified by:
importReplicaDataChanges in interface IGeoDataServer
Parameters:
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)
Returns:
The conflictsFound
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

exportAcknowledgement

public IGDSData exportAcknowledgement(java.lang.String replicaName,
                                      int transportType)
                               throws java.io.IOException,
                                      AutomationException
Description copied from interface: IGeoDataServer
Export an acknowledgement message for a replica.

Remarks

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.

Specified by:
exportAcknowledgement in interface IGeoDataServer
Parameters:
replicaName - The replicaName (in)
transportType - A com.esri.arcgis.geodatabasedistributed.esriGDSTransportType constant (in)
Returns:
A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

importAcknowledgement

public void importAcknowledgement(IGDSData data)
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: IGeoDataServer
Import an acknowledgement message for a replica.

Remarks

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.

Specified by:
importAcknowledgement in interface IGeoDataServer
Parameters:
data - A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

unregisterReplica

public void unregisterReplica(java.lang.String replicaName)
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: IGeoDataServer
Unregisters the replica.

Remarks

The UnregisterReplica method is used to unregister or delete a replica from the geodatabase.

The ReplicaName is the nane of the replica.

Specified by:
unregisterReplica in interface IGeoDataServer
Parameters:
replicaName - The replicaName (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

tableSearch

public IGDSQueryResultPortion tableSearch(java.lang.String versionName,
                                          java.lang.String tableName,
                                          IQueryFilter queryFilter,
                                          IResultPortionInfo queryRange)
                                   throws java.io.IOException,
                                          AutomationException
Description copied from interface: IGeoDataServer
Returns the records satisfying the specified query.

Remarks

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 an ArcGIS Server accesed on a network with limited band width.

If the geodatabase referenced by the GeoDataServer is an ArcSDE geodatabase, then 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.

Specified by:
tableSearch in interface IGeoDataServer
Parameters:
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)
Returns:
A reference to a com.esri.arcgis.geodatabasedistributed.IGDSQueryResultPortion
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getNextResultPortion

public IGDSQueryResultPortion getNextResultPortion(IResultPortionInfo desiredRange)
                                            throws java.io.IOException,
                                                   AutomationException
Description copied from interface: IGeoDataServer
Gets the next portion of the results.

Remarks

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. 

Specified by:
getNextResultPortion in interface IGeoDataServer
Parameters:
desiredRange - A reference to a com.esri.arcgis.geodatabase.IResultPortionInfo (in)
Returns:
A reference to a com.esri.arcgis.geodatabasedistributed.IGDSQueryResultPortion
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

exportReplicaSchema

public IGDSData exportReplicaSchema(java.lang.String replicaName,
                                    int transportType)
                             throws java.io.IOException,
                                    AutomationException
Description copied from interface: IGeoDataServer
Exports the schema of a replica to an Xml document.

Remarks

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.

Specified by:
exportReplicaSchema in interface IGeoDataServer
Parameters:
replicaName - The replicaName (in)
transportType - A com.esri.arcgis.geodatabasedistributed.esriGDSTransportType constant (in)
Returns:
A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

compareReplicaSchema

public IGDSData compareReplicaSchema(IGDSData relativeReplicaSchemaDoc,
                                     int transportType)
                              throws java.io.IOException,
                                     AutomationException
Description copied from interface: IGeoDataServer
Compares the schema of a replica with that of its relative, and returns a schema changes XML document.

Remarks

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.

Specified by:
compareReplicaSchema in interface IGeoDataServer
Parameters:
relativeReplicaSchemaDoc - A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData (in)
transportType - A com.esri.arcgis.geodatabasedistributed.esriGDSTransportType constant (in)
Returns:
A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

importReplicaSchemaChanges

public void importReplicaSchemaChanges(IGDSData schemaChangesDoc)
                                throws java.io.IOException,
                                       AutomationException
Description copied from interface: IGeoDataServer
Updates the schema of the replica with the changes in an schema changes XML document.

Remarks

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.

Specified by:
importReplicaSchemaChanges in interface IGeoDataServer
Parameters:
schemaChangesDoc - A reference to a com.esri.arcgis.geodatabasedistributed.IGDSData (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

initFromMap

public void initFromMap(java.lang.String filePath)
                 throws java.io.IOException,
                        AutomationException
Description copied from interface: IGeoDataServerInit
Initializes a GeoDataServer object with a map document.

Remarks

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. 

Specified by:
initFromMap in interface IGeoDataServerInit
Parameters:
filePath - The filePath (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

initFromFile

public void initFromFile(java.lang.String file)
                  throws java.io.IOException,
                         AutomationException
Description copied from interface: IGeoDataServerInit
Initializes a GeoDataServer object from a geodatabase or an sde connection file (*.sde).

Remarks

The InitFromFile method uses a file system path to a geodatabase or an ArcSDE geodatabase connection file to initialize the GeoDataServer.

Specified by:
initFromFile in interface IGeoDataServerInit
Parameters:
file - The file (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

initFromConnectionString

public void initFromConnectionString(java.lang.String connectionString)
                              throws java.io.IOException,
                                     AutomationException
Description copied from interface: IGeoDataServerInit
Initializes a GeoDataServer object from a connection string to a geodatabase.

Specified by:
initFromConnectionString in interface IGeoDataServerInit
Parameters:
connectionString - The connectionString (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

initWithWorkspace

public void initWithWorkspace(IWorkspace pWorkspace)
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: IGeoDataServerInit
Initializes a GeoDataServer object with a workspace.

Remarks

The InitWithWorkspace method initializes a GeoDataServer object with a workspace object for the geodatabase.

Specified by:
initWithWorkspace in interface IGeoDataServerInit
Parameters:
pWorkspace - A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setPhysicalOutputDirectory

public void setPhysicalOutputDirectory(java.lang.String dirPath)
                                throws java.io.IOException,
                                       AutomationException
Description copied from interface: IGeoDataServerInit
The physical directory for output files.

Specified by:
setPhysicalOutputDirectory in interface IGeoDataServerInit
Parameters:
dirPath - The dirPath (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getPhysicalOutputDirectory

public java.lang.String getPhysicalOutputDirectory()
                                            throws java.io.IOException,
                                                   AutomationException
Description copied from interface: IGeoDataServerInit
The physical directory for output files.

Remarks

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 server, this refers to a directory on the server machine. This value is set when configuring a geodata service inside ArcGIS server.

Specified by:
getPhysicalOutputDirectory in interface IGeoDataServerInit
Returns:
The dirPath
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setVirtualOutputDirectory

public void setVirtualOutputDirectory(java.lang.String dirPath)
                               throws java.io.IOException,
                                      AutomationException
Description copied from interface: IGeoDataServerInit
The virtual directory for output files.

Specified by:
setVirtualOutputDirectory in interface IGeoDataServerInit
Parameters:
dirPath - The dirPath (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getVirtualOutputDirectory

public java.lang.String getVirtualOutputDirectory()
                                           throws java.io.IOException,
                                                  AutomationException
Description copied from interface: IGeoDataServerInit
The virtual directory for output files.

Remarks

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 server.

The VirtualOutputDirectory should reference the same directory as the PhysicalOutputDirectory.

Specified by:
getVirtualOutputDirectory in interface IGeoDataServerInit
Returns:
The dirPath
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

setMaxRecordCount

public void setMaxRecordCount(int count)
                       throws java.io.IOException,
                              AutomationException
Description copied from interface: IGeoDataServerInit
The maximum number of records returned for query results.

Specified by:
setMaxRecordCount in interface IGeoDataServerInit
Parameters:
count - The count (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

construct

public void construct(IPropertySet props)
               throws java.io.IOException,
                      AutomationException
Description copied from interface: IObjectConstruct
Two phase object construction.

Supported Platforms

Windows, Solaris, Linux

Specified by:
construct in interface IObjectConstruct
Parameters:
props - A reference to a com.esri.arcgis.system.IPropertySet (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

handleBinaryRequest

public byte[] handleBinaryRequest(byte[] request)
                           throws java.io.IOException,
                                  AutomationException
Description copied from interface: IRequestHandler
Handles a binary request.

Supported Platforms

Windows, Solaris, Linux

Specified by:
handleBinaryRequest in interface IRequestHandler
Parameters:
request - An unsigned byte (in)
Returns:
An unsigned byte
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

handleStringRequest

public java.lang.String handleStringRequest(java.lang.String capabilities,
                                            java.lang.String request)
                                     throws java.io.IOException,
                                            AutomationException
Description copied from interface: IRequestHandler
Handles a SOAP string request.

Supported Platforms

Windows, Solaris, Linux

Specified by:
handleStringRequest in interface IRequestHandler
Parameters:
capabilities - The capabilities (in)
request - The request (in)
Returns:
The response
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

handleBinaryRequest2

public byte[] handleBinaryRequest2(java.lang.String capabilities,
                                   byte[] request)
                            throws java.io.IOException,
                                   AutomationException
Description copied from interface: IRequestHandler2
Handles a binary request with explicit capabilities.

Specified by:
handleBinaryRequest2 in interface IRequestHandler2
Parameters:
capabilities - The capabilities (in)
request - An unsigned byte (in)
Returns:
An unsigned byte
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultWorkingWorkspace

public IWorkspace getDefaultWorkingWorkspace()
                                      throws java.io.IOException,
                                             AutomationException
Description copied from interface: IGeoDataServerObjects
The default working workspace for the geodb server

Remarks

The DefaultWorkingWorkspace method represents the default workspace for the GeoDataServer.

Specified by:
getDefaultWorkingWorkspace in interface IGeoDataServerObjects
Returns:
A reference to a com.esri.arcgis.geodatabase.IWorkspace
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

activate

public void activate()
              throws java.io.IOException,
                     AutomationException
Description copied from interface: IObjectActivate
Activates the object.

Supported Platforms

Windows, Solaris, Linux

Specified by:
activate in interface IObjectActivate
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deactivate

public void deactivate()
                throws java.io.IOException,
                       AutomationException
Description copied from interface: IObjectActivate
Deactivates the object.

Supported Platforms

Windows, Solaris, Linux

Specified by:
deactivate in interface IObjectActivate
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

initLogging

public void initLogging(ILog log)
                 throws java.io.IOException,
                        AutomationException
Description copied from interface: ILogSupport
Initializes an object with a log.

Supported Platforms

Windows, Solaris, Linux

Specified by:
initLogging in interface ILogSupport
Parameters:
log - A reference to a com.esri.arcgis.system.ILog (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

interfaceSupportsErrorInfo

public void interfaceSupportsErrorInfo(GUID riid)
                                throws java.io.IOException,
                                       AutomationException
Description copied from interface: ISupportErrorInfo

Supported Platforms

Windows, Solaris, Linux

Description

Indicates whether the interface supports IErrorInfo.

Specified by:
interfaceSupportsErrorInfo in interface ISupportErrorInfo
Parameters:
riid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getConfigurationName

public java.lang.String getConfigurationName()
                                      throws java.io.IOException,
                                             AutomationException
Description copied from interface: IServerObject
Name of the server object configuration that defines the server object.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getConfigurationName in interface IServerObject
Returns:
The name
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.

getTypeName

public java.lang.String getTypeName()
                             throws java.io.IOException,
                                    AutomationException
Description copied from interface: IServerObject
Type of the server object (MapServer or GeocodeServer).

Supported Platforms

Windows, Solaris, Linux

Specified by:
getTypeName in interface IServerObject
Returns:
The name
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findExtensionByCLSID

public IServerObjectExtension findExtensionByCLSID(java.lang.String cLSID)
                                            throws java.io.IOException,
                                                   AutomationException
Description copied from interface: IServerObjectExtensionManager
Returns a server object extension found using a string representation of its class ID.

Specified by:
findExtensionByCLSID in interface IServerObjectExtensionManager
Parameters:
cLSID - The cLSID (in)
Returns:
A reference to a com.esri.arcgis.server.IServerObjectExtension
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

findExtensionByTypeName

public IServerObjectExtension findExtensionByTypeName(java.lang.String name)
                                               throws java.io.IOException,
                                                      AutomationException
Description copied from interface: IServerObjectExtensionManager
Returns a server object extension found using its type name.

Specified by:
findExtensionByTypeName in interface IServerObjectExtensionManager
Parameters:
name - The name (in)
Returns:
A reference to a com.esri.arcgis.server.IServerObjectExtension
Throws:
AutomationException - If the ArcObject component throws an exception.
java.io.IOException - If there are interop problems.