Class Discovery

Hierarchy

  • CreateDestroyStartStop
    • Discovery

Constructors

  • Parameters

    • __namedParameters: {
          db: DB;
          discoverVertexTimeoutTime: number;
          gestaltGraph: GestaltGraph;
          identitiesManager: IdentitiesManager;
          keyRing: KeyRing;
          logger: Logger;
          nodeManager: NodeManager;
          rediscoverCheckIntervalTime: number;
          rediscoverSkipTime: number;
          rediscoverVertexDelayTime: number;
          staleVertexThresholdTime: number;
          taskManager: TaskManager;
      }
      • db: DB
      • discoverVertexTimeoutTime: number
      • gestaltGraph: GestaltGraph
      • identitiesManager: IdentitiesManager
      • keyRing: KeyRing
      • logger: Logger
      • nodeManager: NodeManager
      • rediscoverCheckIntervalTime: number
      • rediscoverSkipTime: number
      • rediscoverVertexDelayTime: number
      • staleVertexThresholdTime: number
      • taskManager: TaskManager

    Returns Discovery

Properties

[initLock]: RWLockWriter
checkRediscoveryHandler: TaskHandler = ...

This handler is run periodically to check if nodes are ready to be rediscovered

checkRediscoveryHandlerId: TaskHandlerId = ...
db: DB
discoverVertexHandler: TaskHandler = ...
discoverVertexHandlerId: TaskHandlerId = ...
discoverVertexTimeoutTime: number
gestaltGraph: GestaltGraph
identitiesManager: IdentitiesManager
keyRing: KeyRing
logger: Logger
nodeManager: NodeManager
rediscoverCheckIntervalTime: number

Interval delay used when checking for nodes to rediscover

rediscoverSkipTime: number

The time since a vertex has been processed where re processing will be skipped

rediscoverVertexThresholdTime: number

The threshold used when deciding to rediscover a vertex based on how long ago it was processed

staleVertexThresholdTime: number

The time threshold for

taskManager: TaskManager

Accessors

  • get [destroyed](): boolean
  • Returns boolean

  • get [eventHandled](): ReadonlyWeakSet<Event>
  • Returns ReadonlyWeakSet<Event>

  • get [eventHandlers](): ReadonlyMap<string, Set<EventHandlerInfo>>
  • Returns ReadonlyMap<string, Set<EventHandlerInfo>>

  • get [eventTarget](): EventTarget
  • Returns EventTarget

  • get [handleEventError](): ((evt) => void)
  • Returns ((evt) => void)

      • (evt): void
      • Parameters

        • evt: EventError

        Returns void

  • get [running](): boolean
  • Returns boolean

  • get [statusP](): Promise<Status>
  • Returns Promise<Status>

  • get [status](): Status
  • Returns Status

Methods

  • Parameters

    • type: string
    • callback: null | EventListenerOrEventListenerObject
    • Optional options: boolean | AddEventListenerOptions

    Returns void

  • Checks previously discovered vertices for ones to be re-added back on to the queue

    Parameters

    • lastProcessedCutoffTime: number
    • Optional tran: DBTransaction
    • Optional ctx: Partial<ContextTimedInput>

    Returns Promise<void>

  • Parameters

    • event: Event

    Returns boolean

  • Helper function to retrieve the IdentityInfo of an identity on a provider. All claims in the returned IdentityInfo are verified by the node it claims to link to. Returns undefined if no identity info to be retrieved (either no provider or identity data found).

    Parameters

    Returns Promise<undefined | IdentityData>

  • Simple check for whether there are existing discovery tasks. Returns the number of tasks to avoid boolean blindness.

    Returns Promise<number>

  • Parameters

    • nodeId: NodeId
    • lastProcessedCutoffTime: undefined | number
    • ctx: ContextTimed

    Returns Promise<void>

  • Parameters

    • vertex: GestaltIdEncoded
    • Optional lastProcessedCutoffTime: number
    • Optional ctx: Partial<ContextTimed>

    Returns PromiseCancellable<void>

  • Returns true if the vertex was processed after the given time

    Parameters

    • vertex: GestaltId
    • time: number
    • Optional tran: DBTransaction

    Returns Promise<boolean>

  • Queues an identity for discovery. Internally calls pushKeyToDiscoveryQueue.

    Parameters

    Returns Promise<void>

  • Queues a node for discovery. Internally calls pushKeyToDiscoveryQueue.

    Parameters

    • nodeId: NodeId
    • Optional lastProcessedCutoffTime: number

    Returns Promise<void>

  • Parameters

    • type: string
    • callback: null | EventListenerOrEventListenerObject
    • Optional options: boolean | EventListenerOptions

    Returns void

  • Creates a task that to discover a vertex. Will not create a new task if an existing task for the vertex exists.

    The task can be scheduled with an optional delay. If the task already exists then the delay will be updated

    Parameters

    • vertex: GestaltId
    • Optional delay: number
    • Optional lastProcessedCutoffTime: number
    • Optional parent: GestaltId
    • ignoreActive: boolean = false
    • Optional tran: DBTransaction

    Returns Promise<void>

  • Parameters

    • __namedParameters: {
          fresh?: boolean;
      } = {}
      • Optional fresh?: boolean

    Returns Promise<void>

  • Will resolve once all existing discovery tasks have finished. Returns the number of existing tasks that were awaited.

    Parameters

    • scheduled: boolean = false

    Returns Promise<number>

  • Parameters

    • __namedParameters: {
          db: DB;
          discoverVertexTimeoutTime?: number;
          fresh?: boolean;
          gestaltGraph: GestaltGraph;
          identitiesManager: IdentitiesManager;
          keyRing: KeyRing;
          logger?: Logger;
          nodeManager: NodeManager;
          rediscoverCheckIntervalTime?: number;
          rediscoverSkipTime?: number;
          rediscoverVertexDelayTime?: number;
          staleVertexThresholdTime?: number;
          taskManager: TaskManager;
      }
      • db: DB
      • Optional discoverVertexTimeoutTime?: number
      • Optional fresh?: boolean
      • gestaltGraph: GestaltGraph
      • identitiesManager: IdentitiesManager
      • keyRing: KeyRing
      • Optional logger?: Logger
      • nodeManager: NodeManager
      • Optional rediscoverCheckIntervalTime?: number
      • Optional rediscoverSkipTime?: number
      • Optional rediscoverVertexDelayTime?: number
      • Optional staleVertexThresholdTime?: number
      • taskManager: TaskManager

    Returns Promise<Discovery>

Generated using TypeDoc