Package com.saxonica.xqj

## Class Closable

- java.lang.Object
- - com.saxonica.xqj.Closable

- Direct Known Subclasses:
    `SaxonXQDataFactory`, `SaxonXQDynamicContext`, `SaxonXQForwardSequence`, `SaxonXQItem`, `SaxonXQSequence`

      public abstract class Closable
      extends java.lang.Object

  This class represents the common ability of many XQJ classes to be closed. Note that closing an object serves no useful purpose in the Saxon implementation; this complex machinery is provided merely to satisfy the XQJ interface, which is designed to accommodate a client-server implementation.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Closable()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` | Close this object
    `boolean` | `isClosed()` | Ask whether this object has been closed.
    `void` | `setClosableContainer​(Closable container)` | Set the container of this closable object.

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

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

- - ### Constructor Detail

    - #### Closable

          public Closable()

  - ### Method Detail

    - #### setClosableContainer

          public final void setClosableContainer​(Closable container)

      Set the container of this closable object. Closing the container causes this object to be treated as closed itself
      Parameters:
        `container` - the container of this closable object

    - #### close

          public final void close()

      Close this object

    - #### isClosed

          public final boolean isClosed()

      Ask whether this object has been closed.
      Returns:
        true if either the object itself or its container has been closed