Application Programming Interface Guide > Web Services Operations > Operations Reference > getIntrospectableResourceIdsTask
 
getIntrospectableResourceIdsTask
Create a server task to fetch all resource identifiers available for a given data source.
The first time this is called, the underlying data source is queried for its completed list of resources available within the data source. This information is cached so that future invocations of this using the same data source returns the contents of the cache rather than querying the data source. To clear this cache, use clearIntrospectableResourceIdCache. The results include a lastUpdate field that can be used to help determine whether clearing the resource identifier cache is necessary.
The list of available resources within a data source depends upon the user’s access privileges within the data source.
If dsContainerId is provided, the search for introspectable resources starts at that location. If it is unset, the search starts at the data source root.
If recurse is TRUE or unset, the search for introspectable resources is performed recursively throughout the data source starting at the given dsContainerId, or at the data source root if dsContainerId is unset. If recurse is FALSE, only the immediate children of the dsContainerId or data source root are found.
The user name associated with creating the cache is placed in the cache as well. If the data source is non-dynamic the user name is drawn from the data source connection parameters. If the data source is dynamic, it is drawn from the TDV user name and domain.
Each data source has one primary resource identifier cache. If the user name associated with this call differs from the primary cache, the primary cache is marked for expiration. When the expiration period is over, the cache is cleared. This period can be modified using a TDV Server attribute. If the user name associated with the call matches a cache that is currently marked for expiration, the expiration is canceled and it becomes the primary cache. If no cache with a matching user name exists, a new cache is created by querying the data source.
This operation returns a taskId which can be used to get results using getIntrospectableResourceIdsResult or canceled used cancelServerTask.
This operation returns the total number of known resource identifiers in the totalResults element. The totalResults element does not exist until the full total is known. If this number is not known or only partial results are available, this element is empty.
If the TDV session that invokes this operation closes before the task is completed, the task is terminated.
This operation must be run within an explicit transaction so that the taskId can be used in successive calls to getIntrospectableResourceIdsResult.
Location
/services/webservices/system/admin/resource/operations/
Request Elements
path: The path of the data source.
attributes (optional): List of data source type specific attributes. The specific list of supported attributes varies by data source type. (See getDataSourceAttributeDefs.) Sets the specified attributes, but does not alter the value of unspecified attributes. See Attributes Element.
dsContainerId (optional): A container within the data source for which to find introspectable resources. If unset, the data source root path is used.
path: Path to the container.
type: Container type. See TDV Resource Types and Subtypes.
subtype: Container subtype. See TDV Resource Types and Subtypes.
recurse (optional): If TRUE or unset, the search for introspectable resources is performed recursively throughout the data source starting at the given dsContainerId, or at the data source root if dsContainerId is unset. If recurse is FALSE, only the immediate children of the dsContainerId or data source root are found.
Response Elements
taskId: The ID of the server task performing the work.
totalResults (optional): If known, the total result set size. Otherwise this element does not exist.
Faults
DataSourceError: If a data source connection cannot be established or if a data source request returns an error.
IllegalArgument: If the path or dsPath is malformed.
IllegalState: If the data source is disabled.
NotFound: If the data source or any portion of the path to the data source does not exist.
NotFound: If dsPath does not exist within the data source.
Security: If the user does not have READ access on all items in path other than the last one.
Security: If the user does not have READ access to the last item in path.
Security: If the user does not have the ACCESS_TOOLS right.