UNPKG

realm-object-server-enterprise

Version:

Realm Object Server Enterprise

43 lines (42 loc) 1.43 kB
import { Discovery, Logger, ServiceHandle, ServiceWatch } from "realm-object-server"; import * as consul from "consul"; export declare class ConsulServiceWatch extends ServiceWatch { private consulClient; private logger; private watch; constructor(consulClient: consul.Consul, logger: Logger, name: string, tags?: string[]); private startWatch; } export interface IConsulDiscoveryConfiguration { consulHost?: string; consulPort?: string; secure?: boolean; logger?: Logger; advertiseAddress?: string; advertisePortMap?: { [localPort: number]: number; }; namespace?: string; checkTtl?: number; } export declare class ConsulDiscovery extends Discovery { consul: consul.Consul; readonly advertiseAddress: string; readonly advertisePortMap: { readonly [localPort: number]: number; }; private serviceIdMap; private intervalMap; private checkTtl; private logger; private namespace; constructor(config?: IConsulDiscoveryConfiguration); registerService(service: any, address: string, port: number): Promise<void>; deregisterService(service: any): Promise<void>; findAll(name: string, tags?: string[]): Promise<ServiceHandle[]>; watchService(name: string, tags?: string[]): ConsulServiceWatch; private createConsulServiceHandle; private findId; private findOrCreateId; private namespacedTags; }