程序包 qhs.interfaces

接口 WebSocketStream


  • public interface WebSocketStream
    一个WebSocketStream接口对象引用一条WS流。在本接口,除了read()方法以外的其它方法是可以跨线程调用。
    • 方法概要

      所有方法 实例方法 抽象方法 
      修饰符和类型 方法 说明
      void close()
      关闭WS流。
      Connection getConnection()
      返回WS流所在的http连接。
      int getStreamIdentifier()
      返回WS流的StreamIdentifier。
      java.lang.Object getUserObject()
      返回用户对象。
      void invoke​(WebSocketCode wsc)
      调用同步代码从而同步WS流的状态。
      boolean isClosed()
      检测WS流是否已关闭。
      void read​(WebSocketListener listener, byte[] tempByteBuffer)
      检测并且读取WebSocket帧。
      void setUserObject​(java.lang.Object o)
      设置用户对象。
      void writeBinary​(byte[] ba)
      把ba参数值上的所有元素编码成为WebSocket的binary帧以后把binary帧发送给浏览器。
      void writeBinary​(byte[] ba, int startIndex, int endIndex)
      在ba参数上选定范围的元素,并且把选定范围的元素编码成为WebSocket的binary帧以后把binary帧发送给浏览器。
      void writeText​(byte[] ba)
      把ba参数值上的所有元素编码成为WebSocket的text帧以后把text帧发送给浏览器。
      void writeText​(byte[] ba, int startIndex, int endIndex)
      在ba参数上选定范围的元素,并且把选定范围的元素编码成为WebSocket的text帧以后把text帧发送给浏览器。
    • 方法详细资料

      • getConnection

        Connection getConnection()
        返回WS流所在的http连接。
      • getStreamIdentifier

        int getStreamIdentifier()
        返回WS流的StreamIdentifier。
      • read

        void read​(WebSocketListener listener,
                  byte[] tempByteBuffer)
           throws java.lang.Throwable
        检测并且读取WebSocket帧。
         注意:
         (1)、本方法不是直接从http连接读取WebSocket帧。
         (2)、不要跨线程调用本方法,本方法的调用只适合存在于WSServiceModule.invoke()
              及其调用的方法内部。
        
         
        参数:
        listener - 检测WebSocket帧的监听器。
        tempByteBuffer - 用于临时存放WebSocket帧数据的数组。
        抛出:
        java.lang.Throwable
      • writeText

        void writeText​(byte[] ba,
                       int startIndex,
                       int endIndex)
                throws java.lang.Throwable
        在ba参数上选定范围的元素,并且把选定范围的元素编码成为WebSocket的text帧以后把text帧发送给浏览器。
        参数:
        ba - 字节数组。
        startIndex - 在ba参数上的选定范围的开始位置。
        endIndex - 在ba参数上的选定范围的结束位置。
        抛出:
        java.lang.Throwable
      • writeText

        void writeText​(byte[] ba)
                throws java.lang.Throwable
        把ba参数值上的所有元素编码成为WebSocket的text帧以后把text帧发送给浏览器。
        参数:
        ba - 字节数组。
        抛出:
        java.lang.Throwable
      • writeBinary

        void writeBinary​(byte[] ba,
                         int startIndex,
                         int endIndex)
                  throws java.lang.Throwable
        在ba参数上选定范围的元素,并且把选定范围的元素编码成为WebSocket的binary帧以后把binary帧发送给浏览器。
        参数:
        ba - 字节数组。
        startIndex - 在ba参数上的选定范围的开始位置。
        endIndex - 在ba参数上的选定范围的结束位置。
        抛出:
        java.lang.Throwable
      • writeBinary

        void writeBinary​(byte[] ba)
                  throws java.lang.Throwable
        把ba参数值上的所有元素编码成为WebSocket的binary帧以后把binary帧发送给浏览器。
        参数:
        ba - 字节数组。
        抛出:
        java.lang.Throwable
      • invoke

        void invoke​(WebSocketCode wsc)
             throws java.lang.Throwable
        调用同步代码从而同步WS流的状态。本方法在调用WebSocketCode.invoke() 以前首先锁定WS流所处于的http连接,然后调用WebSocketCode.invoke()。 用户可在WebSocketCode.invoke()放置改变WS流状态的语句。
        抛出:
        java.lang.Throwable
      • close

        void close()
        关闭WS流。
      • isClosed

        boolean isClosed()
        检测WS流是否已关闭。
        返回:
        true值表示WS流已关闭,false值表示WS流未关闭。
      • setUserObject

        void setUserObject​(java.lang.Object o)
        设置用户对象。
        参数:
        o - o参数值可以等于任何类型对象。通常,o参数值应包含有与WS流有关联的数据。
      • getUserObject

        java.lang.Object getUserObject()
        返回用户对象。
        返回:
        用户对象。