com.esri.arcgis.carto
Interface IMapLayerInfo2

All Superinterfaces:
Serializable
All Known Implementing Classes:
MapLayerInfo

public interface IMapLayerInfo2
extends Serializable

Provides access to the available properties of a map layer info object.

When To Use

Use the IMapLayerInfo interface to access read-only information about an individual layer in the map. Please note the difference between IMapLayerInfo and ILayerDescription. IMapLayerInfo is used to retrieve information. ILayerDescription is used to get and set layer settings.

Product Availability

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


Method Summary
 String getCopyrightText()
          Copyright information associated with the layer.
 String getDescription()
          The description of the layer.
 String getDisplayField()
          Primary display field.
 IEnvelope getExtent()
          The geographic extent of the layer.
 IStringArray getFieldAliases()
          Array of strings that contains field alias for each field in Fields property.
 IFields getFields()
          Array of attribute fields contained in the layer.
 int getID()
          The layer identifier.
 double getMaxScale()
          The maximum visible scale for the layer.
 double getMinScale()
          The minimum visible scale for the layer.
 String getName()
          The name of the layer.
 int getParentLayerID()
          If the layer is a member of a composite layer, this property identifies the parent layer.
 String getSourceDescription()
          The description of the source information for the layer.
 ILongArray getSubLayers()
          The list identifying the sublayers if the layer is a composite layer.
 String getType()
          The layer type.
 boolean isCanFind()
          Indicates if the layer supports the Find operation.
 boolean isCanIdentify()
          Indicates if the layer supports the Identify operation.
 boolean isCanScaleSymbols()
          Indicates if the layer supports symbol scaling.
 boolean isCanSelect()
          Indicates if the layer supports feature selection.
 boolean isComposite()
          Indicates if the layer is a composite layer.
 boolean isFeatureLayer()
          Indicates if the layer is a feature layer.
 boolean isHasAttributes()
          Indicates if the layer has attributes.
 boolean isHasHyperlinks()
          Indicates if the layer has hyperlinks.
 boolean isHasLabels()
          Indicates if the layer has labels to turn on and off.
 

Method Detail

getFieldAliases

IStringArray getFieldAliases()
                             throws IOException,
                                    AutomationException
Array of strings that contains field alias for each field in Fields property.

Product Availability

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

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

getCopyrightText

String getCopyrightText()
                        throws IOException,
                               AutomationException
Copyright information associated with the layer.

Product Availability

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

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

getID

int getID()
          throws IOException,
                 AutomationException
The layer identifier. This ID is used throughout to uniquely identify the layer for all requests.

Remarks

ID is a unique identifier for a layer in a given instance of ArcGIS Server map service. It is important to note that ID, SourceID and the index of layers (see MapLayerInfos) in map document are not the same. SourceID is used for map service interaction with the GPServer.

When a map service is published, a unique ID is assigned to all layers within the original map document (.mxd) starting from 0 (zero). This ID is accessible from IMapServerObjects2, MapLayerInfo, LayerDescription, MapServerLegendInfo, MapServerIdentifyResult, MapServerFindResult and FeatureExtent.

ID is not re-usable and does not change if the order of the layer is changed. This would change the how each layer is ordered in the index of layers. Adding new a layer results in a new ID being assigned. IDs keep incrementing as new layers are added to the map service. The limit of id numbers available is the limit of Long data type.

Please note that if the layer order in the TOC of the original map is changed or if layers are added/removed, the IDs will change accordingly.

Product Availability

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

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

getName

String getName()
               throws IOException,
                      AutomationException
The name of the layer.

Product Availability

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

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

getDescription

String getDescription()
                      throws IOException,
                             AutomationException
The description of the layer. This property is set in the General tab of the Layer Properties dialog.

Product Availability

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

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

getType

String getType()
               throws IOException,
                      AutomationException
The layer type.

Product Availability

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

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

getSourceDescription

String getSourceDescription()
                            throws IOException,
                                   AutomationException
The description of the source information for the layer.

Remarks

