com.sun.star.lib.uno.helper

## Class WeakAdapter

- java.lang.Object
- - com.sun.star.lib.uno.helper.WeakAdapter

- All Implemented Interfaces:
    XAdapter, XInterface

      public class WeakAdapter
      extends Object
      implements XAdapter

  An XAdapter implementation that holds a weak reference (java.lang.ref.WeakReference) to an object. Clients can register listener (com.sun.star.lang.XReference) which are notified when the object (the one which is kept weak) is being finalized. That is, that object is being destroyed because there are not any hard references to it.

- - ### Field Summary

    - ### Fields inherited from interface com.sun.star.uno.XAdapter

      `UNOTYPEINFO`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `WeakAdapter(Object component)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addReference(XReference xReference)` Method of com.sun.star.uno.XAdapter.
    `Object` | `queryAdapted()` Method of com.sun.star.uno.XAdapter.
    `void` | `removeReference(XReference xReference)` Method of com.sun.star.uno.XAdapter.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### WeakAdapter

          public WeakAdapter(Object component)

      Parameters:
        `component` - the object that is to be held weak

  - ### Method Detail

    - #### queryAdapted

          public Object queryAdapted()

      Method of com.sun.star.uno.XAdapter. It is called to obtain a hard reference to the object which is kept weak by this instance.
      Specified by:
        `queryAdapted` in interface `XAdapter`
      Returns:
        hard reference to the object

    - #### removeReference

          public void removeReference(XReference xReference)

      Method of com.sun.star.uno.XAdapter. Called by clients to register listener which are notified when the weak object is dying.
      Specified by:
        `removeReference` in interface `XAdapter`
      Parameters:
        `xReference` - a listener

    - #### addReference

          public void addReference(XReference xReference)

      Method of com.sun.star.uno.XAdapter. Called by clients to unregister listeners.
      Specified by:
        `addReference` in interface `XAdapter`
      Parameters:
        `xReference` - listener