001package com.pusher.client.channel;
002
003import java.util.Set;
004
005/**
006 * An object that represents a Pusher presence channel. An implementation of
007 * this interface is returned when you call
008 * {@link com.pusher.client.Pusher#subscribePresence(String)} or
009 * {@link com.pusher.client.Pusher#subscribePresence(String, PresenceChannelEventListener, String...)}
010 * .
011 */
012public interface PresenceChannel extends PrivateChannel {
013    /**
014     * Gets a set of users currently subscribed to the channel.
015     *
016     * @return The users.
017     */
018    Set<User> getUsers();
019
020    /**
021     * Gets the user that represents the currently connected client.
022     *
023     * @return A user.
024     */
025    User getMe();
026}