IWMSAdminNetworkDataSourcePlugin Interface

banner art

Previous Next

IWMSAdminNetworkDataSourcePlugin Interface

The IWMSAdminNetworkDataSourcePlugin interface is exposed by the WMS Network Data Source plug-in. This interface allows you to control how data is received over different network protocols.

In addition to the methods inherited from IDispatch, the IWMSAdminNetworkDataSourcePlugin interface exposes the following methods.

Method Description
AddUDPPortRange Adds a range of UDP/TCP port numbers that can be used by the data source plug-in to receive data.
DeleteAllUDPPortRanges Removes all of the UDP/TCP port number ranges that can be used by the data source plug-in to receive data.
get_BufferingTime Retrieves the amount of time that the plug-in buffers data before sending it along the data path.
get_NumProtocolsSupported Retrieves the number of networking protocols supported by the plug-in.
get_NumUDPPortRanges Retrieves the number of UDP/TCP port number ranges that can be used by the data source plug-in to receive data.
get_ProxyHostName Retrieves the name of the proxy server.
get_ProxyPassword Retrieves a Boolean value indicating whether a proxy password has been set for a particular protocol.
get_ProxyPort Retrieves the port number to use for a particular protocol to receive content from an upstream proxy server.
get_ProxySettings Retrieves an enumeration value indicating the proxy mode for a particular protocol.
get_ProxyUserName Retrieves a user name that can be sent to a proxy server in response to an authentication challenge.
get_SupportedProtocolName Retrieves the name of a specific protocol from a list of supported protocols.
get_TCPEnabled Retrieves a Boolean value indicating whether the data source plug-in can use TCP when selecting a streaming protocol.
get_UDPEnabled Retrieves a Boolean value indicating whether the data source plug-in can use UDP when selecting a streaming protocol.
get_UDPPortRangeLowerBound Retrieves the lower bound of a specific UDP port range.
get_UDPPortRangeUpperBound Retrieves the upper bound of a specific UDP port range.
put_BufferingTime Specifies the amount of time that the plug-in buffers data before sending it along the data path.
put_TCPEnabled Specifies a Boolean value indicating whether the data source plug-in can use TCP when selecting a streaming protocol.
put_UDPEnabled Specifies a Boolean value indicating whether the data source plug-in can use UDP when selecting a streaming protocol.
SetProxyCredentials Specifies the user name and password that can be used to connect to a proxy.
SetProxyHostName Specifies the name of the proxy server.
SetProxyPort Specifies the port number used for streaming content to the proxy server.
SetProxySettings Specifies an enumeration value indicating the proxy mode for a particular protocol.

Example Code

The following example illustrates how to retrieve a pointer to an IWMSAdminNetworkDataSourcePlugin interface.

#include <windows.h>
#include <atlbase.h>    // Includes CComVariant.

// To access system plug-in interfaces, the
// entire type library must be imported as shown.
#import "WMSServerTypeLib.dll" no_namespace named_guids \
                               raw_interfaces_only

// Declare variables and interfaces.
IWMSServer                       *pServer;
IWMSPlugins                      *pPlugins;
IWMSPlugin                       *pPlugin;
IDispatch                        *pDispatch;
IWMSAdminNetworkDataSourcePlugin *pAdminNetDataSrc;

HRESULT         hr;
CComVariant     varIndex;

// Initialize the COM library and retrieve a pointer
// to an IWMSServer interface.
hr = CoInitialize(NULL);
hr = CoCreateInstance(CLSID_WMSServer,
                      NULL,
                      CLSCTX_ALL,
                      IID_IWMSServer,
                      (void **)&pServer);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to an IWMSPlugins interface
// containing data source plug-ins.
hr = pServer->get_DataSources(&pPlugins);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the IWMSPlugin interface
// of the plug-in to be configured.
varIndex = "WMS Network Data Source";
hr = pPlugins->get_Item(varIndex, &pPlugin);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the custom interface
// of the plug-in.
hr = pPlugin->get_CustomInterface(&pDispatch);
if (FAILED(hr)) goto EXIT;

// Query the specific administration interface
// for the plug-in.
hr = pDispatch->QueryInterface(IID_IWMSAdminNetworkDataSourcePlugin,
                              (void **)&pAdminNetDataSrc);
if (FAILED(hr)) goto EXIT;

EXIT:
    // TODO: Release temporary COM objects and uninitialize COM.

See Also

Previous Next