Skip to content

Commit

Permalink
feat(reku): add some debug logs
Browse files Browse the repository at this point in the history
  • Loading branch information
murongg committed Jan 25, 2025
1 parent 80ded6e commit 6536db7
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 0 deletions.
3 changes: 3 additions & 0 deletions packages/reku/src/provider/contract.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import type { ContractAddress, Fn } from '@ora-io/utils'
import type { Interface, InterfaceAbi } from 'ethers'
import { ethers } from 'ethers'
import { debug } from '../debug'

export class RekuContractManager {
private _contract?: ethers.Contract
Expand All @@ -22,12 +23,14 @@ export class RekuContractManager {
if (!this._listeners.has(event)) {
this._listeners.set(event, listener)
this._contract?.on(event, listener)
debug('add listener %s %s', this.address, event)
}
}

removeListener(event: ethers.ContractEventName, listener: ethers.Listener) {
this._contract?.removeListener(event, listener)
this._listeners.delete(event)
debug('remove listener %s %s', this.address, event)
}

removeAllListeners() {
Expand Down
10 changes: 10 additions & 0 deletions packages/reku/src/provider/provider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,11 +64,13 @@ export class RekuProviderManager {

const contract = new RekuContractManager(address, abi, this._provider)
this._contracts.set(address, contract)
debug('add contract %s', address)
return contract
}
else if (abi instanceof ethers.Contract) {
const contract = new RekuContractManager(address, abi.interface, this._provider)
this._contracts.set(address, contract)
debug('add contract %s', address)
return contract
}
else {
Expand All @@ -87,20 +89,23 @@ export class RekuProviderManager {
}

removeAllListeners() {
debug('remove all listeners')
this._provider?.removeAllListeners()
this._contracts.forEach((contract) => {
contract.removeAllListeners()
})
}

removeAllContract() {
debug('remove all contracts')
this._contracts.forEach((contract) => {
contract.removeAllListeners()
})
this._contracts.clear()
}

retryAllListeners() {
debug('retry all listeners')
this._contracts.forEach((contract) => {
contract.retryAllListeners()
})
Expand All @@ -110,21 +115,25 @@ export class RekuProviderManager {
if (!this._event)
this._event = new EventEmitter()

debug('on %s', event)
this._event?.on(event, listener)
}

once(event: RekuProviderManagerEvent, listener: (...args: any[]) => void) {
if (!this._event)
this._event = new EventEmitter()

debug('once %s', event)
this._event?.once(event, listener)
}

removeEvent(event: RekuProviderManagerEvent, listener: (...args: any[]) => void) {
debug('remove event %s', event)
this._event?.removeListener(event, listener)
}

removeAllEvents() {
debug('remove all events')
this._event?.removeAllListeners()
}

Expand Down Expand Up @@ -185,6 +194,7 @@ export class RekuProviderManager {
.catch((err) => {
this.reconnect()
this._event?.emit('error', err)
debug('heartbeat error: %s', err)
})
}, this._heartbeatInterval)
}
Expand Down

0 comments on commit 6536db7

Please sign in to comment.