com.esri.arcgis.server
Interface IServerObjectManager

All Superinterfaces:
Serializable
All Known Subinterfaces:
IServerObjectManager2, IServerObjectManager3, IServerObjectManager4
All Known Implementing Classes:
IServerObjectManager2Proxy, IServerObjectManager3Proxy, IServerObjectManager4Proxy, IServerObjectManagerProxy, ServerObjectManager

public interface IServerObjectManager
extends Serializable

Provides access to properties and members of the ArcGIS server's server object manager.

Remarks

Any application that runs as a user account in the agsusers user group on the ArcGIS Server can use the IGISServerConnection interface to connect to the ArcGIS Server and to get a reference to the ServerObjectManager.

The IServerObjectManager interface has the necessary methods for an application to get the collection of server object configurations and server object types configured in the server as ServerObjectConfigurationInfo and ServerObjectTypeInfo objects, respectivly. These Info objects provide information about the server object configurations and types required to make use of them in an application. Additional information about server object configurations and server object types configured in the server can be accessed using the IServerObjectAdmin interface.

The CreateServerContext method on IServerObjectManager is used to get a reference to a context on the server. A context is a process managed by the server within which a server object runs. You can use CreateServerContext to create a context based on a server object configuration, or you can create empty contexts soley for the purpose of creating ArcObjects on the fly within the server.

When using CreateServerContext to create a context based on a server object configuration, if the server object configuration is pooled, you may get a reference to a context that is already created and running in the server. When you have completed using that context, it is important to released it explicitly by calling the ReleaseContext method on IServerContext to return it to the pool. When using CreateServerContext to create a context based on a non-pooled server object configuration, or when creating an empty context, a new context is created on the server. You still need to call ReleaseContext when you are finished using it, and the context is destroyed on the server.

When To Use

Use the IServerObjectManager interface when your application connects to the ArcGIS Server to use and create server objects. For performing administration tasks, such as adding and removing server object configurations, use the IServerObjectAdmin interface.

Product Availability

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


Method Summary
 IServerContext createServerContext(String configName, String typeName)
          Gets a reference to a server context.
 IServerObjectConfigurationInfo getConfigurationInfo(String name, String typeName)
          Gets the ServerObjectConfigurationInfo for the specified Name and TypeName.
 IEnumServerObjectConfigurationInfo getConfigurationInfos()
          An enumerator over all the GIS server's ServerObjectConfigurationInfos.
 IEnumServerDirectoryInfo getServerDirectoryInfos()
          An enumerator over all the GIS server's ServerDirectoryInfos.
 IEnumServerObjectTypeInfo getTypeInfos()
          An enumerator over all the GIS server's ServerObjectTypeInfos.
 

Method Detail

createServerContext

IServerContext createServerContext(String configName,
                                   String typeName)
                                   throws IOException,
                                          AutomationException
Gets a reference to a server context. The server context can be based on a specified server object configuration, or can be an empty server context if no server object configuration is specified.

Remarks

The CreateServerContext method on IServerObjectManager is used to get a reference to a context on the server. A context is a process managed by the server within which a server object runs. You can use CreateServerContext to create a context based on a server object configuration, or you can create empty contexts soley for the purpose of creating ArcObjects on the fly within the server.

When using CreateServerContext to create a context based on a server object configuration, if the server object configuration is pooled, you may get a reference to a context that is already created and running in the server. When you have completed using that context, it is important to released it explicitly by calling the ReleaseContext method on IServerContext to return it to the pool. When using CreateServerContext to create a context based on a non-pooled server object configuration, or when creating an empty context, a new context is created on the server. You still need to call ReleaseContext when you are finished using it, and the context is destroyed on the server.

As of 9.3 some of the possible values for typeName are:

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
configName - The configName (in)
typeName - The typeName (in)
Returns:
A reference to a com.esri.arcgis.server.IServerContext
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getConfigurationInfo

IServerObjectConfigurationInfo getConfigurationInfo(String name,
                                                    String typeName)
                                                    throws IOException,
                                                           AutomationException
Gets the ServerObjectConfigurationInfo for the specified Name and TypeName.

Remarks

Returns the server configuration with the specified Name and Type as a ServerObjectConfigurationInfo object. The Info object provides information about the server object configuration required to make use of them in an application. This method will only return a ServerObjectConfigurationInfo for configurations which are started. If you call this method and specify a configuration which is not started, it will return an error.

Additional information about started server object configurations, and configurations that are not started can be accessed using the IServerObjectAdmin interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
name - The name (in)
typeName - The typeName (in)
Returns:
A reference to a com.esri.arcgis.server.IServerObjectConfigurationInfo
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getConfigurationInfos

IEnumServerObjectConfigurationInfo getConfigurationInfos()
                                                         throws IOException,
                                                                AutomationException
An enumerator over all the GIS server's ServerObjectConfigurationInfos.

Remarks

GetConfigurationInfos returns an enumeration (IEnumServerObjectConfigurationInfo) of IServerObjectConfigurationInfo for configurations of any esriConfigurationStatus from all folders.

These Info objects provide information about the server object configurations and types that are required to make use of them in an application. Additional information about server object configurations can be accessed using the IServerObjectAdmin interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getTypeInfos

IEnumServerObjectTypeInfo getTypeInfos()
                                       throws IOException,
                                              AutomationException
An enumerator over all the GIS server's ServerObjectTypeInfos.

Remarks

Returns and enumeration of server object types in the server as ServerObjectTypeInfo objects. These Info objects provide information about the server object types required to make use of them in an application. Additional information about server object types in the server can be accessed using the IServerObjectAdmin interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getServerDirectoryInfos

IEnumServerDirectoryInfo getServerDirectoryInfos()
                                                 throws IOException,
                                                        AutomationException
An enumerator over all the GIS server's ServerDirectoryInfos.

Remarks

Returns an enumeration of server directories configured in the server as ServerDirectoryInfo objects. These Info objects provide information about the server directories required to make use of them in an application. Additional information about server directories configured in the server can be accessed using the IServerObjectAdmin interface.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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