_IUccPublicationManagerEvents.OnPublicationRequired Method

This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.

Raised when already published category instances must be republished.

Namespace: Microsoft.Office.Interop.UccApi
Assembly: Microsoft.Office.Interop.UccApi (in microsoft.office.interop.uccapi.dll)

Syntax

'Declaration
Sub OnPublicationRequired ( _
    pEventSource As IUccPublicationManager, _
    pEventData As Object _
)
void OnPublicationRequired (
    IUccPublicationManager pEventSource,
    Object pEventData
)
void OnPublicationRequired (
    IUccPublicationManager^ pEventSource, 
    Object^ pEventData
)
void OnPublicationRequired (
    IUccPublicationManager pEventSource, 
    Object pEventData
)
function OnPublicationRequired (
    pEventSource : IUccPublicationManager, 
    pEventData : Object
)

Parameters

  • pEventSource
    A value of the IUccPublicationManager* (IUccPublicationManager, for a .NET application) type. This specifies the publication manager raising this event.
  • pEventData
    A value of the IUnknown* (object, for a .NET application) type. This is currently set to NULL.

Remarks

This feature is not currently implemented.

Win32 COM/C++ Syntax

HRESULT OnPublicationRequired
(
   IUccPublicationManager* pEventSource,
   IUnknown* pEventData
);

Note

In a Win32 application, the return value of a method or property is always an HRESULT value indicating the status of the call to the interface member. Any result of the operation is returned as a parameter marked with the [out, retval] attribute. In contrast, in a .NET application the HRESULT value indicating an error condition is returned as a COM exception and the [out, retval] parameter becomes the return value. For the UCC API-defined HRESULT values, see Trace and Handle Errors in Unified Communications Client API.

Example

The following example handles the OnPublicationRequired event by iterating on a class instantiation level cache (private List<IUccCategoryInstance> _publishedCategoryInstances;). Newly published category instances are added to this cache at the time of original publication. This example uses the cache to re-publish the instances.

Note

To compile this example, you must declare the publishedCategoryInstances object as a List<IUccCategoryInstances>

/// <summary>
/// Raised when client must re-publish all
/// previously published category instances
/// </summary>
/// <param name="pEventSource">IUccPublicationManager endpoint publication manager</param>
/// <param name="pEventData">object event data</param>
void _IUccPublicationManagerEvents.OnPublicationRequired(
    IUccPublicationManager pEventSource, 
    object pEventData)
{
    IUccPublication rePublication = pEventSource.CreatePublication();

    //iterate cache of previously published category instance
    foreach (IUccCategoryInstance instanceToPublish in this._publishedCategoryInstances)
    {
        rePublication.AddPublishableCategoryInstance(instanceToPublish);
    }
    UCC_Advise<_IUccPublicationEvent>(
        rePublication, 
        this);
    rePublication.Publish(null);
}

Thread Safety

All public static (Shared in Visual Basic) members of this type are thread-safe. Instance members are not guaranteed to be thread-safe.

Platforms

Development Platforms

Windows XP Professional with Service Pack 2 (SP2), Windows Server 2000 with Service Pack 4, Windows Server 2003, Windows Vista Ultimate Edition, Windows Vista Business Edition, Windows Vista Enterprise Edition

Target Platforms

See Also

Reference

_IUccPublicationManagerEvents Interface
_IUccPublicationManagerEvents Members
Microsoft.Office.Interop.UccApi Namespace