Class GetyarnAudioSourceManager

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void configureBuilder​(java.util.function.Consumer<org.apache.http.impl.client.HttpClientBuilder> configurator)  
      void configureRequests​(java.util.function.Function<org.apache.http.client.config.RequestConfig,​org.apache.http.client.config.RequestConfig> configurator)  
      AudioTrack decodeTrack​(AudioTrackInfo trackInfo, java.io.DataInput input)
      Decodes an audio track from the encoded format encoded with encodeTrack().
      void encodeTrack​(AudioTrack track, java.io.DataOutput output)
      Encodes an audio track into the specified output.
      HttpInterface getHttpInterface()  
      java.lang.String getSourceName()
      Every source manager implementation should have its unique name as it is used to determine which source manager should be able to decode a serialized audio track.
      boolean isTrackEncodable​(AudioTrack track)
      Returns whether the specified track can be encoded.
      AudioItem loadItem​(AudioPlayerManager manager, AudioReference reference)
      Returns an audio track for the input string.
      void shutdown()
      Shut down the source manager, freeing all associated resources and threads.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • GetyarnAudioSourceManager

        public GetyarnAudioSourceManager()
    • Method Detail

      • getSourceName

        public java.lang.String getSourceName()
        Description copied from interface: AudioSourceManager
        Every source manager implementation should have its unique name as it is used to determine which source manager should be able to decode a serialized audio track.
        Specified by:
        getSourceName in interface AudioSourceManager
        Returns:
        The name of this source manager
      • loadItem

        public AudioItem loadItem​(AudioPlayerManager manager,
                                  AudioReference reference)
        Description copied from interface: AudioSourceManager
        Returns an audio track for the input string. It should return null if it can immediately detect that there is no track for this identifier for this source. If checking that requires more expensive operations, then it should return a track instance and check that in InternalAudioTrack#loadTrackInfo.
        Specified by:
        loadItem in interface AudioSourceManager
        Parameters:
        manager - The audio manager to attach to the loaded tracks
        reference - The reference with the identifier which the source manager should find the track with
        Returns:
        The loaded item or null on unrecognized identifier
      • isTrackEncodable

        public boolean isTrackEncodable​(AudioTrack track)
        Description copied from interface: AudioSourceManager
        Returns whether the specified track can be encoded. The argument is always a track created by this manager. Being encodable also means that it must be possible to play this track on a different node, so it should not depend on any resources that are only available on the current system.
        Specified by:
        isTrackEncodable in interface AudioSourceManager
        Parameters:
        track - The track to check
        Returns:
        True if it is encodable
      • encodeTrack

        public void encodeTrack​(AudioTrack track,
                                java.io.DataOutput output)
        Description copied from interface: AudioSourceManager
        Encodes an audio track into the specified output. The contents of AudioTrackInfo do not have to be included since they are written to the output already before this call. This will only be called for tracks which were loaded by this source manager and for which isEncodable() returns true.
        Specified by:
        encodeTrack in interface AudioSourceManager
        Parameters:
        track - The track to encode
        output - Output where to write the decoded format to
      • decodeTrack

        public AudioTrack decodeTrack​(AudioTrackInfo trackInfo,
                                      java.io.DataInput input)
        Description copied from interface: AudioSourceManager
        Decodes an audio track from the encoded format encoded with encodeTrack().
        Specified by:
        decodeTrack in interface AudioSourceManager
        Parameters:
        trackInfo - The track info
        input - The input where to read the bytes of the encoded format
        Returns:
        The decoded track
      • shutdown

        public void shutdown()
        Description copied from interface: AudioSourceManager
        Shut down the source manager, freeing all associated resources and threads. A source manager is not responsible for terminating the tracks that it has created.
        Specified by:
        shutdown in interface AudioSourceManager
      • configureRequests

        public void configureRequests​(java.util.function.Function<org.apache.http.client.config.RequestConfig,​org.apache.http.client.config.RequestConfig> configurator)
        Specified by:
        configureRequests in interface HttpConfigurable
        Parameters:
        configurator - Function to reconfigure request config.
      • configureBuilder

        public void configureBuilder​(java.util.function.Consumer<org.apache.http.impl.client.HttpClientBuilder> configurator)
        Specified by:
        configureBuilder in interface HttpConfigurable
        Parameters:
        configurator - Function to reconfigure HTTP builder.