1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//! # Subscribable module.
//!
//! This module contains the [`Subscribable`] trait, which is used to implement
//! objects that can deliver real-time updates from the [`PubNub`] network.
//!
//! [`PubNub`]: https://www.pubnub.com
use crate::;
/// Types of subscribable objects.
///
/// Subscribable can be separated by their place in subscribe REST API:
/// * `URI path` - channel-like objects which represent single entity
/// ([`Channel`], [`ChannelMetadata`], [`UserMetadata`])
/// * `query parameter` - entities which represent group of entities
/// ([`ChannelGroup`])
/// Subscribable entities' trait.
///
/// Only entities that implement this trait can subscribe to their real-time
/// events.