Spec-Zone.ru › RethinkDB javascript

Команда ReQL: EventEmitter (соединение)

Синтаксис команды

connection.addListener(event, listener)
connection.on(event, listener)
connection.once(event, listener)
connection.removeListener(event, listener)
connection.removeAllListeners([event])
connection.setMaxListeners(n)
connection.listeners(event)
connection.emit(event, [arg1], [arg2], [...])

Описание

Соединения реализуют тот же интерфейс, что и EventEmitter в Node.js (EventEmitter). Это позволяет вам отслеживать изменения состояния соединения.

Выпускаются четыре события: connect, close, timeout и error.

  • connect: успешное подключение к серверу.
  • close: соединение было закрыто, либо из-за ошибки, либо путём вызова connection.close().
  • timeout: таймаут базового сокета.
  • error: произошла ошибка на уровне протокола. (Это не будет отправлено при ошибке запроса; те возвращаются в обратные вызовы/обещания.)

Пример: Отслеживание состояния соединения с помощью событий.

r.connect({}, function(err, conn) {
    if (err) throw err;

    conn.addListener('error', function(e) {
        processNetworkError(e);
    });

    conn.addListener('close', function() {
        cleanup();
    });

    runQueries(conn);
});

Пример: Как и в Node.js, on является синонимом для addListener.

conn.on('close', function() {
    cleanup();
});
conn.close();

Связанные команды

  • connect
  • reconnect
  • close

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/javascript/event_emitter/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API