A publish/subscribe server for Nymph.

Written by Hunter Perrin for SciActive.

Author

Hunter Perrin [email protected]

Copyright

SciActive Inc

See

http://nymph.io/

Hierarchy

  • PubSub

Constructors

  • Initialize Nymph PubSub.

    Parameters

    • config: Partial<Config>

      The PubSub configuration.

    • nymph: default
    • server: server

    Returns PubSub

Properties

config: Config

The PubSub config.

nymph: default

The Nymph instance.

querySubs: {
    [etype: string]: {
        [query: string]: Map<connection, QuerySubscriptionData>;
    };
} = {}

Type declaration

server: server

The WebSocket server.

sessions: Map<connection, {
    authToken: string;
    switchToken?: string;
}> = ...

Type declaration

  • authToken: string
  • Optional switchToken?: string
uidSubs: {
    [uidName: string]: Map<connection, {
        count: boolean;
    }>;
} = {}

Type declaration

  • [uidName: string]: Map<connection, {
        count: boolean;
    }>
transactionPublishes: {
    config: Config;
    nymph: default;
    payload: string;
}[] = []

Type declaration

  • config: Config
  • nymph: default
  • payload: string

Methods

  • Handle a publish from a client.

    Parameters

    Returns Promise<void>

  • Handle an entity publish from a client.

    Parameters

    Returns Promise<void>

  • Handle a UID publish from a client.

    Parameters

    Returns Promise<void>

  • Parameters

    • request: request

    Returns void

  • Handle a subscribe or unsubscribe from a client.

    Parameters

    Returns Promise<void>

  • Handle a subscribe or unsubscribe for a query from a client.

    Parameters

    • from: connection
    • data: QuerySubscribeMessageData
    • Optional qrefParent: {
          etype: string;
          query: string;
      }
      • etype: string
      • query: string

    Returns Promise<void>

  • Handle a subscribe or unsubscribe for a UID from a client.

    Parameters

    Returns Promise<void>

  • Clean up after users who leave.

    Parameters

    • conn: connection
    • description: string

    Returns void

  • Parameters

    • conn: connection
    • e: Error

    Returns void

  • Handle a message from a client.

    Parameters

    • from: connection
    • msg: Message

    Returns Promise<void>

  • Relay publish data to other servers.

    Parameters

    • message: Message

    Returns void

  • This translates qref selectors into ref selectors using the "current" GUID list in the existing subscriptions.

    Parameters

    • client: connection
    • selectors: Selector[]

    Returns Selector[]

  • Parameters

    • config: Partial<Config>
    • nymph: default

    Returns void

  • Parameters

    • parent: default
    • child: default

    Returns boolean

  • Parameters

    • message: string
    • config: Config

    Returns void

  • Parameters

    • nymph: default

    Returns Promise<void>

  • Parameters

    • nymph: default

    Returns void

Generated using TypeDoc