mirror of
https://github.com/oceanprotocol-archive/squid-js.git
synced 2024-02-02 15:31:51 +01:00
Prevent error messages on optional contracts.
This commit is contained in:
parent
be95da79df
commit
d6b601effd
@ -35,7 +35,7 @@ export default class ContractHandler extends Instantiable {
|
|||||||
this.setInstanceConfig(config)
|
this.setInstanceConfig(config)
|
||||||
}
|
}
|
||||||
|
|
||||||
public async get(what: string): Promise<Contract> {
|
public async get(what: string, optional: boolean = false): Promise<Contract> {
|
||||||
const where = (await this.ocean.keeper.getNetworkName()).toLowerCase()
|
const where = (await this.ocean.keeper.getNetworkName()).toLowerCase()
|
||||||
const networkId = await this.ocean.keeper.getNetworkId()
|
const networkId = await this.ocean.keeper.getNetworkId()
|
||||||
try {
|
try {
|
||||||
@ -44,7 +44,9 @@ export default class ContractHandler extends Instantiable {
|
|||||||
(await this.load(what, where, networkId))
|
(await this.load(what, where, networkId))
|
||||||
)
|
)
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
if (!optional) {
|
||||||
this.logger.error('Failed to load', what, 'from', where, err)
|
this.logger.error('Failed to load', what, 'from', where, err)
|
||||||
|
}
|
||||||
throw err
|
throw err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,7 @@ export abstract class ContractBase extends Instantiable {
|
|||||||
return this.contract.options.address
|
return this.contract.options.address
|
||||||
}
|
}
|
||||||
|
|
||||||
constructor(contractName) {
|
constructor(contractName, private optional: boolean = false) {
|
||||||
super()
|
super()
|
||||||
this.contractName = contractName
|
this.contractName = contractName
|
||||||
}
|
}
|
||||||
@ -53,7 +53,7 @@ export abstract class ContractBase extends Instantiable {
|
|||||||
protected async init(config: InstantiableConfig) {
|
protected async init(config: InstantiableConfig) {
|
||||||
this.setInstanceConfig(config)
|
this.setInstanceConfig(config)
|
||||||
const contractHandler = new ContractHandler(config)
|
const contractHandler = new ContractHandler(config)
|
||||||
this.contract = await contractHandler.get(this.contractName)
|
this.contract = await contractHandler.get(this.contractName, this.optional)
|
||||||
}
|
}
|
||||||
|
|
||||||
protected async getFromAddress(from?: string): Promise<string> {
|
protected async getFromAddress(from?: string): Promise<string> {
|
||||||
|
@ -5,7 +5,7 @@ export default class Dispenser extends ContractBase {
|
|||||||
public static async getInstance(
|
public static async getInstance(
|
||||||
config: InstantiableConfig
|
config: InstantiableConfig
|
||||||
): Promise<Dispenser> {
|
): Promise<Dispenser> {
|
||||||
const dispenser: Dispenser = new Dispenser('Dispenser')
|
const dispenser: Dispenser = new Dispenser('Dispenser', true)
|
||||||
await dispenser.init(config)
|
await dispenser.init(config)
|
||||||
return dispenser
|
return dispenser
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user