DeviceTransport interface
- Extends
-
EventEmitter
Методы
Наследуемые методы
add |
Псевдоним для |
emit<K>(string | symbol, Any |
Синхронно вызывает каждый из прослушивателей, зарегистрированных для события с именем Возвращает
|
event |
Возвращает массив, в котором перечислены события, для которых у поставщика зарегистрированы прослушиватели. Значения в массиве — это строки или
|
get |
Возвращает текущее значение максимального прослушивателя для |
listener |
Возвращает число прослушивателей, прослушивающих событие с именем |
listeners<K>(string | symbol) | Возвращает копию массива прослушивателей для события с именем
|
off<K>(string | symbol, (args: any[]) => void) | Псевдоним для |
once<K>(string | symbol, (args: any[]) => void) | Добавляет функцию однократного
Возвращает ссылку на По умолчанию прослушиватели событий вызываются в том порядке, в который они добавляются. Метод
|
prepend |
Добавляет функцию
Возвращает ссылку на |
prepend |
Добавляет функцию однократного
Возвращает ссылку на |
raw |
Возвращает копию массива прослушивателей для события с именем
|
remove |
Удаляет все прослушиватели или те из указанных Не рекомендуется удалять прослушиватели, добавленные в другое место в коде, особенно если экземпляр Возвращает ссылку на |
remove |
Удаляет указанный
После создания события все прослушиватели, подключенные к нему во время создания, вызываются в порядке. Это означает, что все вызовы
Так как прослушиватели управляются с помощью внутреннего массива, вызывая это приведет к изменению индексов позиций любого прослушивателя, зарегистрированного после удаленного прослушивателя. Это не повлияет на порядок вызова прослушивателей, но это означает, что все копии массива прослушивателя, возвращенные методом Если одна функция была добавлена в обработчик несколько раз для одного события (как в примере ниже),
Возвращает ссылку на |
set |
По умолчанию Возвращает ссылку на |
[capture |
Сведения о методе
abandon(Message, (err?: Error, results?: MessageAbandoned) => void)
function abandon(message: Message, done: (err?: Error, results?: MessageAbandoned) => void)
Параметры
- message
- Message
- done
-
(err?: Error, results?: MessageAbandoned) => void
complete(Message, (err?: Error, result?: MessageCompleted) => void)
function complete(message: Message, done: (err?: Error, result?: MessageCompleted) => void)
Параметры
- message
- Message
- done
-
(err?: Error, result?: MessageCompleted) => void
connect((err?: Error, result?: Connected) => void)
function connect(done: (err?: Error, result?: Connected) => void)
Параметры
- done
-
(err?: Error, result?: Connected) => void
disableC2D((err?: Error) => void)
function disableC2D(callback: (err?: Error) => void)
Параметры
- callback
-
(err?: Error) => void
disableInputMessages((err?: Error) => void)
function disableInputMessages(callback: (err?: Error) => void)
Параметры
- callback
-
(err?: Error) => void
disableMethods((err?: Error) => void)
function disableMethods(callback: (err?: Error) => void)
Параметры
- callback
-
(err?: Error) => void
disableTwinDesiredPropertiesUpdates((err?: Error) => void)
function disableTwinDesiredPropertiesUpdates(callback: (err?: Error) => void)
Параметры
- callback
-
(err?: Error) => void
disconnect((err?: Error, result?: Disconnected) => void)
function disconnect(done: (err?: Error, result?: Disconnected) => void)
Параметры
- done
-
(err?: Error, result?: Disconnected) => void
enableC2D((err?: Error) => void)
function enableC2D(callback: (err?: Error) => void)
Параметры
- callback
-
(err?: Error) => void
enableInputMessages((err?: Error) => void)
function enableInputMessages(callback: (err?: Error) => void)
Параметры
- callback
-
(err?: Error) => void
enableMethods((err?: Error) => void)
function enableMethods(callback: (err?: Error) => void)
Параметры
- callback
-
(err?: Error) => void
enableTwinDesiredPropertiesUpdates((err?: Error) => void)
function enableTwinDesiredPropertiesUpdates(callback: (err?: Error) => void)
Параметры
- callback
-
(err?: Error) => void
getTwin((err?: Error, twin?: TwinProperties) => void)
function getTwin(callback: (err?: Error, twin?: TwinProperties) => void)
Параметры
- callback
-
(err?: Error, twin?: TwinProperties) => void
on("connected", () => void)
function on(type: "connected", func: () => void): DeviceTransport
Параметры
- type
-
"connected"
- func
-
() => void
Возвращаемое значение
on("disconnect", (err?: Error) => void)
function on(type: "disconnect", func: (err?: Error) => void): DeviceTransport
Параметры
- type
-
"disconnect"
- func
-
(err?: Error) => void
Возвращаемое значение
on("error", (err: Error) => void)
function on(type: "error", func: (err: Error) => void): DeviceTransport
Параметры
- type
-
"error"
- func
-
(err: Error) => void
Возвращаемое значение
on("inputMessage", (inputName: string, msg: Message) => void)
function on(type: "inputMessage", func: (inputName: string, msg: Message) => void): DeviceTransport
Параметры
- type
-
"inputMessage"
- func
-
(inputName: string, msg: Message) => void
Возвращаемое значение
on("message", (msg: Message) => void)
function on(type: "message", func: (msg: Message) => void): DeviceTransport
Параметры
- type
-
"message"
- func
-
(msg: Message) => void
Возвращаемое значение
on("twinDesiredPropertiesUpdate", (desiredProps: any) => void)
function on(type: "twinDesiredPropertiesUpdate", func: (desiredProps: any) => void): DeviceTransport
Параметры
- type
-
"twinDesiredPropertiesUpdate"
- func
-
(desiredProps: any) => void
Возвращаемое значение
onDeviceMethod(string, (request: MethodMessage, response: DeviceMethodResponse) => void)
function onDeviceMethod(methodName: string, methodCallback: (request: MethodMessage, response: DeviceMethodResponse) => void)
Параметры
- methodName
-
string
- methodCallback
-
(request: MethodMessage, response: DeviceMethodResponse) => void
reject(Message, (err?: Error, results?: MessageRejected) => void)
function reject(message: Message, done: (err?: Error, results?: MessageRejected) => void)
Параметры
- message
- Message
- done
-
(err?: Error, results?: MessageRejected) => void
sendEvent(Message, (err?: Error, result?: MessageEnqueued) => void)
function sendEvent(message: Message, done: (err?: Error, result?: MessageEnqueued) => void)
Параметры
- message
- Message
- done
-
(err?: Error, result?: MessageEnqueued) => void
sendEventBatch(Message[], (err?: Error, result?: MessageEnqueued) => void)
function sendEventBatch(messages: Message[], done: (err?: Error, result?: MessageEnqueued) => void)
Параметры
- messages
-
Message[]
- done
-
(err?: Error, result?: MessageEnqueued) => void
sendMethodResponse(DeviceMethodResponse, (err?: Error, result?: any) => void)
function sendMethodResponse(response: DeviceMethodResponse, done?: (err?: Error, result?: any) => void)
Параметры
- response
- DeviceMethodResponse
- done
-
(err?: Error, result?: any) => void
sendOutputEvent(string, Message, (err?: Error, result?: MessageEnqueued) => void)
function sendOutputEvent(outputName: string, message: Message, done: (err?: Error, result?: MessageEnqueued) => void)
Параметры
- outputName
-
string
- message
- Message
- done
-
(err?: Error, result?: MessageEnqueued) => void
sendOutputEventBatch(string, Message[], (err?: Error, result?: MessageEnqueued) => void)
function sendOutputEventBatch(outputName: string, messages: Message[], done: (err?: Error, result?: MessageEnqueued) => void)
Параметры
- outputName
-
string
- messages
-
Message[]
- done
-
(err?: Error, result?: MessageEnqueued) => void
setOptions(DeviceClientOptions, (err?: Error, result?: TransportConfigured) => void)
function setOptions(options: DeviceClientOptions, done: (err?: Error, result?: TransportConfigured) => void)
Параметры
- options
- DeviceClientOptions
- done
-
(err?: Error, result?: TransportConfigured) => void
updateSharedAccessSignature(string, (err?: Error, result?: SharedAccessSignatureUpdated) => void)
function updateSharedAccessSignature(sharedAccessSignature: string, done: (err?: Error, result?: SharedAccessSignatureUpdated) => void)
Параметры
- sharedAccessSignature
-
string
- done
-
(err?: Error, result?: SharedAccessSignatureUpdated) => void
updateTwinReportedProperties(any, (err?: Error) => void)
function updateTwinReportedProperties(patch: any, callback: (err?: Error) => void)
Параметры
- patch
-
any
- callback
-
(err?: Error) => void
Сведения о наследуемом методе
addListener<K>(string | symbol, (args: any[]) => void)
Псевдоним для emitter.on(eventName, listener)
.
function addListener<K>(eventName: string | symbol, listener: (args: any[]) => void): DeviceTransport
Параметры
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Возвращаемое значение
наследуется от EventEmitter.addListener
emit<K>(string | symbol, AnyRest)
Синхронно вызывает каждый из прослушивателей, зарегистрированных для события с именем eventName
, в том порядке, в который они были зарегистрированы, передавая предоставленные аргументы каждому из них.
Возвращает true
, если событие имело прослушиватели, false
в противном случае.
import { EventEmitter } from 'node:events';
const myEmitter = new EventEmitter();
// First listener
myEmitter.on('event', function firstListener() {
console.log('Helloooo! first listener');
});
// Second listener
myEmitter.on('event', function secondListener(arg1, arg2) {
console.log(`event with parameters ${arg1}, ${arg2} in second listener`);
});
// Third listener
myEmitter.on('event', function thirdListener(...args) {
const parameters = args.join(', ');
console.log(`event with parameters ${parameters} in third listener`);
});
console.log(myEmitter.listeners('event'));
myEmitter.emit('event', 1, 2, 3, 4, 5);
// Prints:
// [
// [Function: firstListener],
// [Function: secondListener],
// [Function: thirdListener]
// ]
// Helloooo! first listener
// event with parameters 1, 2 in second listener
// event with parameters 1, 2, 3, 4, 5 in third listener
function emit<K>(eventName: string | symbol, args: AnyRest): boolean
Параметры
- eventName
-
string | symbol
- args
-
AnyRest
Возвращаемое значение
boolean
наследуется от EventEmitter.emit
eventNames()
Возвращает массив, в котором перечислены события, для которых у поставщика зарегистрированы прослушиватели. Значения в массиве — это строки или Symbol
s.
import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});
const sym = Symbol('symbol');
myEE.on(sym, () => {});
console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
function eventNames(): (string | symbol)[]
Возвращаемое значение
(string | symbol)[]
наследуется от EventEmitter.eventNames
getMaxListeners()
Возвращает текущее значение максимального прослушивателя для EventEmitter
, заданное emitter.setMaxListeners(n)
или значением по умолчанию defaultMaxListeners.
function getMaxListeners(): number
Возвращаемое значение
number
наследуется от EventEmitter.getMaxListeners
listenerCount<K>(string | symbol, Function)
Возвращает число прослушивателей, прослушивающих событие с именем eventName
.
Если указана listener
, он возвращает количество раз, когда прослушиватель найден в списке прослушивателей события.
function listenerCount<K>(eventName: string | symbol, listener?: Function): number
Параметры
- eventName
-
string | symbol
Имя прослушиваемого события
- listener
-
Function
Функция обработчика событий
Возвращаемое значение
number
наследуется от EventEmitter.listenerCount
listeners<K>(string | symbol)
Возвращает копию массива прослушивателей для события с именем eventName
.
server.on('connection', (stream) => {
console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
function listeners<K>(eventName: string | symbol): Function[]
Параметры
- eventName
-
string | symbol
Возвращаемое значение
Function[]
наследуется от EventEmitter.listeners
off<K>(string | symbol, (args: any[]) => void)
Псевдоним для emitter.removeListener()
.
function off<K>(eventName: string | symbol, listener: (args: any[]) => void): DeviceTransport
Параметры
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Возвращаемое значение
наследуется от EventEmitter.off
once<K>(string | symbol, (args: any[]) => void)
Добавляет функцию однократногоeventName
этот прослушиватель удаляется и вызывается.
server.once('connection', (stream) => {
console.log('Ah, we have our first user!');
});
Возвращает ссылку на EventEmitter
, чтобы вызовы могли быть связаны.
По умолчанию прослушиватели событий вызываются в том порядке, в который они добавляются. Метод emitter.prependOnceListener()
можно использовать в качестве альтернативы для добавления прослушивателя событий в начало массива прослушивателей.
import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.once('foo', () => console.log('a'));
myEE.prependOnceListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
// b
// a
function once<K>(eventName: string | symbol, listener: (args: any[]) => void): DeviceTransport
Параметры
- eventName
-
string | symbol
Имя события.
- listener
-
(args: any[]) => void
Функция обратного вызова
Возвращаемое значение
наследуется от EventEmitter.один раз
prependListener<K>(string | symbol, (args: any[]) => void)
Добавляет функцию listener
в начала массива прослушивателей для события с именем eventName
. Проверка не выполняется, чтобы узнать, добавлена ли listener
. Несколько вызовов, проходящих одно и то же сочетание eventName
и listener
, приведет к добавлению listener
и вызову несколько раз.
server.prependListener('connection', (stream) => {
console.log('someone connected!');
});
Возвращает ссылку на EventEmitter
, чтобы вызовы могли быть связаны.
function prependListener<K>(eventName: string | symbol, listener: (args: any[]) => void): DeviceTransport
Параметры
- eventName
-
string | symbol
Имя события.
- listener
-
(args: any[]) => void
Функция обратного вызова
Возвращаемое значение
унаследован от EventEmitter.prependListener
prependOnceListener<K>(string | symbol, (args: any[]) => void)
Добавляет функцию однократногоeventName
этот прослушиватель удаляется, а затем вызывается.
server.prependOnceListener('connection', (stream) => {
console.log('Ah, we have our first user!');
});
Возвращает ссылку на EventEmitter
, чтобы вызовы могли быть связаны.
function prependOnceListener<K>(eventName: string | symbol, listener: (args: any[]) => void): DeviceTransport
Параметры
- eventName
-
string | symbol
Имя события.
- listener
-
(args: any[]) => void
Функция обратного вызова
Возвращаемое значение
наследуется от EventEmitter.prependOnceListener
rawListeners<K>(string | symbol)
Возвращает копию массива прослушивателей для события с именем eventName
, включая любые оболочки (например, созданные .once()
).
import { EventEmitter } from 'node:events';
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));
// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];
// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();
// Logs "log once" to the console and removes the listener
logFnWrapper();
emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');
// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
function rawListeners<K>(eventName: string | symbol): Function[]
Параметры
- eventName
-
string | symbol
Возвращаемое значение
Function[]
наследуется от EventEmitter.rawListeners
removeAllListeners(string | symbol)
Удаляет все прослушиватели или те из указанных eventName
.
Не рекомендуется удалять прослушиватели, добавленные в другое место в коде, особенно если экземпляр EventEmitter
был создан другим компонентом или модулем (например, сокетами или потоками файлов).
Возвращает ссылку на EventEmitter
, чтобы вызовы могли быть связаны.
function removeAllListeners(eventName?: string | symbol): DeviceTransport
Параметры
- eventName
-
string | symbol
Возвращаемое значение
наследуется от EventEmitter.removeAllListeners
removeListener<K>(string | symbol, (args: any[]) => void)
Удаляет указанный listener
из массива прослушивателя для события с именем eventName
.
const callback = (stream) => {
console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
removeListener()
удаляет в большинстве случаев один экземпляр прослушивателя из массива прослушивателя. Если один прослушиватель был добавлен несколько раз в массив прослушивателя для указанного eventName
, removeListener()
необходимо вызывать несколько раз, чтобы удалить каждый экземпляр.
После создания события все прослушиватели, подключенные к нему во время создания, вызываются в порядке. Это означает, что все вызовы removeListener()
или removeAllListeners()
после отправки и до завершения выполнения последнего прослушивателя не будут удалять их изemit()
во время выполнения. Последующие события ведут себя должным образом.
import { EventEmitter } from 'node:events';
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();
const callbackA = () => {
console.log('A');
myEmitter.removeListener('event', callbackB);
};
const callbackB = () => {
console.log('B');
};
myEmitter.on('event', callbackA);
myEmitter.on('event', callbackB);
// callbackA removes listener callbackB but it will still be called.
// Internal listener array at time of emit [callbackA, callbackB]
myEmitter.emit('event');
// Prints:
// A
// B
// callbackB is now removed.
// Internal listener array [callbackA]
myEmitter.emit('event');
// Prints:
// A
Так как прослушиватели управляются с помощью внутреннего массива, вызывая это приведет к изменению индексов позиций любого прослушивателя, зарегистрированного после удаленного прослушивателя. Это не повлияет на порядок вызова прослушивателей, но это означает, что все копии массива прослушивателя, возвращенные методом emitter.listeners()
, должны быть воссозданы.
Если одна функция была добавлена в обработчик несколько раз для одного события (как в примере ниже), removeListener()
удалит последний добавленный экземпляр. В примере прослушивателя once('ping')
удаляется:
import { EventEmitter } from 'node:events';
const ee = new EventEmitter();
function pong() {
console.log('pong');
}
ee.on('ping', pong);
ee.once('ping', pong);
ee.removeListener('ping', pong);
ee.emit('ping');
ee.emit('ping');
Возвращает ссылку на EventEmitter
, чтобы вызовы могли быть связаны.
function removeListener<K>(eventName: string | symbol, listener: (args: any[]) => void): DeviceTransport
Параметры
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Возвращаемое значение
наследуется от EventEmitter.removeListener
setMaxListeners(number)
По умолчанию EventEmitter
будет выводить предупреждение, если для определенного события добавляются более 10
прослушивателей. Это полезное значение по умолчанию, которое помогает находить утечки памяти. Метод emitter.setMaxListeners()
позволяет изменить ограничение для этого конкретного экземпляра EventEmitter
. Для указания неограниченного количества прослушивателей можно задать значение Infinity
(или 0
).
Возвращает ссылку на EventEmitter
, чтобы вызовы могли быть связаны.
function setMaxListeners(n: number): DeviceTransport
Параметры
- n
-
number
Возвращаемое значение
наследуется от EventEmitter.setMaxListeners
[captureRejectionSymbol]<K>(Error, string | symbol, AnyRest)
function [captureRejectionSymbol]<K>(error: Error, event: string | symbol, args: AnyRest)
Параметры
- error
-
Error
- event
-
string | symbol
- args
-
AnyRest
унаследован от EventEmitter.__@captureRejectionSymbol@141