Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/pull/connector/src/transport/ |
Upload File : |
/* eslint-disable @bitrix24/bitrix24-rules/no-pseudo-private */ /* eslint-disable no-underscore-dangle */ // noinspection ES6PreferShortImport import { isFunction } from '../../../util/src/util'; export type ConnectorOptions = { pathGetter: () => string, onOpen: () => void, onDisconnect: () => void, onError: () => void, onMessage: () => void, } export class AbstractConnector { _connected = false; connectionType = ''; disconnectCode = ''; disconnectReason = ''; constructor(config: ConnectorOptions) { this.pathGetter = config.pathGetter; this.callbacks = { onOpen: isFunction(config.onOpen) ? config.onOpen : function() {}, onDisconnect: isFunction(config.onDisconnect) ? config.onDisconnect : function() {}, onError: isFunction(config.onError) ? config.onError : function() {}, onMessage: isFunction(config.onMessage) ? config.onMessage : function() {}, }; } get connected(): boolean { return this._connected; } set connected(value: boolean) { if (value === this._connected) { return; } this._connected = value; if (this._connected) { this.callbacks.onOpen(); } else { this.callbacks.onDisconnect({ code: this.disconnectCode, reason: this.disconnectReason, }); } } get path(): string { return this.pathGetter(); } }