com.esri.arcgis.system
Interface IDocumentVersionSupportGEN

All Superinterfaces:
Serializable
All Known Implementing Classes:
ActionBase, ActionCollection, ActionEnvironment, ActionLookupSources, ActionProcessor, AdjustXform, AMSDatasetName, AngleFormat, ApproximationXform, BasicFillSymbol, BasicLineSymbol, BasicMarkerSymbol, CacheControlInfo, CacheDescriptionInfo, CacheInfo, CadastralFabricName, CadastralTableFieldEdits, CommandMessage, CompositeXform, CoordinateXform, CoTrackSymbologyRenderer, DataMessage, DataModificationAction, DataPartitionAction, DatasetColumn, DataSetDefinition, DataSummaryAction, DEBrowseOptions, DECadastralFabric, DEGeoDataServer, DEGlobeServer, DEGPServer, DEImageServer, DEMapServer, DEMosaicDataset, DERepresentationClass, DEWCSCoverage, DirectionalVectorRendererProperties, EmailAlertAction, EnhancedInfoRenderer, EventAttributeProperties, FieldDomainInfo, FilterAction, FrameXform, GCSShiftXform, GeneralLibraryObject, GeometricEffectAddControlPoints, GeometricEffectArrow, GeometricEffectBuffer, GeometricEffectCut, GeometricEffectDash, GeometricEffectDonut, GeometricEffectEnclosingPolygon, GeometricEffectJog, GeometricEffectMove, GeometricEffectOffset, GeometricEffectRadial, GeometricEffectRegularPolygon, GeometricEffectReverse, GeometricEffectRotate, GeometricEffectScale, GeometricEffectSimplify, GeometricEffectSmooth, GeometricEffectTaperedPolygon, GeometricEffectWave, GeometricXform, GeometryResultOptions, GPNetworkDatasetMembership, GPRepresentationLayerDomain, GPSAFuzzyFunction, GPTerrainMembership, GradientPattern, HighlightSuppressionAction, IdentityXform, IDocumentVersionSupportGENProxy, ImageServiceInfo, InternetConnection, LabelClassDescription, LabelingDescription, LayerCacheInfo, LayerResultOptions, LineLabelPlacementDescription, LinePattern, LineStroke, LocaleInfo, LSRXform, MapServerIdentifyResult, MapServerRelationship, MapServerRow, MapTableSubtypeInfo, MarkerPlacementAlongLine, MarkerPlacementAtExtremities, MarkerPlacementDecoration, MarkerPlacementInsidePolygon, MarkerPlacementOnLine, MarkerPlacementOnPoint, MarkerPlacementOnVertices, MarkerPlacementPolygonCenter, MarkerPlacementRandomAlongLine, MarkerPlacementRandomInPolygon, MarkerPlacementVariableAlongLine, MessageTemplate, NALocation, NALocationRanges, PansharpeningFilter, ParcelConstructionData, PointLabelPlacementDescription, PolygonLabelPlacementDescription, PolynomialXform, QueryResult, QueryResultOptions, ReplicaDescription, RepresentationClassName, RepresentationGraphics, RepresentationMarker, RepresentationRenderer, RepresentationRule, RepresentationRuleItem, RepresentationRules, ResponseMessage, RPCXform, ScaleFormat, ServerConnection, ServerSymbolOutputOptions, SolidColorPattern, SplineXform, StatusMessage, SubtypeInfo, TagAction, TemporalFeatureLayer, TemporalLegendClass, TemporalLegendGroup, TemporalOperator, TemporalQueryFilter, TemporalRecordSet, TemporalReference, TextMarkerSymbol, TileImageInfo, Time, TimeDuration, TimeExtent, TimeInstant, TimeReference, TimeZoneInfo, TimeZoneRule, TrackingEnvironment, TrackingServiceDef, UniqueValueTextRenderer

public interface IDocumentVersionSupportGEN
extends Serializable

Provides access to extend the IObjectStream interface with methods to hande saving objects that did not exist in previous versions of the software.

Remarks

When the object is about to be saved to the stream, a check is made to see if the object implements this interface. If it does, a check will be made to ensure that the object is supported for a particular ArcGIS version.

When To Use

Use IDocumentVersionSupportGEN when extending ArcGIS with new objects that may be persisted in the document stream. If you implement IPersistStream or IPersistStreamVariant on a new custom object you should also implement IDocumentVersionSupportGEN.

Product Availability

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


Method Summary
 Object convertToSupportedObject(int docVersion)
          Convert the object to another object that is supported.
 boolean isSupportedAtVersion(int docVersion)
          Is this object valid at the given document version.
 

Method Detail

isSupportedAtVersion

boolean isSupportedAtVersion(int docVersion)
                             throws IOException,
                                    AutomationException
Is this object valid at the given document version.

Remarks

Use IsSupportedAtVersion to identify if a particular object should be saved to the ObjectStream. This result is based on the esriArcGISVersion enumeration. In some instances, if the object is not supported at a particular ArcGIS version, the object may support conversion to another similar object; use IDocumentVersionSupportGEN::ConvertToSupportedObject to accomplish this.

Product Availability

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

Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
The supported
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertToSupportedObject

Object convertToSupportedObject(int docVersion)
                                throws IOException,
                                       AutomationException
Convert the object to another object that is supported.

Remarks

This method should be used when IDocumentVersionSupportGEN::IsSupportedAtVersion returns FALSE. Calling ConvertToSupportedObject will return an IUnknown pointer to a relevant object supported at the particular ArcGIS version. Not all objects will return a supported object; in these cases a null pointer will be returned.

Product Availability

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

Parameters:
docVersion - A com.esri.arcgis.system.esriArcGISVersion constant (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.