1
0
mirror of https://github.com/oceanprotocol/ocean.js.git synced 2024-11-26 20:39:05 +01:00

update contracts & provider

This commit is contained in:
alexcos20 2020-09-16 05:19:15 -07:00
parent bedd07ed2a
commit fc6a515630
6 changed files with 9 additions and 47 deletions

View File

@ -20,7 +20,7 @@ before_script:
- git clone https://github.com/oceanprotocol/barge
- cd barge
- git checkout v3
- export PROVIDER_VERSION=latest
- export PROVIDER_VERSION=v0.3.0
- bash -x start_ocean.sh --no-dashboard 2>&1 > start_ocean.log &
- cd ..
- sleep 300

6
package-lock.json generated
View File

@ -939,9 +939,9 @@
}
},
"@oceanprotocol/contracts": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/@oceanprotocol/contracts/-/contracts-0.4.1.tgz",
"integrity": "sha512-gc6bCt3pq9cpk1mYDKfsZhLlaM+8yQDFmOjtmT1KGXRmnTBcvmwCQXMrL5VohFaFi7Iqio3FZtuhYyRaEjikCw=="
"version": "0.4.2",
"resolved": "https://registry.npmjs.org/@oceanprotocol/contracts/-/contracts-0.4.2.tgz",
"integrity": "sha512-IKRUe60pcBcEmQhkpusSc+w2CIEHxmyNzth+VRU5Je6lrP6/XnDaFRHjeYbSy306I/WxLjma88S1xOn86BMCOA=="
},
"@octokit/auth-token": {
"version": "2.4.2",

View File

@ -42,7 +42,7 @@
},
"dependencies": {
"@ethereum-navigator/navigator": "^0.5.0",
"@oceanprotocol/contracts": "^0.4.1",
"@oceanprotocol/contracts": "^0.4.2",
"decimal.js": "^10.2.0",
"fs": "0.0.1-security",
"node-fetch": "^2.6.1",

View File

@ -380,23 +380,19 @@ export class DataTokens {
/** Start Order
* @param {String} dataTokenAddress
* @param {String} providerAddress
* @param {String} amount
* @param {String} did
* @param {Number} serviceId
* @param {String} mpFeeAddress
* @param {String} mpFeePercentage
* @param {String} address consumer Address
* @return {Promise<string>} string
*/
public async startOrder(
dataTokenAddress: string,
providerAddress: string,
amount: string,
did: string,
serviceId: number,
mpFeeAddress: string,
mpFeePercentage: string,
address: string
): Promise<TransactionReceipt> {
const datatoken = new this.web3.eth.Contract(this.datatokensABI, dataTokenAddress, {
@ -404,14 +400,7 @@ export class DataTokens {
})
try {
const trxReceipt = await datatoken.methods
.startOrder(
providerAddress,
this.web3.utils.toWei(amount),
did,
String(serviceId),
mpFeeAddress,
this.web3.utils.toWei(mpFeePercentage)
)
.startOrder(this.web3.utils.toWei(amount), did, String(serviceId), mpFeeAddress)
.send({ from: address, gas: 600000 })
return trxReceipt
} catch (e) {
@ -422,7 +411,6 @@ export class DataTokens {
/** Search and return txid for a previous valid order with the same params
* @param {String} dataTokenAddress
* @param {String} providerAddress
* @param {String} amount
* @param {String} did
* @param {Number} serviceId
@ -432,7 +420,6 @@ export class DataTokens {
*/
public async getPreviousValidOrders(
dataTokenAddress: string,
providerAddress: string,
amount: string,
did: string,
serviceId: number,
@ -450,7 +437,6 @@ export class DataTokens {
if (
events[i].returnValues.did === did &&
String(events[i].returnValues.amount) === String(amount) &&
events[i].returnValues.receiver === providerAddress &&
String(events[i].returnValues.serviceId) === String(serviceId)
) {
const transaction = await this.web3.eth.getTransaction(events[i].transactionHash)

View File

@ -413,8 +413,7 @@ export class Assets extends Instantiable {
did: string,
serviceType: string,
consumerAddress: string,
serviceIndex = -1,
mpFeePercent?: string
serviceIndex = -1
): Promise<any> {
const res = await this.ocean.provider.initialize(
did,
@ -424,19 +423,6 @@ export class Assets extends Instantiable {
)
if (res === null) return null
const providerData = JSON.parse(res)
const { datatokens } = this.ocean
const dtCost = new BigNumber(this.web3.utils.fromWei(String(providerData.numTokens)))
const totalFee = new BigNumber(
await datatokens.calculateTotalFee(
providerData.dataToken,
this.web3.utils.fromWei(String(providerData.numTokens)),
mpFeePercent,
consumerAddress
)
)
providerData.totalFee = totalFee.toString()
providerData.dtCost = dtCost.toString()
providerData.totalCost = dtCost.plus(totalFee).toString()
return providerData
}
@ -446,7 +432,6 @@ export class Assets extends Instantiable {
* @param {String} serviceType
* @param {String} consumerAddress
* @param {Number} serviceIndex
* @param {String} mpFeePercent will be converted to Wei
* @param {String} mpAddress mp fee collector address
* @return {Promise<String>} transactionHash of the payment
*/
@ -455,7 +440,6 @@ export class Assets extends Instantiable {
serviceType: string,
consumerAddress: string,
serviceIndex = -1,
mpFeePercent?: string,
mpAddress?: string
): Promise<string> {
if (serviceIndex === -1) {
@ -465,22 +449,18 @@ export class Assets extends Instantiable {
const service = await this.getServiceByIndex(did, serviceIndex)
serviceType = service.type
}
if (!mpFeePercent) mpFeePercent = '0'
if (!mpAddress) mpAddress = '0x000000000000000000000000000000000000dEaD'
const { datatokens } = this.ocean
try {
const providerData = await this.initialize(
did,
serviceType,
consumerAddress,
serviceIndex,
mpFeePercent
serviceIndex
)
if (!providerData) return null
const service = await this.getServiceByIndex(did, serviceIndex)
const previousOrder = await datatokens.getPreviousValidOrders(
providerData.dataToken,
providerData.to,
providerData.numTokens,
didZeroX(did),
serviceIndex,
@ -491,7 +471,7 @@ export class Assets extends Instantiable {
const balance = new BigNumber(
await datatokens.balance(providerData.dataToken, consumerAddress)
)
const totalCost = new BigNumber(providerData.totalCost)
const totalCost = new BigNumber(providerData.numTokens)
if (balance.isLessThanOrEqualTo(totalCost)) {
console.error(
'Not enough funds. Needed ' +
@ -503,12 +483,10 @@ export class Assets extends Instantiable {
}
const txid = await datatokens.startOrder(
providerData.dataToken,
providerData.to,
this.web3.utils.fromWei(String(providerData.numTokens)),
didZeroX(did),
serviceIndex,
mpAddress,
mpFeePercent,
consumerAddress
)
if (txid) return txid.transactionHash

View File

@ -350,7 +350,6 @@ export class Compute extends Instantiable {
serviceIndex: number,
algorithmDid?: string,
algorithmMeta?: MetadataAlgorithm,
mpFeePercent?: string,
mpAddress?: string
): SubscribablePromise<OrderProgressStep, string> {
return new SubscribablePromise(async (observer) => {
@ -384,7 +383,6 @@ export class Compute extends Instantiable {
service.type,
consumerAccount,
-1,
mpFeePercent,
mpAddress
)
return order