Represents a client cache of the immutable metadata (class descriptions and their associated property descriptions) for all metadata objects accessed during the life of a given server connection. Using a local metadata cache decreases the time needed to access an object's immutable metadata, therefore improving the performance of client applications. Note that any independent objects that are referenced by a class description, such as choice lists, are not cached.

Only a single, default metadata cache is available for a given server connection, which you can access by calling GetDefaultInstance() on the Factory.MetadataCache class. This cache is also used internally. Metadata caching is enabled by default; to disable it, set the ConfigurationParameter.CLIENT_METADATA_CACHE instance to Boolean.FALSE.


The following tables list the members exposed by IMetadataCache.

Public Methods

 NameDescription
Public methodDescribedIsOfClassReturns whether a class description describes the class or subclass identified by a given class name or GUID string (true) or not (false). Class descriptions are fetched from the server and added to the metadata cache as needed.
Public methodGetClassDescriptionOverloaded. Returns the class description for a given object. If the class description is not already resident, this method fetches it from the server and adds it to the metadata cache.
Public methodGetClassDescriptionsReturns zero or more class descriptions for a given scope and the classes specified by a class identities array, which can contain both class names and GUID strings. Class descriptions not already resident are fetched from the server and added to the metadata cache. If a failure occurs while fetching a class description, the entire operation will fail. The returned array is the same size and in the same order as the class identities array; it is never null and its members are always valid class descriptions. Potentially, this operation is much more efficient than retrieving individual class descriptions because any non-resident class descriptions are fetched from the server in a single batch operation.
Public methodObjectIsOfClassReturns whether an object is instantiated from a class or subclass identified by a given class name or GUID string (true) or not (false). Class descriptions are fetched from the server and added to the metadata cache as needed.
Top

See Also