com.esri.arcgis.catalog
Class GxServiceDefinition

java.lang.Object
  extended by com.esri.arcgis.catalog.GxServiceDefinition
All Implemented Interfaces:
IGxItemInfo, IGxObject, IGxObjectEdit, IGxObjectProperties, IGxObjectUI, IGxServiceDefinition, IGxThumbnail, IMetadata, IMetadataEdit, INativeTypeInfo, com.esri.arcgis.interop.RemoteObjRef, Serializable

public class GxServiceDefinition
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IGxObject, IGxObjectEdit, IGxObjectUI, IGxObjectProperties, INativeTypeInfo, IGxServiceDefinition, IGxItemInfo, IGxThumbnail, IMetadata, IMetadataEdit

GxObject that represents a service definition.

Product Availability

Available with ArcGIS Desktop.

See Also:
Serialized Form

Constructor Summary
GxServiceDefinition()
          Constructs a GxServiceDefinition using ArcGIS Engine.
GxServiceDefinition(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
GxServiceDefinition theGxServiceDefinition = (GxServiceDefinition) obj;
 
Method Summary
 void attach(IGxObject parent, IGxCatalog pCatalog)
          Attaches the object to its parent and the catalog.
 boolean canCopy()
          Indicates if the object can be copied.
 boolean canDelete()
          Indicates if the object can be deleted.
 boolean canRename()
          Indicates if the object can be renamed.
 void delete()
          Deletes the object.
 void detach()
          Instructs the object to detach itself from its parent and the catalog.
 void editProperties(int hParent)
          Presents a modal dialog to allow editing the object's properties.
 boolean equals(Object o)
          Compare this object with another
 String getBaseName()
          The base name of the object (i.e.
 String getCategory()
          The category of the object.
 IUID getClassID()
          The class ID of this object.
static String getClsid()
          getClsid.
 IUID getContextMenu()
          The class ID of the context menu for this object.
 String getFilePath()
          The cooresponding file path of a draft service.
 String getFullName()
          The full name of the object.
 IName getInternalObjectName()
          The Name for the internal object that this GxObject represents.
 IItemInfo getItemInfo()
          The ItemInfo of the service.
 int getLargeImage()
          The large image that represents the object.
 int getLargeSelectedImage()
          The large image that represents the object when it is selected.
 IPropertySet getMetadata()
          The PropertySet containing metadata.
 String getName()
          The short name of the object.
 INativeType getNativeType()
          The native type.
 IUID getNewMenu()
          The class ID of the New menu for this object.
 IGxObject getParent()
          The parent of the object.
 void getPropByIndex(int index, String[] name, Object[] value)
          The name and value of the indexed property in the GxObject.
 Object getProperty(String name)
          The value of the named property in the GxObject.
 int getPropertyCount()
          The number of properties in the GxObject.
 int getSmallImage()
          The small image that represents the object.
 int getSmallSelectedImage()
          The small image that represents the object when it is selected.
 IPicture getThumbnail()
          The Thumbnail.
 String getTypeName()
          Name of draft Type.
 int hashCode()
          the hashcode for this object
 boolean isCanEditItemInfo()
          Indicates whether the ItemInfo is editable.
 boolean isCanEditMetadata()
          Indicates if metadata can be edited.
 boolean isValid()
          Indicates if the object is still valid.
 void refresh()
          Updates the object and any children of the object.
 void rename(String newShortName)
          Renames the object.
 void setFilePath(String pFilePath)
          The cooresponding file path of a draft service.
 void setItemInfo(IItemInfo ppItemInfo)
          The ItemInfo of the service.
 void setMetadata(IPropertySet ppPropertySet)
          The PropertySet containing metadata.
 void setProperty(String name, Object value)
          Set the value of the named property in the GxObject.
 void setThumbnailByRef(IPicture picture)
          The Thumbnail.
 void synchronize(int action, int interval)
          Updates metadata with the current properties; may create metadata if it doesn't already exist.
 
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

GxServiceDefinition

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

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

GxServiceDefinition

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

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

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

getName

public String getName()
               throws IOException,
                      AutomationException
The short name of the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getFullName

public String getFullName()
                   throws IOException,
                          AutomationException
The full name of the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getBaseName

public String getBaseName()
                   throws IOException,
                          AutomationException
The base name of the object (i.e. no extension).

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getCategory

public String getCategory()
                   throws IOException,
                          AutomationException
The category of the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getCategory in interface IGxObject
Returns:
The category
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getParent

public IGxObject getParent()
                    throws IOException,
                           AutomationException
The parent of the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getClassID

public IUID getClassID()
                throws IOException,
                       AutomationException
The class ID of this object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getClassID in interface IGxObject
Returns:
A reference to a com.esri.arcgis.system.IUID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInternalObjectName

public IName getInternalObjectName()
                            throws IOException,
                                   AutomationException
The Name for the internal object that this GxObject represents.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getInternalObjectName in interface IGxObject
Returns:
A reference to a com.esri.arcgis.system.IName
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 object is still valid.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

attach

public void attach(IGxObject parent,
                   IGxCatalog pCatalog)
            throws IOException,
                   AutomationException
Attaches the object to its parent and the catalog.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
attach in interface IGxObject
Parameters:
parent - A reference to a com.esri.arcgis.catalog.IGxObject (in)
pCatalog - A reference to a com.esri.arcgis.catalog.IGxCatalog (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

detach

public void detach()
            throws IOException,
                   AutomationException
Instructs the object to detach itself from its parent and the catalog.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

refresh

public void refresh()
             throws IOException,
                    AutomationException
Updates the object and any children of the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

canRename

public boolean canRename()
                  throws IOException,
                         AutomationException
Indicates if the object can be renamed.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

rename

public void rename(String newShortName)
            throws IOException,
                   AutomationException
Renames the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

canDelete

public boolean canDelete()
                  throws IOException,
                         AutomationException
Indicates if the object can be deleted.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

delete

public void delete()
            throws IOException,
                   AutomationException
Deletes the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

editProperties

public void editProperties(int hParent)
                    throws IOException,
                           AutomationException
Presents a modal dialog to allow editing the object's properties.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
editProperties in interface IGxObjectEdit
Parameters:
hParent - The hParent (A COM typedef) (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

canCopy

public boolean canCopy()
                throws IOException,
                       AutomationException
Indicates if the object can be copied.

Remarks

CanCopy must return True if your customized GxObject is intended to support copy/paste, drag/drop within ArcCatalog or drag/drop from ArcCatalog to ArcMap.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

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

getSmallImage

public int getSmallImage()
                  throws IOException,
                         AutomationException
The small image that represents the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSmallImage in interface IGxObjectUI
Returns:
The hBitmap (A COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getSmallSelectedImage

public int getSmallSelectedImage()
                          throws IOException,
                                 AutomationException
The small image that represents the object when it is selected.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getSmallSelectedImage in interface IGxObjectUI
Returns:
The hBitmap (A COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLargeImage

public int getLargeImage()
                  throws IOException,
                         AutomationException
The large image that represents the object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getLargeImage in interface IGxObjectUI
Returns:
The hBitmap (A COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getLargeSelectedImage

public int getLargeSelectedImage()
                          throws IOException,
                                 AutomationException
The large image that represents the object when it is selected.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getLargeSelectedImage in interface IGxObjectUI
Returns:
The hBitmap (A COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getContextMenu

public IUID getContextMenu()
                    throws IOException,
                           AutomationException
The class ID of the context menu for this object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getContextMenu in interface IGxObjectUI
Returns:
A reference to a com.esri.arcgis.system.IUID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNewMenu

public IUID getNewMenu()
                throws IOException,
                       AutomationException
The class ID of the New menu for this object.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getNewMenu in interface IGxObjectUI
Returns:
A reference to a com.esri.arcgis.system.IUID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPropertyCount

public int getPropertyCount()
                     throws IOException,
                            AutomationException
The number of properties in the GxObject.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getPropertyCount in interface IGxObjectProperties
Returns:
The count
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPropByIndex

public void getPropByIndex(int index,
                           String[] name,
                           Object[] value)
                    throws IOException,
                           AutomationException
The name and value of the indexed property in the GxObject.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getPropByIndex in interface IGxObjectProperties
Parameters:
index - The index (in)
name - The name (in/out: use single element array)
value - A Variant (in/out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getProperty

public Object getProperty(String name)
                   throws IOException,
                          AutomationException
The value of the named property in the GxObject.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getProperty in interface IGxObjectProperties
Parameters:
name - The name (in)
Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setProperty

public void setProperty(String name,
                        Object value)
                 throws IOException,
                        AutomationException
Set the value of the named property in the GxObject.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
setProperty in interface IGxObjectProperties
Parameters:
name - The name (in)
value - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNativeType

public INativeType getNativeType()
                          throws IOException,
                                 AutomationException
The native type.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getTypeName

public String getTypeName()
                   throws IOException,
                          AutomationException
Name of draft Type.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getTypeName in interface IGxServiceDefinition
Returns:
The pType
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFilePath

public String getFilePath()
                   throws IOException,
                          AutomationException
The cooresponding file path of a draft service.

Product Availability

Available with ArcGIS Desktop.

Specified by:
getFilePath in interface IGxServiceDefinition
Returns:
The pFilePath
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFilePath

public void setFilePath(String pFilePath)
                 throws IOException,
                        AutomationException
The cooresponding file path of a draft service.

Product Availability

Available with ArcGIS Desktop.

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

getItemInfo

public IItemInfo getItemInfo()
                      throws IOException,
                             AutomationException
The ItemInfo of the service.

Product Availability

Available with ArcGIS Desktop.

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

setItemInfo

public void setItemInfo(IItemInfo ppItemInfo)
                 throws IOException,
                        AutomationException
The ItemInfo of the service.

Product Availability

Available with ArcGIS Desktop.

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

isCanEditItemInfo

public boolean isCanEditItemInfo()
                          throws IOException,
                                 AutomationException
Indicates whether the ItemInfo is editable.

Product Availability

Available with ArcGIS Desktop.

Specified by:
isCanEditItemInfo in interface IGxItemInfo
Returns:
The pEditable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setThumbnailByRef

public void setThumbnailByRef(IPicture picture)
                       throws IOException,
                              AutomationException
The Thumbnail.

Product Availability

Available with ArcGIS Desktop.

Specified by:
setThumbnailByRef in interface IGxThumbnail
Parameters:
picture - A reference to a com.esri.arcgis.support.ms.stdole.IPicture (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getThumbnail

public IPicture getThumbnail()
                      throws IOException,
                             AutomationException
The Thumbnail.

Product Availability

Available with ArcGIS Desktop.

Supported Platforms

Windows

Specified by:
getThumbnail in interface IGxThumbnail
Returns:
A reference to a com.esri.arcgis.support.ms.stdole.IPicture
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMetadata

public IPropertySet getMetadata()
                         throws IOException,
                                AutomationException
The PropertySet containing metadata.

Remarks

The variable to hold the data must be of IPropertySet data type.

The metadata property is frequently used to save, or update, changes to metadata documents that have taken place through methods available on the IPropertySet, IXmlPropertySet, and/or IXmlPropertySet2 interfaces.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMetadata in interface IMetadata
Returns:
A reference to a com.esri.arcgis.system.IPropertySet
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMetadata

public void setMetadata(IPropertySet ppPropertySet)
                 throws IOException,
                        AutomationException
The PropertySet containing metadata.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

synchronize

public void synchronize(int action,
                        int interval)
                 throws IOException,
                        AutomationException
Updates metadata with the current properties; may create metadata if it doesn't already exist.

Description

The Synchronize method is used to extract metadata properties from an object and write those properties to the metadata .xml. Depending on the value of the esriMetaSyncAction, the Synchronize method may generate a new set of metadata if it doesn't already exist.

Remarks

The following actions will result in synchronization given each of the listed conditions:

Action Metadata status Esri/Sync element Interval parameter
esriMSAAccessed Doesn't matter Must not be FALSE Must be less than actual interval
esriMSAAlways Doesn't matter Doesn't matter Doesn't matter
esriMSACreated Must not exist Must not be FALSE Must be less than actual interval
esriMSANotCreated Must exist Must not be FALSE Must be less than actual interval
esriMSAOverwrite Doesn't matter Doesn't matter Doesn't matter

The difference between esriMSAAlways and esriMSAOverwrite lies in which elements are synchronized. esriMSAAlways will honor the removal or value change of an element's Sync attribute (to disable synchronization), whereas using esriMSAOverwrite is equivalent to setting the IXmlPropertySet2.OverwriteSyncAttribute to true for the metadata's property set, meaning that even elements without a Sync attribute of TRUE will be synchronized.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
synchronize in interface IMetadata
Parameters:
action - A com.esri.arcgis.geodatabase.esriMetadataSyncAction constant (in)
interval - The interval (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isCanEditMetadata

public boolean isCanEditMetadata()
                          throws IOException,
                                 AutomationException
Indicates if metadata can be edited.

Remarks

This property is available to those objects that support metadata.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Specified by:
isCanEditMetadata in interface IMetadataEdit
Returns:
The pCanEdit
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.