Class Heart


  • public class Heart
    extends java.lang.Object
    Every animal has a heart. As we all know that websockets are animals, they obliviously have a heart, too.
    • Constructor Summary

      Constructors 
      Constructor Description
      Heart​(DiscordApiImpl api, java.util.function.Consumer<com.neovisionaries.ws.client.WebSocketFrame> heartbeatFrameSender, java.util.function.BiConsumer<java.lang.Integer,​java.lang.String> closeFrameSender, boolean voice)
      Ba boom, ba boom, ba boom, ba boom, ...
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void beat()
      Ba boom, ba boom, ba boom, ba boom, ...
      void handlePacket​(com.fasterxml.jackson.databind.JsonNode packet)
      Handles the given packet.
      void squash()
      Squashes the poor heart (stop it from beating).
      void startBeating​(int interval)
      Ba boom, ba boom, ba boom, ba boom, ..
      • Methods inherited from class java.lang.Object

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

      • Heart

        public Heart​(DiscordApiImpl api,
                     java.util.function.Consumer<com.neovisionaries.ws.client.WebSocketFrame> heartbeatFrameSender,
                     java.util.function.BiConsumer<java.lang.Integer,​java.lang.String> closeFrameSender,
                     boolean voice)
        Ba boom, ba boom, ba boom, ba boom, ...
        Parameters:
        api - The heart of every Javacord bot.
        heartbeatFrameSender - A consumer that forwards the given frame to the corresponding web socket.
        closeFrameSender - A bi consumer that sends a close frame with the given code and reason.
        voice - Voice websocket hearts beat differently.
    • Method Detail

      • handlePacket

        public void handlePacket​(com.fasterxml.jackson.databind.JsonNode packet)
        Handles the given packet. Usually used to update the last sequence number and listen for acks.
        Parameters:
        packet - The packet to handle.
      • startBeating

        public void startBeating​(int interval)
        Ba boom, ba boom, ba boom, ba boom, .. .
        Parameters:
        interval - Unlike a human heart, websocket hearts have a fixed beating interval.
      • beat

        public void beat()
        Ba boom, ba boom, ba boom, ba boom, ...
      • squash

        public void squash()
        Squashes the poor heart (stop it from beating).