LibreOffice LibreOffice 25.2 SDK API Reference

Public Member Functions | List of all members
XWeak Interface Referencepublished

the server-side interface to a weak object. More...

`import"XWeak.idl";`

Inheritance diagram for XWeak:

## Public Member Functions
com::sun::star::uno::XAdapter | queryAdapter ()
| queries the weak adapter. More...
Public Member Functions inherited from XInterface
any | queryInterface ([in] type aType)
| queries for a new interface to an existing UNO object. More...
void | acquire ()
| increases the reference counter by one. More...
void | release ()
| decreases the reference counter by one. More...

## Detailed Description

the server-side interface to a weak object.

This interface is proxy to the adapted object. In order to make it possible to have weak references to objects, the XAdapter interface must be implemented to provide a weak adapter for the clients.

#### Concept of weak referencing:

This module specifies the interfaces for implementing and using weak references.

The sense of weak references is to hold a reference to an object without affecting the lifetime of the object. That means that a weak reference may become invalid, at any time, if the referenced object dies.

The following interfaces describe one way to handle weak references by providing a weak adapter. The weak object has to provide this adapter if anyone wants to hold a weak reference. To separate their lifetimes, the adapter and the original object must not share the same reference counter. The weak reference is in fact only a hard reference to the adapter, which knows - but does not hold - the original object. That means that the implementation and synchronization of weak referencing is the responsibility of the object. The following interfaces are involved in the concept of weak referencing:

XWeak

  is the server-side interface of the referred object. This referred object must support the XAdapter interface.

XReference

  is a client-side interface which must be implemented by the holder of any weak reference. It is used for notification when the adapted object dies.

Developers Guide
  Professional UNO - Lifetime of UNO objects
  Writing UNO Components - XWeak
  Professional UNO - C++ - Using Weak References
  Writing UNO Components - Core Interfaces to Implement

## Member Function Documentation

## ◆ queryAdapter()

com::sun::star::uno::XAdapter queryAdapter | ( |  | ) |

queries the weak adapter.

It is important that the adapter must know, but not hold the adapted object. If the adapted object dies, all references to the adapter have to be notified to release the adapter.

The documentation for this interface was generated from the following file:

- com/sun/star/uno/XWeak.idl