|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.server.ServerObjectAdmin
public class ServerObjectAdmin
The ServerObjectAdmin object which administrates the GIS Server.
The ServerObjectAdmin administrates a GIS server. Any application that runs as a user account in the agsadmin user group on the ArcGIS Server can use the IGISServerConnection interface to connect to the ArcGIS Server and to get a reference to the ServerObjectAdmin. If the user account is not part of the agsadmin user group the ServerObjectAdmin property on IServerConnection will return an error. Applications that are running as accounts that can connect to the server but are not part of the agsadmin user group can use the ServerObjectManager property on IGISServerConnection to get a reference on the ServerObjectManager .
Use ServerObjectAdmin to adminstrate both the set of server object configurations and types associated with the server, and to administer aspects of the server itself. The following administration functionality of the ArcGIS Server is provided by ServerObjectAdmin :
Adminster server object configurations:
Add and delete server object configurations
Update a server object configuration's properties
Start, stop and pause server object configurations
Report the status of a server object configuration
Get all server object configurations and their properties
Get all server object types and their properties
Administer aspects of the server itself:
Add and remove server container machines
Get all server container machines
Add and remove server directories
Get all server directories
Configure the server's logging properties
Get statistics about events in the server
ServerObjectManager
,
ServerObjectType
,
IAGSServerConnectionAdmin
,
AGSServerConnectionName
,
IEnumServerObjectType
,
IEnumServerDirectory
,
AGSServerConnection
,
IServerConnection
,
ServerObjectTypeInfo
,
IEnumServerObjectTypeInfo
,
IAGSServerObject
,
ServerDirectoryInfo
,
ServerObjectConfiguration
,
ServerContext
,
ServerObjectConfigurationStatus
,
IAGSServerObjectName
,
ServerConnection
,
IAGSServerConnectionName
,
IAGSEnumServerObjectName
,
ServerObject
,
IServerObjectConfigurationInfo
,
IServerObjectAdmin
,
AGSServerConnectionFactory
,
IAGSServerConnectionFactory
,
IEnumServerObjectConfigurationInfo
,
IGISServerConnection
,
IAGSServerConnection
,
IServerContext
,
ServerDirectory
,
ServerObjectConfigurationInfo
,
IEnumServerMachine
,
ServerMachine
,
IServerObjectConfiguration
,
IServerObjectManager
,
IServerObjectTypeInfo
,
IServerMachine
,
IServerObject
,
IServerObjectType
,
GISServerConnection
,
AGSServerObjectName
,
ServerObjectAdmin
,
IEnumServerObjectConfiguration
,
Serialized FormConstructor Summary | |
---|---|
ServerObjectAdmin(Object obj)
Construct a ServerObjectAdmin using a reference to such an object returned from ArcGIS Engine or Server. |
Method Summary | |
---|---|
void |
addConfiguration(IServerObjectConfiguration config)
Adds a server object configuration (created with CreateConfiguration) to the GIS server. |
void |
addExtensionType(String sOTypeName,
IServerObjectExtensionType pSOEType)
Registers a new server object extension type with the server object type indicated in the argument list. |
void |
addMachine(IServerMachine machine)
Adds a host machine (created with CreateMachine) to the GIS server. |
void |
addServerDirectory(IServerDirectory pSD)
Adds a server directory (created with CreateServerDirectory) to the GIS server. |
void |
allowPermission(String principal,
String resource,
String operation)
Grants permission to the specified principal to perform the given operation on the indicated resource. |
void |
cleanPermissions(String principal)
Removes all permissions for a particular principal. |
IServerObjectConfiguration |
createConfiguration()
Creates a new server object configuration. |
IServerObjectExtensionType |
createExtensionType()
Creates a new empty server object extension type. |
void |
createFolder(String folderName)
Creates a server configuration folder. |
IServerMachine |
createMachine()
Creates a new host machine. |
IServerDirectory |
createServerDirectory()
Creates a new server directory. |
void |
deleteConfiguration(String name,
String typeName)
Deletes a server object configuration from the GIS server. |
void |
deleteExtensionType(String sOTypeName,
String sOETypeName)
Unregisters a server object extension type from the server object type indicated in the argument list. |
void |
deleteFolder(String folderName)
Deletes a server configuration folder. |
void |
deleteMachine(String machineName)
Deletes a host machine from the GIS server, making it unavailable to host server objects. |
void |
deleteServerDirectory(String path)
Deletes a server directory such that its cleanup is no longer managed by the GIS server. |
void |
denyPermission(String principal,
String resource,
String operation)
Revokes permission from the specified principal to perform the given operation on the indicated resource. |
void |
disable()
Disables a started SOM. |
void |
enable()
Enables a disabled SOM. |
boolean |
equals(Object o)
Compare this object with another |
IEnumBSTR |
getAllPrincipals()
Enumrates all princiapls in the Permissions Store. |
IStatisticsResults |
getAllStatisticsForTimeInterval(int event,
int period,
int index,
int length,
String name,
String type,
String machine)
Gets a set of statistics, such as count, min, max, mean for an event (such as context usage time) for a specified time period. |
IServerObjectConfiguration |
getConfiguration(String name,
String typeName)
Get the server object configuration with the specified Name and TypeName. |
IPropertySet |
getConfigurationProperties(String name,
String type)
Retrieves properties of server object configuration. |
IEnumServerObjectConfiguration |
getConfigurations()
An enumerator over all the server object configurations. |
IEnumServerObjectConfiguration |
getConfigurationsEx(String folderName)
An enumerator over all the server object configurations in a server configuration folder. |
IEnumServerObjectConfiguration |
getConfigurationsEx2(String folderName,
int stat)
An enumerator over all the server object configurations in a server configuration folder. |
IServerObjectConfigurationStatus |
getConfigurationStatus(String name,
String typeName)
Get the configuration status for a server object configuration with the specified Name and TypeName. |
int |
getErrorReportCacheSize()
Maximum number of stored crash dumps. |
String |
getErrorReportDir()
Crash dump directory. |
String |
getErrorReportEmailAddress()
E-mail address of server administrator. |
int |
getErrorReportInterval()
Interval at which SOM checks crash dumps and uploads error reports. |
int |
getErrorReportMode()
Exception handling mode of SOC processes. |
int |
getErrorReportModeSOM()
Exception handling mode of SOM process. |
int |
getErrorReportType()
Crash dump type. |
IEnumServerObjectExtensionType |
getExtensionTypes(String sOTypeName)
An enumerator over all the server object extension types. |
IPropertySet |
getFolderInfo(String folderName)
Properties associated with a server configuration folder. |
IEnumBSTR |
getFolders(String folderName)
An array of folder names in the server configuration folder. |
String |
getInputDir(String cfgName,
String cfgType)
Returns the input directory for the given Server Object Configuration. |
IServerMachine |
getMachine(String name)
Get the host machine with the specified Name. |
IEnumServerMachine |
getMachines()
An enumerator over all the GIS server's host machines. |
IPropertySet |
getProperties()
The properties for the GIS server. |
IEnumServerDirectory |
getServerDirectories()
An enumerator over the GIS server's output directories. |
IServerDirectory |
getServerDirectory(String path)
Get the server directory with the specified Path. |
IServerLog |
getServerLog()
Retrieves a reference to the ArcGIS Server logs. |
IDoubleArray |
getSpecificStatisticForTimeIntervals(int event,
int function,
int period,
int index,
int length,
String name,
String type,
String machine)
Gets a specific statistic (such as total count of server contexts created) for a specified time period. |
IEnumServerObjectType |
getTypes()
An enumerator over all the server object types. |
int |
hashCode()
the hashcode for this object |
boolean |
isAdminUser(String userName)
Checks if given user is a member of agsadmin group. |
boolean |
isErrorReportEnableUpload()
Indicates whether error reporting is enabled. |
boolean |
isInputDirInUse()
Checks if at least one service is currently using the input directory |
boolean |
isSecurityEnabled()
Indicates whether security is switched on or off. |
void |
pauseConfiguration(String name,
String typeName)
Makes the configuration unavailable to clients for processing requests, but does not shut down running instances of server objects, or interrupt requests in progress. |
void |
renameFolder(String folderName,
String newName)
Renames a server configuration folder. |
void |
reportErrors()
Uploads stored error reports to the reporting web service. |
void |
reset()
Clears out the currently gathered statistics. |
void |
setErrorReportCacheSize(int pVal)
Maximum number of stored crash dumps. |
void |
setErrorReportDir(String pVal)
Crash dump directory. |
void |
setErrorReportEmailAddress(String pVal)
E-mail address of server administrator. |
void |
setErrorReportEnableUpload(boolean pVal)
Indicates whether error reporting is enabled. |
void |
setErrorReportInterval(int pVal)
Interval at which SOM checks crash dumps and uploads error reports. |
void |
setErrorReportMode(int pVal)
Exception handling mode of SOC processes. |
void |
setErrorReportModeSOM(int pVal)
Exception handling mode of SOM process. |
void |
setErrorReportType(int pVal)
Crash dump type. |
void |
setFolderInfo(String folderName,
IPropertySet ppInfo)
Properties associated with a server configuration folder. |
void |
setIsSecurityEnabled(boolean pVal)
Indicates whether security is switched on or off. |
void |
setProperties(IPropertySet props)
The properties for the GIS server. |
void |
startConfiguration(String name,
String typeName)
Starts a server object configuration and makes it available to clients for processing requests. |
void |
stopConfiguration(String name,
String typeName)
Stops a server object configuration and shuts down any running instances of server objects defined by the configuration. |
void |
updateConfiguration(IServerObjectConfiguration config)
Updates the properties of a server object configuration. |
void |
updateConfigurationProperties(String name,
String type,
IPropertySet pProps)
Updates properties of server object configuration. |
void |
updateMachine(IServerMachine machine)
Updates the properties of a host machine. |
void |
updateServerDirectory(IServerDirectory pSD)
Updates the properties of a server directory. |
void |
uploadData(String cfgName,
String cfgType,
String fileName,
byte[] data)
Uploads data to server and saves it as a file in the input directory of the given configuration. |
void |
validateConfiguration(String name,
String typeName)
Validates server object configuration. |
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 |
---|
public ServerObjectAdmin(Object obj) throws IOException
obj
to ServerObjectAdmin
. *
ServerObjectAdmin o = (ServerObjectAdmin)obj; // will not work
ServerObjectAdmin o = new ServerObjectAdmin(obj); // Use this constructor instead
* @param obj an object returned from ArcGIS Engine or Server
IOException
- if there are interop problems
ServerObjectAdmin theServerObjectAdmin = (ServerObjectAdmin) obj;
Method Detail |
---|
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public IServerDirectory createServerDirectory() throws IOException, AutomationException
Both server objects and server applications typically need to write either temporary data or result data to some location in order for it to be delivered to, or presented to the end user. For example, a map server object's ExportMapImage method can create a image file which is then displayed on a web applicaiton. These files are typically transient and temporary by nature. For example, when a map server write's an image to satisfy a request from a web application, that image is needed only for the time it takes to display it on the web application. An application that creates check out personal geodatabases for download would provide a finite amount of time between which that geodatabase is created and when it can be downloaded.
Because server applications support many user sessions, these output files can accumulate and need to be periodically cleaned up. The server provides the cabability to automatically cleanup these output files if they are written to one of the server's output directories.
Use the CreateServerDirectory method to create a new server directory that you can pass as an argument to the AddServerDirectory method to add new server directories to your GIS Server. Once you have added the server directory, you can configure your server objects and server applications to make use of the server directory.
Note: server directories must be accessible by all host machines configured in the GIS server.
createServerDirectory
in interface IServerObjectAdmin
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void addServerDirectory(IServerDirectory pSD) throws IOException, AutomationException
Both server objects and server applications typically need to write either temporary data or result data to some location in order for it to be delivered to, or presented to the end user. For example, a map server object's ExportMapImage method can create a image file which is then displayed on a web applicaiton. These files are typically transient and temporary by nature. For example, when a map server write's an image to satisfy a request from a web application, that image is needed only for the time it takes to display it on the web application. An application that creates check out personal geodatabases for download would provide a finite amount of time between which that geodatabase is created and when it can be downloaded.
Because server applications support many user sessions, these output files can accumulate and need to be periodically cleaned up. The server provides the cabability to automatically cleanup these output files if they are written to one of the server's output directories.
Use the CreateServerDirectory method to create a new server directory that you can pass as an argument to the AddServerDirectory method to add new server directories to your GIS Server. Once you have added the server directory, you can configure your server objects and server applications to make use of the server directory.
Note: server directories must be accessible by all host machines configured in the GIS server.
addServerDirectory
in interface IServerObjectAdmin
pSD
- A reference to a com.esri.arcgis.server.IServerDirectory (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void updateServerDirectory(IServerDirectory pSD) throws IOException, AutomationException
The UpdateServerDirectory method will update the ServerDirectory that is specified when the method is called. You can use the GetServerDirectory or GetServerDirectories methods on IServerObjectAdmin to get a reference to the ServerDirectory you want to update.
The UpdateServerDirectory is useful for modifying the cleanup mode (CleaningMode ) and cleanup schedule.
Note: server directories must be accessible by all host machines configured in the GIS server.
updateServerDirectory
in interface IServerObjectAdmin
pSD
- A reference to a com.esri.arcgis.server.IServerDirectory (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void deleteServerDirectory(String path) throws IOException, AutomationException
The DeleteServerDirectory method removes a directory from the set of directories managed by the GIS server. The DeleteServerDirectory method will not affect the physical directory.
When a server directory is removed with this method, the GIS Server will not longer manage the cleanup of output files written to that directory. Applicaitons or server objects that are configured to write their output to the physical directory that is referenced by the server directory will continue to work, but the files they write will not be cleaned up by the server.
deleteServerDirectory
in interface IServerObjectAdmin
path
- The path (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IServerDirectory getServerDirectory(String path) throws IOException, AutomationException
The GetServerDirectory method returns the IServerDirectory interface on the ServerDirectory whose path is specified. Once you have a reference to the ServerDirectory, you can get and set its properties, and use it as input the UpdateServerDirectery method.
getServerDirectory
in interface IServerObjectAdmin
path
- The path (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IEnumServerDirectory getServerDirectories() throws IOException, AutomationException
Both server objects and server applicaitons typically need to write either temporary data or result data to some location in order for it to be delivered to, or presented to the end user. For example, a map server object's ExportMapImage method can create a image file which is then displayed on a web applicaiton. These files are typically transient and temporary by nature. For example, when a map server writes an image to satisfy a request from a web application, that image is needed only for the time it takes to display it on the web application. An application that creates check out personal geodatabases for download would provide a finite amount of time between which that geodatabase is created and when it can be downloaded.
Because server applications support many user sessions, these output files can accumulate and need to be periodically cleaned up. The server provides the cabability to automatically cleanup these output files if they are written to one of the server's output directories.
The GetServerDirectories method returns a enumeration of all the server directories that are managed by the server.
getServerDirectories
in interface IServerObjectAdmin
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IServerObjectConfiguration createConfiguration() throws IOException, AutomationException
The CreateConfiguration method will create a new ServerObjectConfiguration that you can add to your ArcGIS Server. The CreateConfiguration method returns the IServerObjectConfiguration interface on the new ServerObjectConfiguration. Use the IServerObjectConfiguration interface to set the various properties of the configuration, then use the AddConfiguration method on IServerObjectAdmin to add the new configuration to the ArcGIS Server.
Once a configuration is added to the server, you can use the StartConfiguration and EnableConfiguration to make it available for applications to use.
createConfiguration
in interface IServerObjectAdmin
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void addConfiguration(IServerObjectConfiguration config) throws IOException, AutomationException
The AddConfiguration method will add a ServerObjectConfiguration to your ArcGIS Server. A new ServerObjectConfiguration can be created using the CreateConfiguration method. Use the IServerObjectConfiguration interface to set the various properties of the configuration, then use the AddConfiguration method on IServerObjectAdmin to add the new configuration to the ArcGIS Server.
Once a configuration is added to the server, you can use StartConfiguration to make it available for applications to use.
addConfiguration
in interface IServerObjectAdmin
config
- A reference to a com.esri.arcgis.server.IServerObjectConfiguration (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IServerObjectConfiguration getConfiguration(String name, String typeName) throws IOException, AutomationException
The GetConfiguration method returns the IServerObjectConfiguration interface on the ServerObjectConfiguration specified by name and type. Once you have a reference to the ServerObjectConfiguration, you can get and set its properties, and use it as input the UpdateConfiguration method.
getConfiguration
in interface IServerObjectAdmin
name
- The name (in)typeName
- The typeName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void updateConfiguration(IServerObjectConfiguration config) throws IOException, AutomationException
The UpdateConfiguration method will update the ServerObjectConfiguration that is specified when the method is called. You can use the GetConfiguration or GetConfigurations methods on IServerObjectAdmin to get a reference to the ServerObjectConfiguration you want to update.
Note that the server object configuration must be stopped before you call UpdateConfiguration. You can use StopConfiguration to stop the server object configuration.
updateConfiguration
in interface IServerObjectAdmin
config
- A reference to a com.esri.arcgis.server.IServerObjectConfiguration (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void deleteConfiguration(String name, String typeName) throws IOException, AutomationException
Use DeleteConfiguration to delete a server object configuration from you GIS Server. Note, in order to call DeleteConfiguration, the server object configuration must be stopped. If it is not stopped, then DeleteConfiguration will return an error.
deleteConfiguration
in interface IServerObjectAdmin
name
- The name (in)typeName
- The typeName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IEnumServerObjectConfiguration getConfigurations() throws IOException, AutomationException
GetConfigurations returns an enumeration (IEnumServerObjectConfiguration) of IServerObjectConfiguration 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.
getConfigurations
in interface IServerObjectAdmin
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IServerObjectConfigurationStatus getConfigurationStatus(String name, String typeName) throws IOException, AutomationException
The GetConfigurationStatus method will return the IServerObjectConfigurationStatus interface on a particular server object configuration. This interface provides information as to the number of instances of that configuration that are running, and the number in use. It provides information as to the startup status of the configuration.
You can use this interface to monitor server object configuration usage. For example, you can use the InstanceInUseCount to determine if any instances of the configuration are in use before stopping the configuration.
getConfigurationStatus
in interface IServerObjectAdmin
name
- The name (in)typeName
- The typeName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IEnumServerObjectType getTypes() throws IOException, AutomationException
The GetTypes methid returns an enumeration of the server object types that are installed in the GIS Server. By default, the MapServer and GeocodeServer object types are installed in the server.
getTypes
in interface IServerObjectAdmin
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void startConfiguration(String name, String typeName) throws IOException, AutomationException
The start configuration method will start the server object configuration and make it available for use by clients. When a server object configuration is started, if it is a pooled configuration, the minimum number of server objects as described by the configuration will be pre-loaded. The StartConfiguration method will complete only when all the server object instances have been created to satisfy the minimum.
startConfiguration
in interface IServerObjectAdmin
name
- The name (in)typeName
- The typeName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void stopConfiguration(String name, String typeName) throws IOException, AutomationException
The StopConfiguration method stops a server object configuration. Stopping a server object configuration both makes the server object configuration unusable by clients (calls to CreateServerObject referencing the configuration will fail), and it also shuts down any of the confiuration's running server objects. If any of those objects are in use and executing requests, they will be interupted and shut down.
You should stop a configuration when you need to change its properties (such as pooling model or recycling model). Use the StartConfiguration method to re-start the configuration.
If you want to stop the confuguration without interupting clients which are making use of server objects, you can pause the configuration using PauseConfiguration and wait until such a time that all server object usage has ended, then call StopConfiguration to stop the configuration.
stopConfiguration
in interface IServerObjectAdmin
name
- The name (in)typeName
- The typeName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void pauseConfiguration(String name, String typeName) throws IOException, AutomationException
The PauseConfiguration method will pause the server object configuration. Pausing the configuration does not interupt any requests that are being executed by instances of server objects managed by that configuration. A paused server object, hevever, will refuse future requests.
You should pause server objects if you want to lock requests from being processed, but you want requests in process to complete. Once all objects are not longer in use, you can perform necessary operations (such as database maintenance, stopping the server object configuration to changes properties, etc). Use the GetConfigurationStatus and IServerObjectConfigurationStatus to determine if any server objects are in use.
Use the StartConfiguration method to resume the server object configuration.
pauseConfiguration
in interface IServerObjectAdmin
name
- The name (in)typeName
- The typeName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IServerMachine createMachine() throws IOException, AutomationException
ArcGIS Server is a distributed system. Server objects managed by the GIS server run on one or more host machines. A machine that can host server objects must can the Server Object Container installed on it, and the machine must be added to the list of host machines managed by the Server Object Manager.
Use the CreateMachine method to create a new server machine that you can pass as an argument to the AddMachine method to add new host machines to your GIS Server.
createMachine
in interface IServerObjectAdmin
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void addMachine(IServerMachine machine) throws IOException, AutomationException
ArcGIS Server is a distributed system. Server objects managed by the GIS server run on one or more host machines. A machine that can host server objects must can the Server Object Container installed on it, and the machine must be added to the list of host machines managed by the Server Object Manager.
Use the AddMachine method to add new host machines to your GIS Server. Once a machine has been added to the GIS server, as new server object instances are created, the server object manager will make use of the new machine.
addMachine
in interface IServerObjectAdmin
machine
- A reference to a com.esri.arcgis.server.IServerMachine (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IEnumServerMachine getMachines() throws IOException, AutomationException
A server object configuration can be configured such that its server objects run on one or more host machines that have been added to the ArcGIS Server. Use the GetMachines method to get the names of the machines that have been added to the server to host server objects.
getMachines
in interface IServerObjectAdmin
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void deleteMachine(String machineName) throws IOException, AutomationException
The DeleteMachine method removes a machine from the machines that can host server objects for the GIS server. When you delete a machine, any instances of server objects that are running on that machine will be shut down and replaced with instances running on the GIS server's other host machines.
deleteMachine
in interface IServerObjectAdmin
machineName
- The machineName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IServerMachine getMachine(String name) throws IOException, AutomationException
The GetMachine method returns the IServerMachine interface on the ServerMachine whoes name is specified. Once you have a reference to the ServerMachine, you can get and set its description, and use it as input the UpdateMachine method.
getMachine
in interface IServerObjectAdmin
name
- The name (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void updateMachine(IServerMachine machine) throws IOException, AutomationException
The UpdateMachine method will update the host machine that is specified when the method is called. You can use the GetMachine or GetMachines methods on IServerObjectAdmin to get a reference to the machine you want to update.
The UpdateMachine is useful for modifying the machine's description.
updateMachine
in interface IServerObjectAdmin
machine
- A reference to a com.esri.arcgis.server.IServerMachine (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IPropertySet getProperties() throws IOException, AutomationException
The Properties property on IServerObjectAdmin returns the logging properties for the GIS server. The properties are for the GIS server's logging, and for server object creation timeout.
The GIS server logs its activity, including server object configuration sartup, shutdown, server context creation and shutdown, as well as errors generated through any failed operation or request in the GIS server.
You can control the logging properties through the PropertySet returned by Properties. The following is a description of the logging properties:
LogPath: this is the path to the location on disk that log files are writeen. By default, the LogPath is <install location>\log
LogSize: this is the size to which a single log file can graw (in MB) before a new logfile is created. By default, the LogSize is 10
LogLevel: this is a number between 0 and 5 which indicates the level of detail that the server logs. By default, the LogLevel is 3. The following is a description of the each log level:
All aspects of logging can be changed when the GIS server is running. When they are changed, the server will immediatly use the new logging settings.
Server object creation may hang for a variety of reasons. To prevent this from adversly affecting the GIS server, it has a ConfigurationStartTimeout property which defines the maximim time in seconds a server object instance has to initialize itself before its creation is cancelled.
getProperties
in interface IServerObjectAdmin
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setProperties(IPropertySet props) throws IOException, AutomationException
setProperties
in interface IServerObjectAdmin
props
- A reference to a com.esri.arcgis.system.IPropertySet (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IEnumServerObjectExtensionType getExtensionTypes(String sOTypeName) throws IOException, AutomationException
Server object extensions can be designated by a type name, description and class ID. The GetExtensionTypes method of the IServerObjectAdmin2 interface provides a reference to an enumeration of IServerObjectExtensionTypes. IServerObjectExtensionType has methods that can be interrogated for type name, description and class ID.
getExtensionTypes
in interface IServerObjectAdmin2
sOTypeName
- The sOTypeName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IServerLog getServerLog() throws IOException, AutomationException
The ServerLog property of the IServerObjectAdmin2 interface is a reference to an IServerLog interface. The IServerLog interface is used to query and retrieve records from the logs on disk.
getServerLog
in interface IServerObjectAdmin2
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void enable() throws IOException, AutomationException
The Enable method of the IServerObjectAdmin2 interface enables a previously disabled SOM. Using this method on a currently enabled SOM has no effect. Server objects that had been disabled will be immediately available.
enable
in interface IServerObjectAdmin2
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void disable() throws IOException, AutomationException
The Disable method of the IServerObjectAdmin2 interface disables a SOM. This prevents further communication with any server objects until the Enable method is called. Diabling a SOM does not remove server objects from RAM. When the SOM is enabled again, the server objects will be immediately available.
disable
in interface IServerObjectAdmin2
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IServerObjectExtensionType createExtensionType() throws IOException, AutomationException
createExtensionType
in interface IServerObjectAdmin2
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void addExtensionType(String sOTypeName, IServerObjectExtensionType pSOEType) throws IOException, AutomationException
addExtensionType
in interface IServerObjectAdmin2
sOTypeName
- The sOTypeName (in)pSOEType
- A reference to a com.esri.arcgis.server.IServerObjectExtensionType (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void deleteExtensionType(String sOTypeName, String sOETypeName) throws IOException, AutomationException
deleteExtensionType
in interface IServerObjectAdmin2
sOTypeName
- The sOTypeName (in)sOETypeName
- The sOETypeName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void createFolder(String folderName) throws IOException, AutomationException
createFolder
in interface IServerObjectAdmin2
folderName
- The folderName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void deleteFolder(String folderName) throws IOException, AutomationException
deleteFolder
in interface IServerObjectAdmin2
folderName
- The folderName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void renameFolder(String folderName, String newName) throws IOException, AutomationException
renameFolder
in interface IServerObjectAdmin2
folderName
- The folderName (in)newName
- The newName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IEnumBSTR getFolders(String folderName) throws IOException, AutomationException
getFolders
in interface IServerObjectAdmin2
folderName
- The folderName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IPropertySet getFolderInfo(String folderName) throws IOException, AutomationException
getFolderInfo
in interface IServerObjectAdmin2
folderName
- The folderName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setFolderInfo(String folderName, IPropertySet ppInfo) throws IOException, AutomationException
setFolderInfo
in interface IServerObjectAdmin2
folderName
- The folderName (in)ppInfo
- A reference to a com.esri.arcgis.system.IPropertySet (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IEnumServerObjectConfiguration getConfigurationsEx(String folderName) throws IOException, AutomationException
GetConfigurationEx returns an enumeration (IEnumServerObjectConfiguration) of IServerObjectConfiguration for configurations of any esriConfigurationStatus from the folder specified.
Some folderNames have special significance:
folderName == “” means “root”.
folderName == “NULL” means “all folders and root”
getConfigurationsEx
in interface IServerObjectAdmin2
folderName
- The folderName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void validateConfiguration(String name, String typeName) throws IOException, AutomationException
validateConfiguration
in interface IServerObjectAdmin2
name
- The name (in)typeName
- The typeName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IEnumServerObjectConfiguration getConfigurationsEx2(String folderName, int stat) throws IOException, AutomationException
GetConfigurationsEx2 returns an enumeration (IEnumServerObjectConfiguration) of IServerObjectConfiguration for configurations of a specific esriConfigurationStatus from the folder specified.
Some folderNames have special significance:
folderName == "" means "root".
getConfigurationsEx2
in interface IServerObjectAdmin3
folderName
- The folderName (in)stat
- A com.esri.arcgis.server.esriConfigurationStatus constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isSecurityEnabled() throws IOException, AutomationException
IsSecurityEnabled has a Default value of OFF.
This switch does NOT affect
- any methods called on IServerObjectAdmin, IServerObjectAdmin2 or IServerObjectAdmin3
- any methods called on IServerObjectManager, IServerObjectManager2, IServerObjectManager3 or IServerObjectManager4 obtained from IGISServerConnection.ServerObjectManager..
This swtich DOES affect the following IServerObjectManager methods only when the interfaces are accessed through IGISServerConnection2.ServerObjectManager:
IServerObjectManager.CreateServerContext
IServerObjectManager.GetConfigurationInfo
IServerObjectManager.GetConfigurationInfos
IServerObjectManager2.GetConfigurationInfosEx
IServerObjectManager2.GetFolders
IServerObjectManager2.FolderInfo
IServerObjectManager2.GetConfigurationStatus
IServerObjectManager3.GetConfigurationInfosEx2
In the case that a user does not have permissions to access a particular resource (e.g configuration or folder ), each of the methods above will return ACCESSDENIED errors and produce the following error message:
"User X does not have sufficient permissions to access Y."
When a user obtains a list of configurations, configurationInfos or Folders it will NOT contain resources to which the user does not have access.
VERY IMPORTANT - If you disable security through the API with a call to IPermissionsAdmin.IsSecurityEnabled = false, you will have exposed all of your web services to the public internet and security will be defeated. Disable security at your own risk!
isSecurityEnabled
in interface IServerObjectAdmin4
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setIsSecurityEnabled(boolean pVal) throws IOException, AutomationException
setIsSecurityEnabled
in interface IServerObjectAdmin4
pVal
- The pVal (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IPropertySet getConfigurationProperties(String name, String type) throws IOException, AutomationException
getConfigurationProperties
in interface IServerObjectAdmin5
name
- The name (in)type
- The type (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void updateConfigurationProperties(String name, String type, IPropertySet pProps) throws IOException, AutomationException
updateConfigurationProperties
in interface IServerObjectAdmin5
name
- The name (in)type
- The type (in)pProps
- A reference to a com.esri.arcgis.system.IPropertySet (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getInputDir(String cfgName, String cfgType) throws IOException, AutomationException
getInputDir
in interface IServerObjectAdmin6
cfgName
- The cfgName (in)cfgType
- The cfgType (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isInputDirInUse() throws IOException, AutomationException
isInputDirInUse
in interface IServerObjectAdmin6
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void uploadData(String cfgName, String cfgType, String fileName, byte[] data) throws IOException, AutomationException
uploadData
in interface IServerObjectAdmin6
cfgName
- The cfgName (in)cfgType
- The cfgType (in)fileName
- The fileName (in)data
- An unsigned byte (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isAdminUser(String userName) throws IOException, AutomationException
isAdminUser
in interface IServerObjectAdmin7
userName
- The userName (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void reset() throws IOException, AutomationException
reset
in interface IServerStatistics
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IDoubleArray getSpecificStatisticForTimeIntervals(int event, int function, int period, int index, int length, String name, String type, String machine) throws IOException, AutomationException
Use the GetSpecificStatisticForTimeIntervals method to query the GIS server for a specific statistic for an event at descrete time intervals. For example you can use this method to get the count of all server contexts that were created for each minute of the last hour.
The server event is specified by the event argument, and the statistical function to qeury is specified by the function argument.
This method can be used to query based on the the events occuring in the server as a whole (i.e. accross all host machines), or for those occuring on a specific host machine. Additionally, these methods can be used to query based on the events using all server objects, or for events on a particular server object.
To specify a specific machine, specify its name for the machine argument. For all machines, use a blank string for the machine argument.
To specify a specific server object, specify its name for the Name argument and type for the Type argument. For all server objects, use a blank string for both name and type.
You specify the time interval for which you want to query using an index of time periods relative to the current time based on the time period described by esriServerTimePeriod. The index argument to the GetSpecificStatisticForTimeIntervals method describes the index of the time period to start from, and the length argument describes the number of time periods to query.
For example, to query for statics for each hour in the last 2 hours, specify a time period of esriSTPHour, an index of 0 and a length of 2.
getSpecificStatisticForTimeIntervals
in interface IServerStatistics
event
- A com.esri.arcgis.server.esriServerStatEvent constant (in)function
- A com.esri.arcgis.server.esriServerStatFunction constant (in)period
- A com.esri.arcgis.server.esriServerTimePeriod constant (in)index
- The index (in)length
- The length (in)name
- The name (in)type
- The type (in)machine
- The machine (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IStatisticsResults getAllStatisticsForTimeInterval(int event, int period, int index, int length, String name, String type, String machine) throws IOException, AutomationException
Use the GetAllStatisticsForTimeInterval to query the GIS server for all statistics for an event. For example you can use this method to get the sum, mean, etc of server contexts usage time for the last 2 days.
The server event is specified by the event argument, and the statistical function to qeury is specified by the function argument.
This method can be used to query based on the the events occuring in the server as a whole (i.e. accross all host machines), or for those occuring on a specific host machine. Additionally, these methods can be used to query based on the events using all server objects, or for events on a particular server object.
To specify a specific machine, specify its name for the machine argument. For all machines, use a blank string for the machine argument.
To specify a specific server object, specify its name for the Name argument and type for the Type argument. For all server objects, use a blank string for both name and type.
You specify the time interval for which you want to query using an index of time periods relative to the current time based on the time period described by esriServerTimePeriod. The index argument to the GetAllStatisticsForTimeInterval method describes the index of the time period to start from, and the length argument describes the number of time periods to query.
For example, to query for all statics in the last 2 hours, specify a time period of esriSTPHour, an index of 0 and a length of 2.
To query for all statistics since the server started, specify a time period of esriSTPNone, an index of 0 and a length of 1.
If you are unsure of the actual time period that the results of your query reflect, use the IServerTimeRange interface to get a report of the actual time period that your queries results reflect.
getAllStatisticsForTimeInterval
in interface IServerStatistics
event
- A com.esri.arcgis.server.esriServerStatEvent constant (in)period
- A com.esri.arcgis.server.esriServerTimePeriod constant (in)index
- The index (in)length
- The length (in)name
- The name (in)type
- The type (in)machine
- The machine (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void allowPermission(String principal, String resource, String operation) throws IOException, AutomationException
When using role-based security in ArcGIS Server, security for resources (GIS Services and folders containing GIS Services) is managed by allowing or denying a principal permissions for all operations on a resource.
Use the AllowPermissions method to allow a principal access to perform any operation on a specified resource. Once the allow permission has been granted it can be removed explicitly using the DenyPermissions method or implicitly through the continuous inheritance model.
allowPermission
in interface IPermissionsAdmin
principal
- The principal (in)resource
- The resource (in)operation
- The operation (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void denyPermission(String principal, String resource, String operation) throws IOException, AutomationException
When using role-based security in ArcGIS Server, security for resources (GIS Services and folders containing GIS Services) is managed by allowing or denying a principal permissions for all operations on a resource.
Use the DenyPermissions method to deny a principal access to perform any operation on a specified resource. Once the permission has been revoked it can be restored explicitly using the AllowPermissions method or implicitly through the continuous inheritance model.
denyPermission
in interface IPermissionsAdmin
principal
- The principal (in)resource
- The resource (in)operation
- The operation (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IEnumBSTR getAllPrincipals() throws IOException, AutomationException
Use the GetAllPrincipals method to return an enumeration over all the principals with allow/deny rules in the ArcGIS Server security model.
getAllPrincipals
in interface IPermissionsAdmin
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void cleanPermissions(String principal) throws IOException, AutomationException
Use the CleanPermissions method to delete all allow/deny rules from all resources associated with the specified principal.
cleanPermissions
in interface IPermissionsAdmin2
principal
- The principal (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setErrorReportMode(int pVal) throws IOException, AutomationException
setErrorReportMode
in interface IServerErrorReports
pVal
- A com.esri.arcgis.server.esriServerExceptionHandlingMode constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getErrorReportMode() throws IOException, AutomationException
getErrorReportMode
in interface IServerErrorReports
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setErrorReportModeSOM(int pVal) throws IOException, AutomationException
setErrorReportModeSOM
in interface IServerErrorReports
pVal
- A com.esri.arcgis.server.esriServerExceptionHandlingMode constant (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getErrorReportModeSOM() throws IOException, AutomationException
getErrorReportModeSOM
in interface IServerErrorReports
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setErrorReportType(int pVal) throws IOException, AutomationException
setErrorReportType
in interface IServerErrorReports
pVal
- The pVal (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getErrorReportType() throws IOException, AutomationException
getErrorReportType
in interface IServerErrorReports
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setErrorReportDir(String pVal) throws IOException, AutomationException
setErrorReportDir
in interface IServerErrorReports
pVal
- The pVal (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getErrorReportDir() throws IOException, AutomationException
getErrorReportDir
in interface IServerErrorReports
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setErrorReportCacheSize(int pVal) throws IOException, AutomationException
setErrorReportCacheSize
in interface IServerErrorReports
pVal
- The pVal (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getErrorReportCacheSize() throws IOException, AutomationException
getErrorReportCacheSize
in interface IServerErrorReports
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setErrorReportEnableUpload(boolean pVal) throws IOException, AutomationException
setErrorReportEnableUpload
in interface IServerErrorReports
pVal
- The pVal (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isErrorReportEnableUpload() throws IOException, AutomationException
isErrorReportEnableUpload
in interface IServerErrorReports
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setErrorReportEmailAddress(String pVal) throws IOException, AutomationException
setErrorReportEmailAddress
in interface IServerErrorReports
pVal
- The pVal (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public String getErrorReportEmailAddress() throws IOException, AutomationException
getErrorReportEmailAddress
in interface IServerErrorReports
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void setErrorReportInterval(int pVal) throws IOException, AutomationException
setErrorReportInterval
in interface IServerErrorReports
pVal
- The pVal (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public int getErrorReportInterval() throws IOException, AutomationException
getErrorReportInterval
in interface IServerErrorReports
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public void reportErrors() throws IOException, AutomationException
reportErrors
in interface IServerErrorReports
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |