async initServicesThatRequireServer () {
    // Cannot progress without recovering spID from node's record on L1 ServiceProviderFactory contract
    // Retries indefinitely
    await this._recoverNodeL1Identity()

    // SnapbackSM init (requires L1 identity)
    // Retries indefinitely
    await this._initSnapbackSM()

    // SyncQueue construction (requires L1 identity)
    // Note - passes in reference to instance of self (serviceRegistry), a very sub-optimal workaround
    this.syncQueue = new SyncQueue(
      this.nodeConfig,
      this.redis,
      this.ipfs,
      this.ipfsLatest,
      this
    )

    // L2URSMRegistration (requires L1 identity)
    // Retries indefinitely
    await this._registerNodeOnL2URSM()

    // SkippedCIDsRetryQueue construction + init (requires SyncQueue)
    // Note - passes in reference to instance of self (serviceRegistry), a very sub-optimal workaround
    this.skippedCIDsRetryQueue = new SkippedCIDsRetryQueue(this.nodeConfig, this.libs, this)
    await this.skippedCIDsRetryQueue.init()

    this.servicesThatRequireServerInitialized = true
    this.logInfo(`All services that require server successfully initialized!`)
  }
/**
   * Some services require the node server to be running in order to initialize. Run those here.
   * Specifically:
   *  - recover node L1 identity (requires node health check from server to return success)
   *  - initialize SnapbackSM service (requires node L1 identity)
   *  - construct SyncQueue (requires node L1 identity)
   *  - register node on L2 URSM contract (requires node L1 identity)
   *  - construct & init SkippedCIDsRetryQueue (requires SyncQueue)
   */
Some services require the node server to be running in order to initialize. Run those here.
Some services require the node server to be running in order to initialize . Run those here .
async initServicesThatRequireServer () {
    await this._recoverNodeL1Identity()
    await this._initSnapbackSM()
    this.syncQueue = new SyncQueue(
      this.nodeConfig,
      this.redis,
      this.ipfs,
      this.ipfsLatest,
      this
    )
    await this._registerNodeOnL2URSM()
    this.skippedCIDsRetryQueue = new SkippedCIDsRetryQueue(this.nodeConfig, this.libs, this)
    await this.skippedCIDsRetryQueue.init()
    this.servicesThatRequireServerInitialized = true
    this.logInfo(`All services that require server successfully initialized!`)
  }
async initServicesThatRequireServer ( ) { await this . _recoverNodeL1Identity ( ) await this . _initSnapbackSM ( ) this . syncQueue = new SyncQueue ( this . nodeConfig , this . redis , this . ipfs , this . ipfsLatest , this ) await this . _registerNodeOnL2URSM ( ) this . skippedCIDsRetryQueue = new SkippedCIDsRetryQueue ( this . nodeConfig , this . libs , this ) await this . skippedCIDsRetryQueue . init ( ) this . servicesThatRequireServerInitialized = true this . logInfo ( ` ` ) }
Some services require the node server to be running in order to initialize.
Some services require the node server to be running in order to initialize .
// Cannot progress without recovering spID from node's record on L1 ServiceProviderFactory contract // Retries indefinitely // SnapbackSM init (requires L1 identity) // Retries indefinitely // SyncQueue construction (requires L1 identity) // Note - passes in reference to instance of self (serviceRegistry), a very sub-optimal workaround // L2URSMRegistration (requires L1 identity) // Retries indefinitely // SkippedCIDsRetryQueue construction + init (requires SyncQueue) // Note - passes in reference to instance of self (serviceRegistry), a very sub-optimal workaround