com.esri.arcgis.carto
Class LayerResultOptions

java.lang.Object
  extended by com.esri.arcgis.carto.LayerResultOptions
All Implemented Interfaces:
ILayerResultOptions, com.esri.arcgis.interop.RemoteObjRef, IDocumentVersionSupportGEN, IPersist, IPersistStream, IXMLSerialize, IXMLVersionSupport, Externalizable, Serializable

public class LayerResultOptions
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, ILayerResultOptions, IXMLSerialize, IPersistStream, IXMLVersionSupport, IDocumentVersionSupportGEN, Externalizable

Layer Result Options CoClass.

Description

This object is new at ArcGIS 9.3.

Remarks

Use LayerResultOptions when you want to customize the results of a MapServer query - for example, when you want field names (instead of field aliases) or data in native format or in some cases you may want to limit or adjust the geometry being returned.

Since LayerResultsOptions is part of of the LayerDescription any settings made for LayerResultsOptions will only affect those methods that include the LayerDescription (or MapDescription whcih contains LayerDescriptions) as a parameter. These include Find, Identify, QueryData, QueryRowIDs, QueryRowCount, QueryFeatureCount2, QueryFeatureIDs2, QueryFeatureData2 and QueryHyperlinks. QueryHyperLinks always returns geometry regardless InlcudeGeometry’s value, but honors GeometryResultOptions.

Product Availability

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

See Also:
Serialized Form

Constructor Summary
LayerResultOptions()
          Constructs a LayerResultOptions using ArcGIS Engine.
