Class CompositeSubscription

  • All Implemented Interfaces:
    Subscription


    public final class CompositeSubscription
    extends Object
    implements Subscription
    Subscription that represents a group of Subscriptions that are unsubscribed together.

    All methods of this class are thread-safe.

    • Constructor Detail

      • CompositeSubscription

        public CompositeSubscription()
      • CompositeSubscription

        public CompositeSubscription(Subscription... subscriptions)
    • Method Detail

      • isUnsubscribed

        public boolean isUnsubscribed()
        Description copied from interface: Subscription
        Indicates whether this Subscription is currently unsubscribed.
        Specified by:
        isUnsubscribed in interface  Subscription
        Returns:
        true if this Subscription is currently unsubscribed, false otherwise
      • add

        public void add(Subscription s)
        Adds a new Subscription to this CompositeSubscription if the CompositeSubscription is not yet unsubscribed. If the CompositeSubscription is unsubscribed, add will indicate this by explicitly unsubscribing the new Subscription as well.
        Parameters:
        s - the Subscription to add
      • clear

        public void clear()
        Unsubscribes any subscriptions that are currently part of this CompositeSubscription and remove them from the CompositeSubscription so that the CompositeSubscription is empty and able to manage new subscriptions.
      • unsubscribe

        public void unsubscribe()
        Unsubscribes itself and all inner subscriptions.

        After call of this method, new Subscriptions added to CompositeSubscription will be unsubscribed immediately.

      • hasSubscriptions

        public boolean hasSubscriptions()
        Returns true if this composite is not unsubscribed and contains subscriptions.
        Returns:
        true if this composite is not unsubscribed and contains subscriptions.
        Since:
        1.0.7