Core constructor
Core({
- String? projectId,
- String? relayUrl,
- Logger? logger,
- IKeyChain? keychain,
- IHeartBeat? heartbeat,
- ICrypto? crypto,
- IJsonRpcHistory? history,
- IExpirer? expirer,
- IRelayer? relayer,
- IPairing? pairing,
- IKeyValueStorage? storage,
- String? database,
Implementation
Core({
this.projectId,
this.relayUrl,
Logger? logger,
IKeyChain? keychain,
IHeartBeat? heartbeat,
ICrypto? crypto,
IJsonRpcHistory? history,
IExpirer? expirer,
IRelayer? relayer,
IPairing? pairing,
IKeyValueStorage? storage,
String? database,
}) : logger = logger ?? Logger(),
heartbeat = heartbeat ?? HeartBeat(),
events = EventEmitter() {
this.crypto = crypto ?? Crypto(core: this, logger: logger);
this.history = history ?? JsonRpcHistory(core: this, logger: logger);
this.expirer = expirer ?? Expirer(core: this, logger: logger);
this.storage = storage ??
KeyValueStorage(
database: database ?? CoreStorageOptions.database,
);
this.relayer = relayer ??
Relayer(
core: this,
logger: logger,
relayUrl: relayUrl,
projectId: projectId,
);
this.pairing = pairing ?? Pairing(core: this, logger: logger);
}