protected function handleConnectEncoding(array &$querystring) {
        if($this->encoding === null) {
            $encoding = $querystring['encoding'] ?? self::WS['encoding'];
            
            $name = \str_replace('-', '', \ucwords($encoding, '-'));
            if(\strpos($name, '\\') === false) {
                $name = '\\CharlotteDunois\\Yasmin\\WebSocket\\Encoding\\'.$name;
            }
            
            $name::supported();
            
            $interfaces = \class_implements($name);
            if(!\in_array('CharlotteDunois\\Yasmin\\Interfaces\\WSEncodingInterface', $interfaces)) {
                throw new \RuntimeException('Specified WS encoding class does not implement necessary interface');
            }
            
            $this->encoding = new $name();
            $querystring['encoding'] = $this->encoding->getName();
        }
    }
protected function handleConnectEncoding(array &$querystring) {
        if($this->encoding === null) {
            $encoding = $querystring['encoding'] ?? self::WS['encoding'];
            
            $name = \str_replace('-', '', \ucwords($encoding, '-'));
            if(\strpos($name, '\\') === false) {
                $name = '\\CharlotteDunois\\Yasmin\\WebSocket\\Encoding\\'.$name;
            }
            
            $name::supported();
            
            $interfaces = \class_implements($name);
            if(!\in_array('CharlotteDunois\\Yasmin\\Interfaces\\WSEncodingInterface', $interfaces)) {
                throw new \RuntimeException('Specified WS encoding class does not implement necessary interface');
            }
            
            $this->encoding = new $name();
            $querystring['encoding'] = $this->encoding->getName();
        }
    }
protected function handleConnectEncoding ( array & $ querystring ) { if ( $ this -> encoding === null ) { $ encoding = $ querystring [ 'encoding' ] ?? self :: WS [ 'encoding' ] ; $ name = \ str_replace ( '-' , '' , \ ucwords ( $ encoding , '-' ) ) ; if ( \ strpos ( $ name , '\\' ) === false ) { $ name = '\\CharlotteDunois\\Yasmin\\WebSocket\\Encoding\\' . $ name ; } $ name :: supported ( ) ; $ interfaces = \ class_implements ( $ name ) ; if ( ! \ in_array ( 'CharlotteDunois\\Yasmin\\Interfaces\\WSEncodingInterface' , $ interfaces ) ) { throw new \ RuntimeException ( 'Specified WS encoding class does not implement necessary interface' ) ; } $ this -> encoding = new $ name ( ) ; $ querystring [ 'encoding' ] = $ this -> encoding -> getName ( ) ; } }
Handles the connect encoding for the query string.
@param array  $querystring
@return void
@throws \RuntimeException
Handles the connect encoding for the query string .