com.esri.arcgis.geodatabase
Interface IVersionedObject

All Superinterfaces:
Serializable
All Known Subinterfaces:
IVersionedObject2, IVersionedObject3
All Known Implementing Classes:
CadastralFabric, IVersionedObject2Proxy, IVersionedObject3Proxy, IVersionedObjectProxy, NetworkDataset, StreetNetwork, UtilityNetwork

public interface IVersionedObject
extends Serializable

Provides access to members that manage a versioned object.

Superseded By

IVersionedObject3

Description

The IVersionedObject interface is used to determine the current version of an object, to register feature datasets or object classes as versioned, and to detect if the object class is registered as versioned.

Product Availability

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


Method Summary
 IVersion getVersion()
          The object's current version.
 boolean isRegisteredAsVersioned()
          Indicates if the object is registered as versioned.
 void registerAsVersioned(boolean isVersioned)
          Register/UnRegister the object as being versioned.
 

Method Detail

getVersion

IVersion getVersion()
                    throws IOException,
                           AutomationException
The object's current version.

Remarks

The Version method returns an IVersion object that is the current version the object references. This provides a mechanism to easily detect the version of the database that an object references.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Returns:
A reference to a com.esri.arcgis.geodatabase.IVersion
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isRegisteredAsVersioned

boolean isRegisteredAsVersioned()
                                throws IOException,
                                       AutomationException
Indicates if the object is registered as versioned.

Remarks

Returns if the underlying dataset is registered as versioned. This only applies to datasets that exist in versioned workspaces.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Returns:
The pIsRegistered
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

registerAsVersioned

void registerAsVersioned(boolean isVersioned)
                         throws IOException,
                                AutomationException
Register/UnRegister the object as being versioned.

Remarks

The RegisterAsVersioned method registers or unregisters datasets. Feature classes that participate in feature datasets can be registered or unregistered, although it is highly recomended that the operation be performed on the entire feature dataset. The method requires a boolean argument, true to register or false to unregister the object.

Unregistering an object class as versioned permanently drops the object's delta tables. To preserve the edits, perform a compress prior to unregistering as versioned. See IVersionedWorkspace.Compress and IVersionedObject2 for additional information.

Only the owner can register or unregister the object.

By programmatically registering a class participating in a geometric network as versioned it does not guarantee the entire geometric network including other participating classes will also be registered. It is then recommended the registration take place at the feature dataset level rather than on the individual feature class. This workflow is exposed by default through the user interface in ArcCatalog. If there is a need to register individual classes as versioned within a feature dataset without registering the entire dataset it is crucial the every class participating in a geometric network, including the geometric network itself, is explicitly registered individually.

Archiving must first be disabaled on a class before it can be unregistered as versioned. This situation only applies to classes that have been registered as versioned with the MoveEditsToBase option set to false through the IVersionObject3.RegisterAsVersioned3 method.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
isVersioned - The isVersioned (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.