com.esri.arcgis.geodatabase
Interface IWorkspaceFactorySchemaCache

All Superinterfaces:
Serializable
All Known Implementing Classes:
SdeWorkspaceFactory

public interface IWorkspaceFactorySchemaCache
extends Serializable

Manages Geodatabase workspace schema caches.

Description

The schema cache is a cached snapshot of the geodatabase system tables (often referred to as the geodatabase schema). In an enterprise environment the geodatabase system tables (geodatabase schema) are in constant use by ArcGIS. Caching this schema locally can reduce database roundtrips by using the locally cached representation of the geodatabase schema.

Remarks

It is most common to use the schema cache when the geodatabase schema is in heavy use. In ArcGIS this is most common when opening a large number of datasets. For instance internally, ArcGIS uses the schema cache when opening all the layers in a map document. The schema cache is most beneficial when working with large static data models where geodatabase objects like tables, fields, domains and relationships are well defined and do not change.
To get the greatest benefit from the schema cache the cache should be filled prior to opening any datasets. Once filled any calls to Open methods including IName.Open will be satisfied by the active schema cache and therefore optimized.

Product Availability

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


Method Summary
 void disableAllSchemaCaches()
          Disable the schema caches of all open workspaces.
 void disableSchemaCache(IWorkspace workspace)
          Disable the schema cache for a specific workspace.
 void disableSchemaCaching()
          All new workspaces handed out by the factory will not have schema caching enabled.
 void enableAllSchemaCaches()
          Enable the schema caches of all open workspaces.
 void enableSchemaCache(IWorkspace workspace)
          Enable the schema cache for a specific workspace.
 void enableSchemaCaching()
          All new workspaces handed out by the factory will have schema caching enabled.
 boolean isAnySchemaCacheStale()
          Checks all current schema caches for staleness.
 boolean isSchemaCacheStale(IWorkspace workspace)
          Checks a specific schema cache for staleness.
 void refreshAllSchemaCaches()
          Refreshes all current schema caches.
 void refreshSchemaCache(IWorkspace workspace)
          Refreshes the schema cache for a specific workspace.
 

Method Detail

enableSchemaCaching

void enableSchemaCaching()
                         throws IOException,
                                AutomationException
All new workspaces handed out by the factory will have schema caching enabled.

Description

This method will enable chaching on any IWorkspace passed out by the workspace factory.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

disableSchemaCaching

void disableSchemaCaching()
                          throws IOException,
                                 AutomationException
All new workspaces handed out by the factory will not have schema caching enabled.

Description

This method disables schema caching on the workspace factory.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

enableSchemaCache

void enableSchemaCache(IWorkspace workspace)
                       throws IOException,
                              AutomationException
Enable the schema cache for a specific workspace.

Description

The EnableSchemaCache method will enable the schema cache for one workspace.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
workspace - A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

enableAllSchemaCaches

void enableAllSchemaCaches()
                           throws IOException,
                                  AutomationException
Enable the schema caches of all open workspaces.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

disableSchemaCache

void disableSchemaCache(IWorkspace workspace)
                        throws IOException,
                               AutomationException
Disable the schema cache for a specific workspace.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
workspace - A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

disableAllSchemaCaches

void disableAllSchemaCaches()
                            throws IOException,
                                   AutomationException
Disable the schema caches of all open workspaces.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isSchemaCacheStale

boolean isSchemaCacheStale(IWorkspace workspace)
                           throws IOException,
                                  AutomationException
Checks a specific schema cache for staleness.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
workspace - A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
Returns:
The isStale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isAnySchemaCacheStale

boolean isAnySchemaCacheStale()
                              throws IOException,
                                     AutomationException
Checks all current schema caches for staleness.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Returns:
The isStale
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

refreshSchemaCache

void refreshSchemaCache(IWorkspace workspace)
                        throws IOException,
                               AutomationException
Refreshes the schema cache for a specific workspace.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
workspace - A reference to a com.esri.arcgis.geodatabase.IWorkspace (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

refreshAllSchemaCaches

void refreshAllSchemaCaches()
                            throws IOException,
                                   AutomationException
Refreshes all current schema caches.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.