LayerResultOptions(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
LayerResultOptions theLayerResultOptions = (LayerResultOptions) obj;
 
Method Summary
 Object convertToSupportedObject(int docVersion)
          Convert the object to another object that is supported.
 void deserialize(IXMLSerializeData data)
          Deserializes an object from XML.
 boolean equals(Object o)
          Compare this object with another
 void getClassID(GUID[] pClassID)
          getClassID
static String getClsid()
          getClsid.
 IGeometryResultOptions getGeometryResultOptions()
          Indicates whether we need to modify Geometry.
 String getMinNamespaceSupported()
          The minimum namespace the class can serialize to (eg the 90 namespace).
 void getSizeMax(_ULARGE_INTEGER[] pcbSize)
          getSizeMax
 int hashCode()
          the hashcode for this object
 void isDirty()
          isDirty
 boolean isFormatValuesInResults()
          Indicates whether to format the values in results.
 boolean isIncludeGeometry()
          Indicates whether we should include Geometry.
 boolean isReturnFieldNamesInResults()
          Indicates whether to include field name or alias.
 boolean isSupportedAtVersion(int docVersion)
          Is this object valid at the given document version.
 void load(IStream pstm)
          load
 void readExternal(ObjectInput in)
           
 void save(IStream pstm, int fClearDirty)
          save
 void serialize(IXMLSerializeData data)
          Serializes an object to XML.
 void setFormatValuesInResults(boolean format)
          Indicates whether to format the values in results.
 void setGeometryResultOptionsByRef(IGeometryResultOptions geometryOptions)
          Indicates whether we need to modify Geometry.
 void setIncludeGeometry(boolean includeGeometry)
          Indicates whether we should include Geometry.
 void setReturnFieldNamesInResults(boolean returnFieldName)
          Indicates whether to include field name or alias.
 void writeExternal(ObjectOutput out)
           
 
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

LayerResultOptions

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

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

LayerResultOptions

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

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

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

setIncludeGeometry

public void setIncludeGeometry(boolean includeGeometry)
                        throws IOException,
                               AutomationException
Indicates whether we should include Geometry.

Product Availability

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

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

isIncludeGeometry

public boolean isIncludeGeometry()
                          throws IOException,
                                 AutomationException
Indicates whether we should include Geometry.

Remarks

If IncludeGeometry is set to False, no geometry is returned. This should increase performance in cases where feature geometry is large. The default value for IncludeGeometry is True.

QueryHyperLinks() always returns geometry regardless InlcudeGeometry’s value.

Product Availability

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

Specified by:
isIncludeGeometry in interface ILayerResultOptions
Returns:
The includeGeometry
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setGeometryResultOptionsByRef

public void setGeometryResultOptionsByRef(IGeometryResultOptions geometryOptions)
                                   throws IOException,
                                          AutomationException
Indicates whether we need to modify Geometry.

Product Availability

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

Specified by:
setGeometryResultOptionsByRef in interface ILayerResultOptions
Parameters:
geometryOptions - A reference to a com.esri.arcgis.geodatabase.IGeometryResultOptions (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getGeometryResultOptions

public IGeometryResultOptions getGeometryResultOptions()
                                                throws IOException,
                                                       AutomationException
Indicates whether we need to modify Geometry.

Remarks

Use GeometryResultOptions to densify or generalize the geometry returned from a query. Densification is used to better support clients that do not support Arcs (e.g. Bezier, Circular etc.). Generalization reduces the amount of geography being sent across the network and should lead to better performance.

Product Availability

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

Specified by:
getGeometryResultOptions in interface ILayerResultOptions
Returns:
A reference to a com.esri.arcgis.geodatabase.IGeometryResultOptions
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setReturnFieldNamesInResults

public void setReturnFieldNamesInResults(boolean returnFieldName)
                                  throws IOException,
                                         AutomationException
Indicates whether to include field name or alias.

Product Availability

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

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

isReturnFieldNamesInResults

public boolean isReturnFieldNamesInResults()
                                    throws IOException,
                                           AutomationException
Indicates whether to include field name or alias.

Remarks

ReturnFieldNamesInResults is only applied to Find and Identify functions. It is ignored by other query function such as QueryData, QueryFeatureData2, QueryHyperLinks etc. The default value for ReturnFieldNamesInResults is False – that means if it is not set explicitly, field aliases set in the source map document will be honored in Find and Identify results. For example, if a field named “CNTRY_NM” has an alias set to “Country Name” in the original map document, a Find or Identify result will display “Country Name”. When ReturnFieldNamesInResult set to True, the field name “CNTRY_NM” will be returned instead of the alias.

This property is ignored by Identify and Find functions when querying a layer that does not implement the IFeatureLayer interface (i.e. Raster layer)

Product Availability

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

Specified by:
isReturnFieldNamesInResults in interface ILayerResultOptions
Returns:
The returnFieldName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFormatValuesInResults

public void setFormatValuesInResults(boolean format)
                              throws IOException,
                                     AutomationException
Indicates whether to format the values in results.

Product Availability

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

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

isFormatValuesInResults

public boolean isFormatValuesInResults()
                                throws IOException,
                                       AutomationException
Indicates whether to format the values in results.

Remarks

FormatValuesInResults is only applied to Find and Identify functions. It is ignored by other query function such as QueryData, QueryFeatureData2, QueryHyperLinks etc. The default value for FormatValuesInResults is True – that means if it is not set explicitly, field formatting set in the source map document will be honored. For example, if the format for a field of type double is set to have thousand separator and 3 digits after decimal, the output will be a string “999,999.999”. When it is set to False, values will be returned in the source data type, for the same case, the returned value will be a double 999999.9999999.

This property is ignored by Identify and Find functions when querying a layer that does not implement IFeatureLayer interface (i.e. Raster layer)

Product Availability

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

Specified by:
isFormatValuesInResults in interface ILayerResultOptions
Returns:
The format
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

serialize

public void serialize(IXMLSerializeData data)
               throws IOException,
                      AutomationException
Serializes an object to XML.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
serialize in interface IXMLSerialize
Parameters:
data - A reference to a com.esri.arcgis.system.IXMLSerializeData (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

deserialize

public void deserialize(IXMLSerializeData data)
                 throws IOException,
                        AutomationException
Deserializes an object from XML.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
deserialize in interface IXMLSerialize
Parameters:
data - A reference to a com.esri.arcgis.system.IXMLSerializeData (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDirty

public void isDirty()
             throws IOException,
                    AutomationException
isDirty

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

load

public void load(IStream pstm)
          throws IOException,
                 AutomationException
load

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
load in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

save

public void save(IStream pstm,
                 int fClearDirty)
          throws IOException,
                 AutomationException
save

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
save in interface IPersistStream
Parameters:
pstm - A reference to a com.esri.arcgis.system.IStream (in)
fClearDirty - The fClearDirty (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSizeMax

public void getSizeMax(_ULARGE_INTEGER[] pcbSize)
                throws IOException,
                       AutomationException
getSizeMax

Description

IPersistStream is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getSizeMax in interface IPersistStream
Parameters:
pcbSize - A Structure: com.esri.arcgis.system._ULARGE_INTEGER (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassID

public void getClassID(GUID[] pClassID)
                throws IOException,
                       AutomationException
getClassID

Description

IPersist is a Microsoft interface. Please refer to MSDN for information about this interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getClassID in interface IPersist
Parameters:
pClassID - A Structure: com.esri.arcgis.support.ms.stdole.GUID (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMinNamespaceSupported

public String getMinNamespaceSupported()
                                throws IOException,
                                       AutomationException
The minimum namespace the class can serialize to (eg the 90 namespace).

Product Availability

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

Specified by:
getMinNamespaceSupported in interface IXMLVersionSupport
Returns:
The namespaceURI
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSupportedAtVersion

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

Specified by:
isSupportedAtVersion in interface IDocumentVersionSupportGEN
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

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

Specified by:
convertToSupportedObject in interface IDocumentVersionSupportGEN
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.

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException