IWMSDataContainerVersion Interface

banner art

Previous Next

IWMSDataContainerVersion Interface

The IWMSDataContainerVersion interface contains methods that enable you to specify and retrieve content information that can be used when checking whether a cached item is current. The following list provides an overview of this process:

  1. The client requests content that is stored in a file on both a cache server and the origin server.
  2. The cache server calls IWMSCacheProxy::QueryCache on the first enabled plug-in.
  3. The plug-in determines whether the content is cached. Assume a cache hit.
  4. The plug-in creates an IWMSDataContainerVersion object, retrieves information about the content on the cache server, and specifies the data members in the IWMSDataContainerVersion object.
  5. The plug-in checks the expiration date on the cached content. If it has not expired, the plug-in can call IWMSCacheProxyCallback::OnQueryCache and direct the server to stream the content. If it has expired, the plug-in calls IWMSCacheProxyServer::CompareContentInformation to determine whether the content is current.
  6. If the plug-in calls CompareContentInformation, the cache server calls the origin server to retrieve content information.
  7. The origin server calls IWMSDataSourcePlugin::GetDataContainerVersion on the appropriate data source plug-in, as determined by the data type associated with the physical URL of the requested content.
  8. The data source plug-in creates an IWMSDataContainerVersion object, retrieves information about the content on the origin server, and specifies the data members in the IWMSDataContainerVersion object. The origin server sends the information, including a pointer to the IWMSDataContainerVersion object, back to the cache server in a cache content information context.
  9. The cache server calls IWMSDataContainerVersion::Compare to compare the contents of the two IWMSDataContainerVersion objects.
  10. The cache server calls IWMSCacheProxyServerCallback::OnCompareContentInformation to indicate whether the content is current.

The IWMSDataContainerVersion interface is implemented by the server.

  • Note   This interface is available only on Windows Server 2003, Enterprise Edition; Windows Server 2003, Datacenter Edition; and Windows Server 2008.

In addition to the methods inherited from IUnknown, the IWMSDataContainerVersion interface exposes the following methods.

Method Description
Compare Compares two IWMSDataContainerVersion interfaces to determine whether they are equal.
GetCacheFlags Retrieves flags that indicate whether content can be cached, proxied, or split.
GetContentSize Retrieves the size of the content in bytes.
GetEntityTag Retrieves an entity tag, given an index number.
GetEntityTagCount Retrieves the number of entity tags.
GetExpirationTime Retrieves the content expiration date.
GetLastModifiedTime Retrieves the time at which the content was last modified.
SetCacheFlags Specifies flags that indicate whether content can be cached, proxied, or split.
SetContentSize Specifies the size of the content in bytes.
SetEntityTag Specifies an entity tag.
SetExpirationTime Specifies the content expiration date.
SetLastModifiedTime Specifies the time at which the content was last modified.

See Also

Previous Next