IWMSPublishingPoint::get_Type

The get_Type method retrieves an enumeration value that indicates the publishing point type.

HRESULT get_Type(
  WMS_PUBLISHING_POINT_TYPE*  pVal
);

Arguments

pVal

[out] Pointer to a member of a WMS_PUBLISHING_POINT_TYPE enumeration type that indicates the publishing point type. This must be one of the following values.

Value

Description

WMS_PUBLISHING_POINT_TYPE_ON_DEMAND

Indicates that the publishing point is an on-demand publishing point.

WMS_PUBLISHING_POINT_TYPE_BROADCAST

Indicates that the publishing point is a broadcast publishing point.

WMS_PUBLISHING_POINT_TYPE_CACHE_PROXY_ON_DEMAND

Indicates that the publishing point is an on-demand publishing point that can be used for caching content.

WMS_PUBLISHING_POINT_TYPE_CACHE_PROXY_BROADCAST

Indicates that the publishing point is a broadcast publishing point that can be used as a proxy.

Return Value

If the method succeeds, it returns S_OK. If it fails, it returns an HRESULT error code.

Return code

Number

Description

E_POINTER

0x80004003

Indicates that pVal is a NULL pointer argument.

NS_E_PUBLISHING_POINT_REMOVED

0xC00D145AL

Indicates that the publishing point was already removed.

Remarks

You must specify the publishing point type when you use the IWMSPublishingPoints::Add method to create a publishing point.

Example

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

// Declare variables and interfaces.
IWMSServer              *pServer;
IWMSPublishingPoints    *pPubPoints;
IWMSPublishingPoint     *pPubPoint;

HRESULT         hr;
CComVariant     varIndex;
long            lCount;

// 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 the IWMSPublishingPoints interface
// and retrieve the total count of publishing points.
hr = pServer->get_PublishingPoints(&pPubPoints);
if (FAILED(hr)) goto EXIT;
hr = pPubPoints->get_Count(&lCount);
if (FAILED(hr)) goto EXIT;

// Retrieve information about each publishing point.
for (long x = 0; x < lCount; x++)
{
    varIndex = x;
    hr = pPubPoints->get_Item(varIndex, &pPubPoint);
    if (FAILED(hr)) goto EXIT;

    // Retrieve the type of publishing point.
    WMS_PUBLISHING_POINT_TYPE pptType;
    hr = pPubPoint->get_Type(&pptType);
    if (FAILED(hr)) goto EXIT;

    if (pptType == WMS_PUBLISHING_POINT_TYPE_ON_DEMAND)
        // TODO: Handle on-demand publishing point.
    else if (pptType == WMS_PUBLISHING_POINT_TYPE_BROADCAST)
        // TODO: Handle broadcast publishing point.
    else if (pptType == WMS_PUBLISHING_POINT_TYPE_CACHE_PROXY_ON_DEMAND)
        // TODO: Handle cache proxy on-demand publishing point.
    else if (pptType == WMS_PUBLISHING_POINT_TYPE_CACHE_PROXY_BROADCAST)
        // TODO: Handle cache proxy broadcast publishing point.

    // Release temporary COM objects.
    pPubPoint->Release();
}

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

Requirements

Header: wmsserver.h.

Library: WMSServerTypeLib.dll.

Platform: Windows Server 2003 family, Windows Server 2008 family.

See Also

Reference

IWMSPublishingPoint Interface