Package io.getstream.chat.android.models
Class ChannelData
-
- All Implemented Interfaces:
@Immutable() public final class ChannelDataA class that only stores the channel data and not the channel state that changes a lot (for example messages, watchers, etc.).
-
-
Field Summary
Fields Modifier and Type Field Description private final Stringidprivate final Stringtypeprivate final Stringnameprivate final Stringimageprivate final UsercreatedByprivate final Integercooldownprivate final Booleanfrozenprivate final DatecreatedAtprivate final DateupdatedAtprivate final DatedeletedAtprivate final IntegermemberCountprivate final Stringteamprivate final Map<String, Object>extraDataprivate final Set<String>ownCapabilitiesprivate final Membermembershipprivate final DraftMessagedraftprivate final IntegermessageCountprivate final PushPreferencepushPreferenceprivate final List<String>filterTagsprivate final DatelastMessageAtprivate final Stringcid
-
Constructor Summary
Constructors Constructor Description ChannelData(String id, String type, String name, String image, User createdBy, Integer cooldown, Boolean frozen, Date createdAt, Date updatedAt, Date deletedAt, Integer memberCount, String team, Map<String, Object> extraData, Set<String> ownCapabilities, Member membership, DraftMessage draft, Integer messageCount, PushPreference pushPreference, List<String> filterTags, Date lastMessageAt)ChannelData(Channel channel, Set<String> currentOwnCapabilities)Creates a ChannelData entity from a Channel object.
-
Method Summary
Modifier and Type Method Description final StringgetId()final StringgetType()final StringgetName()final StringgetImage()final UsergetCreatedBy()final IntegergetCooldown()final BooleangetFrozen()final DategetCreatedAt()final DategetUpdatedAt()final DategetDeletedAt()final IntegergetMemberCount()final StringgetTeam()final Map<String, Object>getExtraData()final Set<String>getOwnCapabilities()final MembergetMembership()final DraftMessagegetDraft()final IntegergetMessageCount()final PushPreferencegetPushPreference()final List<String>getFilterTags()final DategetLastMessageAt()final StringgetCid()The channel id in the format messaging:123. final ChanneltoChannel(List<Message> messages, List<Message> cachedLatestMessages, List<Member> members, List<ChannelUserRead> reads, List<User> watchers, Integer watcherCount, Boolean insideSearch, Date channelLastMessageAt)final ChanneltoChannel(List<Message> messages, List<Message> cachedLatestMessages, List<Member> members, List<ChannelUserRead> reads, List<User> watchers, Integer watcherCount, Boolean insideSearch)Converts a ChannelData entity to a Channel based on additional information. final BooleanisUserAbleTo(String channelCapability)Checks if the user has specific capabilities. -
-
Constructor Detail
-
ChannelData
ChannelData(String id, String type, String name, String image, User createdBy, Integer cooldown, Boolean frozen, Date createdAt, Date updatedAt, Date deletedAt, Integer memberCount, String team, Map<String, Object> extraData, Set<String> ownCapabilities, Member membership, DraftMessage draft, Integer messageCount, PushPreference pushPreference, List<String> filterTags, Date lastMessageAt)
- Parameters:
id- Channel's unique ID.type- Type of the channel.name- Channel's name.image- Channel's image.createdBy- Creator of the channel.cooldown- Cooldown period after sending each message in seconds.frozen- Whether channel is frozen or not.createdAt- Date/time of creation.updatedAt- Date/time of the last update.deletedAt- Date/time of deletion.memberCount- Number of members in the channel.team- Team the channel belongs to (multi-tenant only).extraData- A map of custom fields for the channel.ownCapabilities- Channel's capabilities available for the current user.membership- Represents relationship of the current user to the channel.draft- The current user's draft message for this channel, if any.messageCount- The total number of messages in the channel, if known.pushPreference- The current user's push notification preference for this channel, if set.filterTags- The list of filter tags applied to the channel.lastMessageAt- Date/time of the last message sent.
-
ChannelData
ChannelData(Channel channel, Set<String> currentOwnCapabilities)
Creates a ChannelData entity from a Channel object. Keeps existing ChannelData.ownCapabilities if the Channel object comes with an empty set of capabilities.
- Parameters:
channel- The Channel object to convert.currentOwnCapabilities- Set of existing own capabilities stored for the Channel.
-
-
Method Detail
-
getCreatedBy
final User getCreatedBy()
-
getCooldown
final Integer getCooldown()
-
getCreatedAt
final Date getCreatedAt()
-
getUpdatedAt
final Date getUpdatedAt()
-
getDeletedAt
final Date getDeletedAt()
-
getMemberCount
final Integer getMemberCount()
-
getExtraData
final Map<String, Object> getExtraData()
-
getOwnCapabilities
final Set<String> getOwnCapabilities()
-
getMembership
final Member getMembership()
-
getDraft
final DraftMessage getDraft()
-
getMessageCount
final Integer getMessageCount()
-
getPushPreference
final PushPreference getPushPreference()
-
getFilterTags
final List<String> getFilterTags()
-
getLastMessageAt
final Date getLastMessageAt()
-
toChannel
@Deprecated(message = "Use Channel.toChannelData instead", replaceWith = @ReplaceWith(expression = "Channel.toChannelData(messages, cachedLatestMessages, members, reads, watchers, watcherCount, insideSearch)")) final Channel toChannel(List<Message> messages, List<Message> cachedLatestMessages, List<Member> members, List<ChannelUserRead> reads, List<User> watchers, Integer watcherCount, Boolean insideSearch, Date channelLastMessageAt)
-
toChannel
final Channel toChannel(List<Message> messages, List<Message> cachedLatestMessages, List<Member> members, List<ChannelUserRead> reads, List<User> watchers, Integer watcherCount, Boolean insideSearch)
Converts a ChannelData entity to a Channel based on additional information.
- Parameters:
messages- The list of channel's messages.members- The list of channel's members.reads- The list of read states.watchers- The list of channel's watchers.watcherCount- Number of channel watchers.insideSearch- Whether the channel is inside a search result.- Returns:
A Channel object.
-
isUserAbleTo
final Boolean isUserAbleTo(String channelCapability)
Checks if the user has specific capabilities.
You can find a list of capabilities in ChannelCapabilities.
- Parameters:
channelCapability- The specific ability we are checking against.
-
-
-
-