hazelcast-client
Version:
Hazelcast - open source In-Memory Data Grid - client for NodeJS
32 lines (31 loc) • 1.28 kB
TypeScript
/// <reference types="bluebird" />
import * as Promise from 'bluebird';
import { ITopic } from './ITopic';
import { TopicMessageListener } from './TopicMessageListener';
import HazelcastClient from '../../HazelcastClient';
import { IRingbuffer } from '../IRingbuffer';
import { RawTopicMessage } from './RawTopicMessage';
export declare const RINGBUFFER_PREFIX = "_hz_rb_";
export declare const TOPIC_INITIAL_BACKOFF = 100;
export declare const TOPIC_MAX_BACKOFF = 2000;
export declare class ReliableTopicProxy<E> implements ITopic<E> {
private ringbuffer;
private localAddress;
private batchSize;
private runners;
private serializationService;
private overloadPolicy;
private name;
constructor(name: string, client: HazelcastClient);
addMessageListener(listener: TopicMessageListener<E>): string;
removeMessageListener(id: string): boolean;
publish(message: E): Promise<void>;
private addOrDiscard(reliableTopicMessage);
private addWithError(reliableTopicMessage);
private addOrOverwrite(reliableTopicMessage);
private addWithBackoff(reliableTopicMessage);
private trySendMessage(message, delay, resolve);
getRingbuffer(): IRingbuffer<RawTopicMessage>;
getName(): String;
destroy(): Promise<void>;
}