class WebSocketImpl extends WebSocketBase {
        private static final Logger log = LoggerFactory.getLogger(WebSocketImpl.class);
        private Session real;

        public WebSocketImpl(Session real) {
            this.real = real;
            this.init(real.getRequestURI());
        }

        @Override
        public boolean isValid() {
            return isClosed() == false && real.isOpen();
        }

        @Override
        public boolean isSecure() {
            return real.isSecure();
        }

        @Override
        public InetSocketAddress remoteAddress() {
            return null;
        }

        @Override
        public InetSocketAddress localAddress() {
            return null;
        }

        @Override
        public long getIdleTimeout() {
            return real.getMaxIdleTimeout();
        }

        @Override
        public void setIdleTimeout(long idleTimeout) {
            real.setMaxIdleTimeout(idleTimeout);
        }


        @Override
        public void send(String text) {
            try {
                real.getBasicRemote().sendText(text);
            } catch (IOException e) {
                throw new IllegalStateException(e);
            }
        }

        @Override
        public void send(ByteBuffer binary) {
            try {
                real.getBasicRemote().sendBinary(binary);
            } catch (IOException e) {
                throw new IllegalStateException(e);
            }

        }

        @Override
        public void close() {<FILL_FUNCTION_BODY>}
    }

            super.close();
            try {
                real.close();
            } catch (IOException e) {
                if (log.isDebugEnabled()) {
                    log.debug("{}", e);
                }
            }
        
<methods>public void <init>() ,public void onClose(jakarta.websocket.Session, jakarta.websocket.CloseReason) ,public void onError(jakarta.websocket.Session, java.lang.Throwable) ,public abstract void onOpen(jakarta.websocket.Session, jakarta.websocket.EndpointConfig) <variables>