Package org.javacord.api.entity.channel
Interface VoiceChannel
-
- All Superinterfaces:
Channel
,ChannelAttachableListenerManager
,ChannelSpecialization
,DiscordEntity
,Specializable<ChannelSpecialization>
,Updatable
,UpdatableFromCache
,VoiceChannelAttachableListenerManager
- All Known Subinterfaces:
PrivateChannel
,ServerStageVoiceChannel
,ServerVoiceChannel
public interface VoiceChannel extends Channel, VoiceChannelAttachableListenerManager
This class represents a voice channel.
-
-
Method Summary
All Methods Instance Methods Default Methods Modifier and Type Method Description default java.util.Optional<? extends VoiceChannel>
getCurrentCachedInstance()
Gets an updated instance of this entity from the cache.default java.util.concurrent.CompletableFuture<? extends VoiceChannel>
getLatestInstance()
Gets an updated instance of this entity from the cache or from Discord directly.-
Methods inherited from interface org.javacord.api.entity.channel.Channel
asCategorizable, asChannelCategory, asPrivateChannel, asRegularServerChannel, asServerChannel, asServerForumChannel, asServerStageVoiceChannel, asServerTextChannel, asServerThreadChannel, asServerVoiceChannel, asTextChannel, asVoiceChannel, canSee, canYouSee, getType
-
Methods inherited from interface org.javacord.api.listener.channel.ChannelAttachableListenerManager
addChannelAttachableListener, getChannelAttachableListeners, removeChannelAttachableListener, removeListener
-
Methods inherited from interface org.javacord.api.entity.DiscordEntity
getApi, getCreationTimestamp, getId, getIdAsString
-
Methods inherited from interface org.javacord.api.util.Specializable
as
-
Methods inherited from interface org.javacord.api.listener.channel.VoiceChannelAttachableListenerManager
addVoiceChannelAttachableListener, getVoiceChannelAttachableListeners, removeListener, removeVoiceChannelAttachableListener
-
-
-
-
Method Detail
-
getCurrentCachedInstance
default java.util.Optional<? extends VoiceChannel> getCurrentCachedInstance()
Description copied from interface:UpdatableFromCache
Gets an updated instance of this entity from the cache. This is for example necessary if an instance got invalid by a reconnect to Discord which invalidates all existing instances which means they do not get any further updates from Discord applied. Due to that, references to instances should usually not be held for an extended period of time. If they are, this method can be used to retrieve the current instance from the cache, that gets updates from Discord, in case this one was invalidated.This method returns the currently cached entity, or an empty
Optional
if the entity is not cached any longer, for example because it was deleted or the message was thrown out of the cache.- Specified by:
getCurrentCachedInstance
in interfaceChannel
- Specified by:
getCurrentCachedInstance
in interfaceUpdatableFromCache
- Returns:
- The current cached instance.
-
getLatestInstance
default java.util.concurrent.CompletableFuture<? extends VoiceChannel> getLatestInstance()
Description copied from interface:Updatable
Gets an updated instance of this entity from the cache or from Discord directly. This is for example necessary if an instance got invalid by a reconnect to Discord which invalidates all existing instances which means they do not get any further updates from Discord applied. Due to that, references to instances should usually not be held for an extended period of time. If they are, this method can be used to retrieve the current instance from the cache if present or from Discord directly.This method returns the currently cached entity if present, or request the entity from Discord if it is not cached or not permanently cached. If the entity is a fully cached entity and is not in the cache any longer, for example because it was deleted or the message was thrown out of the cache, the
CompletableFuture
completes exceptionally with aNoSuchElementException
. If a request to Discord is made, the according remote call exception will be used to complete theCompletableFuture
exceptionally.- Specified by:
getLatestInstance
in interfaceChannel
- Specified by:
getLatestInstance
in interfaceUpdatable
- Specified by:
getLatestInstance
in interfaceUpdatableFromCache
- Returns:
- The current cached instance.
-
-