UNPKG

@glue42/bbg-market-data

Version:

A high-level API that wraps existing Glue42 Bloomberg Bridge Market Data interop methods. The API is based on the jBloomberg open source wrapper.

59 lines (58 loc) 2.33 kB
import { Glue42Core } from "@glue42/core"; import { UnsubscribeFunction } from "callback-registry"; import { RequestId } from "../core/types/request-id"; import { BloombergEvent } from "../core/types"; import { ConnectionStatusSubscriber, CreateRequestArgs, CreateSubscriptionRequestArgs } from "./types"; import { Logger } from "../logger/types"; import { ProtocolMethods } from "../bbg-market-data-api"; export interface EventsCallback { (args: { requestCorrelationId: RequestId; msg: BloombergEvent<any>; }): void; } /** * MDF API facade. */ export declare class MdfBridge { private readonly interop; private readonly apiId; private readonly apiVersion; private readonly protocolMethods; private readonly logger?; private readonly eventsCallbackMethodName; private readonly registry; private readonly registerEventsCallbackPW; constructor(interop: Glue42Core.Interop.API, apiId: string, apiVersion: string, protocolMethods: ProtocolMethods, logger?: Logger | undefined); get eventsCallbackMethod(): string; /** * Returns a promise which either resolves when the callback method was registered successfully or rejects when registration failed. */ ready(): Promise<void>; /** * Subscribe to receive events for a particular request. */ onEvent(requestId: RequestId, handler: (event: BloombergEvent<any>) => void): UnsubscribeFunction; /** * Invokes the MDF API to create a non-subscription request. */ createRequest(args: CreateRequestArgs): Promise<void>; /** * Invokes the MDF API to create a subscription request. */ createSubscriptionRequest(args: CreateSubscriptionRequestArgs): Promise<void>; /** * Invokes the MDF API to cancel a request. */ closeRequest(requestId: RequestId, reason: string): Promise<void>; /** * Invokes the MDF API to close a session. */ closeSession(sessionName: string): Promise<void>; /** * Subscribes to MDF API Interop stream that streams Bloomberg Heartbeat. */ subscribeForConnectionStatus(retryPeriodMsecs: number, subscriber: ConnectionStatusSubscriber): Promise<void>; private registerEventsCallbackMethod; private invokeCreateRequest; }