SourceDescription contains information about the data type of the layer's source data. This information can be found in the Source tab of the Layer Properties dialog of the map document (.mxd or .pmf).

Product Availability

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

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

isHasLabels

boolean isHasLabels()
                    throws IOException,
                           AutomationException
Indicates if the layer has labels to turn on and off.

Product Availability

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

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

isCanSelect

boolean isCanSelect()
                    throws IOException,
                           AutomationException
Indicates if the layer supports feature selection.

Product Availability

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

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

isCanScaleSymbols

boolean isCanScaleSymbols()
                          throws IOException,
                                 AutomationException
Indicates if the layer supports symbol scaling.

Description

CanScaleSymbols specifies whether the symbols for this layer will scale when the mapís reference scale property has been set.

Remarks

If a reference scale has been set in the map document and the layer supports symbol scaling the value for CanScaleSymbols will be TRUE. If no reference scale has been set in the map document the value will be FALSE. If a reference scale has been set in the map and you want the symbols of some layers to honor the reference scale and the symbols of some layers NOT to honor the reference scale you will need to use ScaleSymbols on ILayerDescription.

Product Availability

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

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

isCanIdentify

boolean isCanIdentify()
                      throws IOException,
                             AutomationException
Indicates if the layer supports the Identify operation.

Product Availability

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

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

isCanFind

boolean isCanFind()
                  throws IOException,
                         AutomationException
Indicates if the layer supports the Find operation.

Product Availability

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

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

isFeatureLayer

boolean isFeatureLayer()
                       throws IOException,
                              AutomationException
Indicates if the layer is a feature layer.

Product Availability

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

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

getMinScale

double getMinScale()
                   throws IOException,
                          AutomationException
The minimum visible scale for the layer.

Description

Minimum scale at which the layer will display.

Product Availability

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

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

getMaxScale

double getMaxScale()
                   throws IOException,
                          AutomationException
The maximum visible scale for the layer.

Description

Maximum scale at which the layer will display.

Product Availability

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

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

getExtent

IEnvelope getExtent()
                    throws IOException,
                           AutomationException
The geographic extent of the layer.

Remarks

The geographic extent is in map units. To get the map units of the map use MapUnits on IMapServerInfo2.

Product Availability

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

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

isHasHyperlinks

boolean isHasHyperlinks()
                        throws IOException,
                               AutomationException
Indicates if the layer has hyperlinks.

Product Availability

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

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

isHasAttributes

boolean isHasAttributes()
                        throws IOException,
                               AutomationException
Indicates if the layer has attributes.

Product Availability

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

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

getFields

IFields getFields()
                  throws IOException,
                         AutomationException
Array of attribute fields contained in the layer.

Product Availability

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

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

getDisplayField

String getDisplayField()
                       throws IOException,
                              AutomationException
Primary display field.

Product Availability

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

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

isComposite

boolean isComposite()
                    throws IOException,
                           AutomationException
Indicates if the layer is a composite layer.

Remarks

Composite layers are layers composed of other layers. Composite layers include group layers, IMS layers and MapServer layers. Composite layers may also be nested. Composite (parent) layers and their members (QueryFeatureCount, QueryFeatureIDs, QueryFeatureData, GetFeatureData, GetFeatureValue, GetSQLSyntaxInfo). If you attempt to query a composite layer you will receive an error message stating that an input parameter is incorrect. Composite layers can be identified. You can use a parent layer ID by itself to Identify features from all member SubLayers. However, you cannot use the parent layer ID by itself in order to query SubLayers using the GetLegendInfo, Find or QueryHyperlinks methods on IMapServer2. You need to include the SubLayers IDs in the input array.

Product Availability

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

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

getSubLayers

ILongArray getSubLayers()
                        throws IOException,
                               AutomationException
The list identifying the sublayers if the layer is a composite layer.

Product Availability

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

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

getParentLayerID

int getParentLayerID()
                     throws IOException,
                            AutomationException
If the layer is a member of a composite layer, this property identifies the parent layer.

Product Availability

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

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