From 9dc1b81812d088032f9864d5e3294ca9c3d63e7d Mon Sep 17 00:00:00 2001 From: alexcos20 Date: Tue, 20 Oct 2020 07:06:12 -0700 Subject: [PATCH] add datatokeninfo to ddo creation --- src/ddo/interfaces/DataTokenInfo.ts | 10 +++++----- src/ocean/Assets.ts | 11 +++++++++-- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/ddo/interfaces/DataTokenInfo.ts b/src/ddo/interfaces/DataTokenInfo.ts index db198fcf..14f40ff9 100644 --- a/src/ddo/interfaces/DataTokenInfo.ts +++ b/src/ddo/interfaces/DataTokenInfo.ts @@ -3,9 +3,9 @@ export interface DataTokenInfo { name: string symbol: string blob: string - decimals: number - totalSupply: number - cap: number - minter: string - minterBalance: number + decimals?: number + totalSupply?: number + cap?: number + minter?: string + minterBalance?: number } diff --git a/src/ocean/Assets.ts b/src/ocean/Assets.ts index caa217c7..84f347cb 100644 --- a/src/ocean/Assets.ts +++ b/src/ocean/Assets.ts @@ -12,6 +12,7 @@ import BigNumber from 'bignumber.js' import { Provider } from '../provider/Provider' import { isAddress } from 'web3-utils' import { MetadataMain } from '../ddo/interfaces' +import { DataTokens } from '../lib' export enum CreateProgressStep { CreatingDataToken, @@ -86,13 +87,12 @@ export class Assets extends Instantiable { if (services.length === 0) { this.logger.log('You have no services. Are you sure about this?') } - + const { datatokens } = this.ocean if (!dtAddress) { this.logger.log('Creating datatoken') observer.next(CreateProgressStep.CreatingDataToken) const metadataCacheUri = this.ocean.metadatacache.getURI() const jsonBlob = { t: 1, url: metadataCacheUri } - const { datatokens } = this.ocean dtAddress = await datatokens.create( JSON.stringify(jsonBlob), @@ -187,6 +187,13 @@ export class Assets extends Instantiable { })) as Service[] }) await ddo.addProof(this.ocean, publisher.getId()) + ddo.dataTokenInfo = { + name: await datatokens.getName(dtAddress), + symbol: await datatokens.getSymbol(dtAddress), + address: dtAddress, + blob: await datatokens.getBlob(dtAddress), + cap: parseFloat(await datatokens.getCap(dtAddress)) + } this.logger.log('Storing DDO') observer.next(CreateProgressStep.StoringDdo) // const storedDdo = await this.ocean.metadatacache.storeDDO(ddo)