@cfxdevkit/core / ClientManager
Class: ClientManager
Defined in: packages/core/src/clients/manager.ts:118
Unified Client Manager
This is the main orchestration layer that manages:
- Core Space and eSpace client instances
- Local development server lifecycle
- Network switching and chain coordination
- Health monitoring and error recovery
- Event coordination between components
Key Design Principles:
- Dual Chain Support: Manages both Core and eSpace clients simultaneously
- Network Awareness: Automatically switches to local chains when dev server runs
- Health Monitoring: Continuous health checks with automatic recovery
- Event Coordination: Unified event system for all components
- Type Safety: Full TypeScript support with proper error handling
Extends
EventEmitter<ClientManagerEvents>
Constructors
Constructor
new ClientManager(
config):ClientManager
Defined in: packages/core/src/clients/manager.ts:127
Parameters
config
Returns
ClientManager
Overrides
EventEmitter<ClientManagerEvents>.constructor
Properties
prefixed
staticprefixed:string|boolean
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:9
Inherited from
EventEmitter.prefixed
Methods
addListener()
addListener<
T>(event,fn,context?):this
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:45
Type Parameters
T
T extends keyof ClientManagerEvents
Parameters
event
T
fn
(…args) => void
context?
any
Returns
this
Inherited from
EventEmitter.addListener
emit()
emit<
T>(event, …args):boolean
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:32
Calls each of the listeners registered for a given event.
Type Parameters
T
T extends keyof ClientManagerEvents
Parameters
event
T
args
…ArgumentMap<ClientManagerEvents>[Extract<T, keyof ClientManagerEvents>]
Returns
boolean
Inherited from
EventEmitter.emit
eventNames()
eventNames(): keyof
ClientManagerEvents[]
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:15
Return an array listing the events for which the emitter has registered listeners.
Returns
keyof ClientManagerEvents[]
Inherited from
EventEmitter.eventNames
getCoreClient()
getCoreClient():
CoreClientInstance|null
Defined in: packages/core/src/clients/manager.ts:208
Get current Core Space client
Returns
CoreClientInstance | null
getEvmClient()
getEvmClient():
EspaceClientInstance|null
Defined in: packages/core/src/clients/manager.ts:215
Get current eSpace client
Returns
EspaceClientInstance | null
getStatus()
getStatus():
ClientManagerStatus
Defined in: packages/core/src/clients/manager.ts:222
Get comprehensive status
Returns
initialize()
initialize():
Promise<void>
Defined in: packages/core/src/clients/manager.ts:141
Initialize the Client Manager Sets up clients, server, and monitoring
Returns
Promise<void>
listenerCount()
listenerCount(
event):number
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:27
Return the number of listeners listening to a given event.
Parameters
event
keyof ClientManagerEvents
Returns
number
Inherited from
EventEmitter.listenerCount
listeners()
listeners<
T>(event): (…args) =>void[]
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:20
Return the listeners registered for a given event.
Type Parameters
T
T extends keyof ClientManagerEvents
Parameters
event
T
Returns
(…args) => void[]
Inherited from
EventEmitter.listeners
off()
off<
T>(event,fn?,context?,once?):this
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:69
Type Parameters
T
T extends keyof ClientManagerEvents
Parameters
event
T
fn?
(…args) => void
context?
any
once?
boolean
Returns
this
Inherited from
EventEmitter.off
on()
on<
T>(event,fn,context?):this
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:40
Add a listener for a given event.
Type Parameters
T
T extends keyof ClientManagerEvents
Parameters
event
T
fn
(…args) => void
context?
any
Returns
this
Inherited from
EventEmitter.on
once()
once<
T>(event,fn,context?):this
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:54
Add a one-time listener for a given event.
Type Parameters
T
T extends keyof ClientManagerEvents
Parameters
event
T
fn
(…args) => void
context?
any
Returns
this
Inherited from
EventEmitter.once
removeAllListeners()
removeAllListeners(
event?):this
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:79
Remove all listeners, or those of the specified event.
Parameters
event?
keyof ClientManagerEvents
Returns
this
Inherited from
EventEmitter.removeAllListeners
removeListener()
removeListener<
T>(event,fn?,context?,once?):this
Defined in: node_modules/.pnpm/eventemitter3@5.0.4/node_modules/eventemitter3/index.d.ts:63
Remove the listeners of a given event.
Type Parameters
T
T extends keyof ClientManagerEvents
Parameters
event
T
fn?
(…args) => void
context?
any
once?
boolean
Returns
this
Inherited from
EventEmitter.removeListener
shutdown()
shutdown():
Promise<void>
Defined in: packages/core/src/clients/manager.ts:171
Gracefully shutdown the Client Manager
Returns
Promise<void>
switchNetwork()
switchNetwork(
chainId,force?):Promise<void>
Defined in: packages/core/src/clients/manager.ts:259
Switch to a specific network
Parameters
chainId
Target chain ID
force?
boolean = false
Force switch even if node is running (for wallet operations)
Returns
Promise<void>