com.esri.arcgis.catalog
Class SearchResultsLayer

java.lang.Object
  extended by com.esri.arcgis.catalog.SearchResultsLayer
All Implemented Interfaces:
IIdentify, ILayer, IPublishLayer, ISearchResultsLayer, IGeoDataset, com.esri.arcgis.interop.RemoteObjRef, Serializable

public class SearchResultsLayer
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, ISearchResultsLayer, ILayer, IGeoDataset, IIdentify, IPublishLayer

A layer that lets you preview a search result in the Geography tab. This object is not supported on ArcGIS version 10.1. or later.

Product Availability

Available with ArcGIS Desktop.

See Also:
Serialized Form

Constructor Summary
SearchResultsLayer()
          Constructs a SearchResultsLayer using ArcGIS Engine.
SearchResultsLayer(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
SearchResultsLayer theSearchResultsLayer = (SearchResultsLayer) obj;
 
Method Summary
 void draw(int drawPhase, IDisplay display, ITrackCancel trackCancel)
          Draws the layer to the specified display for the given draw phase.
 boolean equals(Object o)
          Compare this object with another
 IEnvelope getAreaOfInterest()
          The default area of interest for the layer.
static String getClsid()
          getClsid.
 String getDataDetails(String bsPadding)
          Details of the layer's data.
 IEnvelope getExtent()
          The extent of the GeoDataset.
 double getMaximumScale()
          Maximum scale (representative fraction) at which the layer will display.
 double getMinimumScale()
          Minimum scale (representative fraction) at which the layer will display.
 String getName()
          Layer name.
 String getPath()
          Full path to the search results layer file.
 String getPublishingDescription()
          The layer description reported to the publisher.
 ISpatialReference getSpatialReference()
          The spatial reference of the GeoDataset.
 int getSupportedDrawPhases()
          Supported draw phases.
 String getTipText(double x, double y, double tolerance)
          Map tip text at the specified location.
 int hashCode()
          the hashcode for this object
 IArray identify(IGeometry pGeom)
          Identifies objects at the specified location.
 boolean isCached()
          Indicates if the layer needs its own display cache.
 boolean isDataValid()
          Indicates if the data for the layer is currently valid.
 boolean isShowTips()
          Indicates if the layer shows map tips.
 boolean isSupportsPublishing()
          Indicates if the layer supports the publishing process.
 boolean isValid()
          Indicates if the layer is currently valid.
 boolean isVisible()
          Indicates if the layer is currently visible.
 void prepareForPublishing()
          Prepare the layer for the publishing process.
 void setCached(boolean cached)
          Indicates if the layer needs its own display cache.
 void setMaximumScale(double maxScale)
          Maximum scale (representative fraction) at which the layer will display.
 void setMinimumScale(double minScale)
          Minimum scale (representative fraction) at which the layer will display.
 void setName(String name)
          Layer name.
 void setPath(String path)
          Full path to the search results layer file.
 void setShowTips(boolean show)
          Indicates if the layer shows map tips.
 void setSpatialReferenceByRef(ISpatialReference rhs1)
          Spatial reference for the layer.
 void setVisible(boolean visible)
          Indicates if the layer is currently visible.
 
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

SearchResultsLayer

public SearchResultsLayer()
                   throws IOException,
                          UnknownHostException
Constructs a SearchResultsLayer using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

SearchResultsLayer

public SearchResultsLayer(Object obj)
                   throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
SearchResultsLayer theSearchResultsLayer = (SearchResultsLayer) obj;

Construct a SearchResultsLayer using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to SearchResultsLayer.

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

getClsid

public static String getClsid()
getClsid.


equals

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

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

setPath

public void setPath(String path)
             throws IOException,
                    AutomationException
Full path to the search results layer file.

Product Availability

Available with ArcGIS Desktop.

Specified by:
setPath in interface ISearchResultsLayer
Parameters:
path - The path (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPath

public String getPath()
               throws IOException,
                      AutomationException
Full path to the search results layer file.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getPath in interface ISearchResultsLayer
Returns:
The path
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getName

public String getName()
               throws IOException,
                      AutomationException
Layer name.

Description


Remarks

Use this property to associate a string with a layer.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

setName

public void setName(String name)
             throws IOException,
                    AutomationException
Layer name.

Description

Use the Name property to associate a string with the layer.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setName in interface ILayer
Parameters:
name - The name (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isValid

public boolean isValid()
                throws IOException,
                       AutomationException
Indicates if the layer is currently valid.

Remarks

The valid property indicates if the layer is currently valid. Layers that reference feature classes are valid when they hold a reference to a valid feature class. The property does not however validate the integrity of the feature classes reference to the database. Therefore, in rare situations if a datasource is removed after a layer is initialized, the layer will report itself as valid but query attempts to the data source will error due to the lack of underlying data.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isValid in interface ILayer
Returns:
The valid
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getAreaOfInterest

public IEnvelope getAreaOfInterest()
                            throws IOException,
                                   AutomationException
The default area of interest for the layer.

Remarks

Returns the spatial-referenced extent of the layer.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getAreaOfInterest in interface ILayer
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.

getMinimumScale

public double getMinimumScale()
                       throws IOException,
                              AutomationException
Minimum scale (representative fraction) at which the layer will display.

Remarks

Specifies the minimum scale at which the layer will be displayed. This means that if you zoom out beyond this scale, the layer will not display. For example, specify 1000 to have the layer not display when zoomed out beyond 1:1000.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMinimumScale in interface ILayer
Returns:
The minScale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMinimumScale

public void setMinimumScale(double minScale)
                     throws IOException,
                            AutomationException
Minimum scale (representative fraction) at which the layer will display.

Description

MinimumScale property specifies the minimum scale at which the layer will be displayed. Assign a Double value to set this property.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMinimumScale in interface ILayer
Parameters:
minScale - The minScale (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaximumScale

public double getMaximumScale()
                       throws IOException,
                              AutomationException
Maximum scale (representative fraction) at which the layer will display.

Remarks

Specifies the maximum scale at which the layer will be displayed. This means that if you zoom in beyond this scale, the layer will not display. For example, specify 500 to have the layer not display when zoomed in beyond 1:500.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMaximumScale in interface ILayer
Returns:
The maxScale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMaximumScale

public void setMaximumScale(double maxScale)
                     throws IOException,
                            AutomationException
Maximum scale (representative fraction) at which the layer will display.

Description

MaximumScale property specifies the maximum scale at which the layer will be displayed. Assign a Double value to set this property.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMaximumScale in interface ILayer
Parameters:
maxScale - The maxScale (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isVisible

public boolean isVisible()
                  throws IOException,
                         AutomationException
Indicates if the layer is currently visible.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isVisible in interface ILayer
Returns:
The visible
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setVisible

public void setVisible(boolean visible)
                throws IOException,
                       AutomationException
Indicates if the layer is currently visible.

Description

Use Visible property to set the visibility of the layer. When assigned False, the layer is invisible in the current view.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setVisible in interface ILayer
Parameters:
visible - The visible (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isShowTips

public boolean isShowTips()
                   throws IOException,
                          AutomationException
Indicates if the layer shows map tips.

Remarks

Indicates whether or not map tips are shown for the layer. If set to True, then map tips will be shown for the layer. You can determine the text that will be shown via TipText. For a FeatureLayer, this text comes from the data for IFeatureLayer::DisplayField.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isShowTips in interface ILayer
Returns:
The show
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setShowTips

public void setShowTips(boolean show)
                 throws IOException,
                        AutomationException
Indicates if the layer shows map tips.

Description

ShowTips is set to True when the layer shows map tips specified in the TipText property.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setShowTips in interface ILayer
Parameters:
show - The show (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTipText

public String getTipText(double x,
                         double y,
                         double tolerance)
                  throws IOException,
                         AutomationException
Map tip text at the specified location.

Product Availability

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

Specified by:
getTipText in interface ILayer
Parameters:
x - The x (in)
y - The y (in)
tolerance - The tolerance (in)
Returns:
The text
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCached

public boolean isCached()
                 throws IOException,
                        AutomationException
Indicates if the layer needs its own display cache.

Remarks

This property indicates whether or not the layer requires its own display cache. If this property is True, then the Map will use a separate display cache for the layer so that it can be refreshed indpendently of other layers.

The Map is responsible for cache management. See IScreenDisplay::AddCache for more information on caches.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isCached in interface ILayer
Returns:
The cached
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setCached

public void setCached(boolean cached)
               throws IOException,
                      AutomationException
Indicates if the layer needs its own display cache.

Description

Use Cached property to indicate if the layer needs its own cache for display.

Remarks

Informational property. Container is responsible for cache management.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setCached in interface ILayer
Parameters:
cached - The cached (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSupportedDrawPhases

public int getSupportedDrawPhases()
                           throws IOException,
                                  AutomationException
Supported draw phases.

Remarks

Indicates the draw phases supported by the layer (esriDPGeography, esriDPAnnotation, esriDPSelection, or any combination of the three). The supported draw phases are defined by esriDrawPhase. When multiple draw phases are supported, the sum of the constants is used. For example, if SupportedDrawPhases = 3 then the layer supports drawing in the geography and annotation phases.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSupportedDrawPhases in interface ILayer
Returns:
The drawPhases
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setSpatialReferenceByRef

public void setSpatialReferenceByRef(ISpatialReference rhs1)
                              throws IOException,
                                     AutomationException
Spatial reference for the layer.

Remarks

This property is only used for map display, setting this property does not change the spatial reference of the layer's underlying data. The ArcGIS framework uses this property to pass the spatial reference from the map to the layer in order to support on-the-fly projection.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
setSpatialReferenceByRef in interface ILayer
Parameters:
rhs1 - A reference to a com.esri.arcgis.geometry.ISpatialReference (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

draw

public void draw(int drawPhase,
                 IDisplay display,
                 ITrackCancel trackCancel)
          throws IOException,
                 AutomationException
Draws the layer to the specified display for the given draw phase.

Remarks

This method draws the layer to the Display for the specified DrawPhase. Use the TrackCancel object to allow the drawing of the layer to be interrupted by the user.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
draw in interface ILayer
Parameters:
drawPhase - A com.esri.arcgis.system.esriDrawPhase constant (in)
display - A reference to a com.esri.arcgis.display.IDisplay (in)
trackCancel - A reference to a com.esri.arcgis.system.ITrackCancel (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSpatialReference

public ISpatialReference getSpatialReference()
                                      throws IOException,
                                             AutomationException
The spatial reference of the GeoDataset.

Remarks

This property is read only. For layers, when the first layer is added to ArcMap, its spatial reference is read by this property, and the map is set to this spatial reference.

Instances of the esriCarto.GroupLayer class will return null for this property, as a group layer can contain multiple datasets with different spatial references.

Modifications to a spatial reference returned by this property will not be persisted. To modify the spatial reference of a dataset, the IGeoDatasetSchemaEdit and IGeoDatasetSchemaEdit2 interfaces should be used.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSpatialReference in interface IGeoDataset
Returns:
A reference to a com.esri.arcgis.geometry.ISpatialReference
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getExtent

public IEnvelope getExtent()
                    throws IOException,
                           AutomationException
The extent of the GeoDataset.

Remarks

The IGeoDataset::Extent property returns an envelope representing the maximum extent of data which has been stored in the dataset.

Consider the following scenario. A new feature class has features added to it. The IGeoDataset::Extent is then requested and an envelope is returned. The extents of the envelope returned are represented by the red box in the image below.

The red box represents the IGeoDataset extent

If a portion of the features were then deleted and the extent is again requested an envelope with the exact same extents as during the first request would be returned (see image below). This is because the deletion of features does not shrink the extent. However all additions of features outside the red box would increase the envelope returned to encompass the newly added features.

The red box represents the IGeoDataset extent after some of the features have been deleted

If you would like to update the IGeoDataset::Extent property to reflect the current features in your dataset please see IFeatureClassManage::UpdateExtent (also see IFeatureClassLoad). In the image below the extent has been updated and a new envelope is being returned.

The red box represents the IGeoDataset extent after it has been updated

ESRI's GroupLayer implements this property differently from most other layer coclasses. When you instantiate a new GroupLayer, this property will return a valid envelope with zero height and width. With most other newly instantiated layers (for example FeatureLayer, RasterLayer, TinLayer), this property initally returns Nothing.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getExtent in interface IGeoDataset
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.

identify

public IArray identify(IGeometry pGeom)
                throws IOException,
                       AutomationException
Identifies objects at the specified location.

Remarks

When the IIdentify interface is on a map layer, the Identify method returns an array of FeatureIdentifyObject objects.

On a FeatureIdentifyObject, you can do a QI to the IIdentifyObj interface to get more information about the identified feature. The IIdentifyObj interface returns the window handle, layer, and name of the feature; it has methods to flash the feature in the display and to display a context menu at the Identify location.

This method performs an identify operation with the provided geometry. When identifying layers, typically a small envelope is passed in rather than a point to account for differences in the precision of the display and the feature geometry.


Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
identify in interface IIdentify
Parameters:
pGeom - A reference to a com.esri.arcgis.geometry.IGeometry (in)
Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSupportsPublishing

public boolean isSupportsPublishing()
                             throws IOException,
                                    AutomationException
Indicates if the layer supports the publishing process.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isSupportsPublishing in interface IPublishLayer
Returns:
The bValid
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPublishingDescription

public String getPublishingDescription()
                                throws IOException,
                                       AutomationException
The layer description reported to the publisher.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getPublishingDescription in interface IPublishLayer
Returns:
The bsDescription
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDataValid

public boolean isDataValid()
                    throws IOException,
                           AutomationException
Indicates if the data for the layer is currently valid.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isDataValid in interface IPublishLayer
Returns:
The bDataValid
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDataDetails

public String getDataDetails(String bsPadding)
                      throws IOException,
                             AutomationException
Details of the layer's data.

Product Availability

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

Specified by:
getDataDetails in interface IPublishLayer
Parameters:
bsPadding - The bsPadding (in)
Returns:
The bsDataDetails
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

prepareForPublishing

public void prepareForPublishing()
                          throws IOException,
                                 AutomationException
Prepare the layer for the publishing process.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
prepareForPublishing in interface IPublishLayer
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.