com.esri.arcgis.geodatabase
Interface IWorkspace

All Superinterfaces:
Serializable
All Known Implementing Classes:
AMSWorkspace, IWorkspaceProxy, NetCDFWorkspace, RasterWorkspace, Sde3Workspace, Sde4Workspace, SqlWorkspace, VersionedWorkspace, Workspace

public interface IWorkspace
extends Serializable

Provides access to members that have information about the workspace.

Remarks

A Workspace is a container of spatial and non-spatial datasets such as feature classes, raster datasets, and tables. It provides methods to instantiate existing datasets and to create new datasets. Workspaces are classified into types specified by the esriWorkspaceType enumerator; FileSystemWorkspace, LocalDatabaseWorkspace, and RemoteDatabaseWorkspace.

Shapefiles and ArcGIS for Desktop Advanced workspaces are examples of FileSystemWorkspace. A personal geodatabase stored in an Access or a File Geodatabase is an example of a LocalDatabaseWorkspace. A geodatabase stored in an RDBMS such as Oracle, DB2, SqlServer, or Informix and accessed via ArcSDE is an example of a RemoteDatabaseWorkspace.

The WorkspaceName for a workspace can be persisted, for example, in a map document. An application can call the Open method on the workspace name after loading it from persistent storage in order to connect to and get an object reference to the workspace. A WorkspaceName name object can be returned from a workspace through the use of IDataset.FullName.

The IWorkspace interface provides methods for accessing various properties of a workspace, such as its connection properties, and the collection of datasets it contains.

Product Availability

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

IWorkspaceFactory rasWkspFactory = new RasterWorkspaceFactory();

IWorkspace wksp = new RasterWorkspace(rasWkspFactory.openFromFile(aPath, 0));


Method Summary
 void executeSQL(String sqlStmt)
          Executes the specified SQL statement.
 boolean exists()
          Checks if the workspace exists.
 IPropertySet getConnectionProperties()
          The connection properties of the workspace.
 IEnumDatasetName getDatasetNames(int datasetType)
          The DatasetNames in the workspace.
 IEnumDataset getDatasets(int datasetType)
          The datasets in the workspace.
 String getPathName()
          The file system full path of the workspace.
 int getType()
          The Type of the Workspace.
 IWorkspaceFactory getWorkspaceFactory()
          The factory that created the workspace.
 boolean isDirectory()
          TRUE if the workspace is a file system directory.
 

Method Detail

getConnectionProperties

IPropertySet getConnectionProperties()
                                     throws IOException,
                                            AutomationException
The connection properties of the workspace.

Remarks

The ConnectionProperties property of a workspace returns the set of named connection properties for this workspace.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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.

getWorkspaceFactory

IWorkspaceFactory getWorkspaceFactory()
                                      throws IOException,
                                             AutomationException
The factory that created the workspace.

Remarks

The WorkspaceFactory property can be used to get a reference back to the workspace factory for this workspace.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getDatasets

IEnumDataset getDatasets(int datasetType)
                         throws IOException,
                                AutomationException
The datasets in the workspace.

Product Availability

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

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

getDatasetNames

IEnumDatasetName getDatasetNames(int datasetType)
                                 throws IOException,
                                        AutomationException
The DatasetNames in the workspace.

Product Availability

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

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

getPathName

String getPathName()
                   throws IOException,
                          AutomationException
The file system full path of the workspace.

Remarks

If a remote workspace is opened using connection properties, this will be empty.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

getType

int getType()
            throws IOException,
                   AutomationException
The Type of the Workspace.

Remarks

See esriWorkspaceType for information on the types of workspaces.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Returns:
A com.esri.arcgis.geodatabase.esriWorkspaceType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isDirectory

boolean isDirectory()
                    throws IOException,
                           AutomationException
TRUE if the workspace is a file system directory.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

exists

boolean exists()
               throws IOException,
                      AutomationException
Checks if the workspace exists.

Remarks

This method can be used with workspaces from file-based data sources to detect if they've been deleted by another application. For example, a shapefile workspace is a directory and can be deleted while the workspace is open.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

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

executeSQL

void executeSQL(String sqlStmt)
                throws IOException,
                       AutomationException
Executes the specified SQL statement.

Remarks

The ExecuteSQL method can be used to send an arbitrary SQL statement to the underlying database for execution. The statement can be any DDL (data definition language) or DML (data manipulation language) statement but can not return any result sets. The syntax for the SQL is as required by the underlying database. The workspace supports an optional ISQLSyntax interface that provides information to applications on aspects of the SQL Syntax for the underlying database.

To determine if a workspace supports the ExecutesSQL method, an application can check the value of the canExecuteSQLworkspace property via the optional IWorkspaceProperties interface. In general, this method is only supported on local and remote database workspaces.

Product Availability

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

Supported Platforms

Windows, Solaris, Linux

Parameters:
sqlStmt - The sqlStmt (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.