Skip to content

Commit 003563f

Browse files
authored
feat: add ordersDomain EIP712Domain field to IexecHubAbstractService (#149)
1 parent 91566eb commit 003563f

File tree

6 files changed

+20
-18
lines changed

6 files changed

+20
-18
lines changed

src/main/java/com/iexec/commons/poco/chain/IexecHubAbstractService.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,12 @@
1717
package com.iexec.commons.poco.chain;
1818

1919
import com.iexec.commons.poco.contract.generated.IexecHubContract;
20+
import com.iexec.commons.poco.eip712.EIP712Domain;
2021
import com.iexec.commons.poco.task.TaskDescription;
2122
import com.iexec.commons.poco.utils.BytesUtils;
2223
import com.iexec.commons.poco.utils.MultiAddressHelper;
2324
import com.iexec.commons.poco.utils.Retryer;
25+
import lombok.Getter;
2426
import lombok.extern.slf4j.Slf4j;
2527
import org.apache.commons.lang3.StringUtils;
2628
import org.web3j.abi.FunctionReturnDecoder;
@@ -56,10 +58,12 @@ public abstract class IexecHubAbstractService {
5658
public static final int MAX_RETRIES = 3;
5759

5860
protected final Credentials credentials;
59-
private final String iexecHubAddress;
6061
protected final RawTransactionManager txManager;
6162
protected final PollingTransactionReceiptProcessor txReceiptProcessor;
6263
protected final IexecHubContract iexecHubContract;
64+
protected final String iexecHubAddress;
65+
@Getter
66+
private final EIP712Domain ordersDomain;
6367
private final Web3jAbstractService web3jAbstractService;
6468
private long maxNbOfPeriodsForConsensus = -1;
6569
private final long retryDelay;// ms
@@ -109,6 +113,7 @@ protected IexecHubAbstractService(
109113
);
110114

111115
iexecHubContract = getHubContract(web3jAbstractService.getContractGasProvider());
116+
ordersDomain = new EIP712Domain(web3jAbstractService.getChainId(), iexecHubAddress);
112117

113118
log.info("Abstract IexecHubService initialized (iexec proxy address) [hubAddress:{}]",
114119
iexecHubContract.getContractAddress());

src/test/java/com/iexec/commons/poco/itest/ContributeAndFinalizeTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ void init() throws CipherException, IOException {
6969
web3jService = new Web3jTestService(chainNodeAddress);
7070
iexecHubService = new IexecHubTestService(credentials, web3jService);
7171
signerService = new SignerService(web3jService.getWeb3j(), web3jService.getChainId(), credentials);
72-
ordersService = new OrdersService(signerService);
72+
ordersService = new OrdersService(iexecHubService.getOrdersDomain(), signerService);
7373
}
7474

7575
@Test

src/test/java/com/iexec/commons/poco/itest/ContributeRevealFinalizeTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ void init() throws CipherException, IOException {
7272
web3jService = new Web3jTestService(chainNodeAddress);
7373
iexecHubService = new IexecHubTestService(credentials, web3jService);
7474
signerService = new SignerService(web3jService.getWeb3j(), web3jService.getChainId(), credentials);
75-
ordersService = new OrdersService(signerService);
75+
ordersService = new OrdersService(iexecHubService.getOrdersDomain(), signerService);
7676
}
7777

7878
@SneakyThrows

src/test/java/com/iexec/commons/poco/itest/IexecHubTestService.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,15 +40,14 @@
4040
public class IexecHubTestService extends IexecHubAbstractService {
4141
static final BigInteger GAS_PRICE = BigInteger.valueOf(22_000_000_000L);
4242
static final BigInteger GAS_LIMIT = BigInteger.valueOf(1_000_000L);
43-
static final long CHAIN_ID = 65535L;
4443
static final String IEXEC_HUB_ADDRESS = "0xc4b11f41746D3Ad8504da5B383E1aB9aa969AbC7";
4544

4645
static final String ASSET_MULTI_ADDRESS = "multiAddress";
4746
static final String ASSET_CHECKSUM = Numeric.toHexStringNoPrefix(new byte[32]);
4847

49-
private static final String APP_REGISTRY_SELECTOR = "0x45b637a9";
50-
private static final String DATASET_REGISTRY_SELECTOR = "0xb1b11d2c";
51-
private static final String WORKERPOOL_REGISTRY_SELECTOR = "0x90a0f546";
48+
static final String APP_REGISTRY_SELECTOR = "0x45b637a9";
49+
static final String DATASET_REGISTRY_SELECTOR = "0xb1b11d2c";
50+
static final String WORKERPOOL_REGISTRY_SELECTOR = "0x90a0f546";
5251

5352
private final String ownerAddress;
5453
private final SignerService signerService;

src/test/java/com/iexec/commons/poco/itest/MatchOrdersTests.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ void init() throws CipherException, IOException {
7474
web3jService = new Web3jTestService(chainNodeAddress);
7575
iexecHubService = new IexecHubTestService(credentials, web3jService);
7676
signerService = new SignerService(web3jService.getWeb3j(), web3jService.getChainId(), credentials);
77-
ordersService = new OrdersService(signerService);
77+
ordersService = new OrdersService(iexecHubService.getOrdersDomain(), signerService);
7878
}
7979

8080
@Test
@@ -151,10 +151,10 @@ void shouldMatchOrdersWithSignerService() throws IOException {
151151
.isEqualTo(List.of("Transfer", "Lock", "Transfer", "Lock", "SchedulerNotice", "OrdersMatched"));
152152

153153
// orders consumption
154-
assertThat(iexecHubService.viewConsumed(signedAppOrder.computeHash(ordersService.getDomain()))).isEqualTo(BigInteger.ONE);
155-
assertThat(iexecHubService.viewConsumed(signedDatasetOrder.computeHash(ordersService.getDomain()))).isEqualTo(BigInteger.ONE);
156-
assertThat(iexecHubService.viewConsumed(signedWorkerpoolOrder.computeHash(ordersService.getDomain()))).isEqualTo(BigInteger.ONE);
157-
assertThat(iexecHubService.viewConsumed(signedRequestOrder.computeHash(ordersService.getDomain()))).isEqualTo(BigInteger.ONE);
154+
assertThat(iexecHubService.viewConsumed(signedAppOrder.computeHash(iexecHubService.getOrdersDomain()))).isEqualTo(BigInteger.ONE);
155+
assertThat(iexecHubService.viewConsumed(signedDatasetOrder.computeHash(iexecHubService.getOrdersDomain()))).isEqualTo(BigInteger.ONE);
156+
assertThat(iexecHubService.viewConsumed(signedWorkerpoolOrder.computeHash(iexecHubService.getOrdersDomain()))).isEqualTo(BigInteger.ONE);
157+
assertThat(iexecHubService.viewConsumed(signedRequestOrder.computeHash(iexecHubService.getOrdersDomain()))).isEqualTo(BigInteger.ONE);
158158

159159
// estimate gas revert
160160
// 0x694578656356352d6d617463684f72646572732d30783630 is hex string corresponding to the 'iExecV5-matchOrders-0x60' string

src/test/java/com/iexec/commons/poco/itest/OrdersService.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
import com.iexec.commons.poco.encoding.MatchOrdersDataEncoder;
2323
import com.iexec.commons.poco.order.*;
2424
import com.iexec.commons.poco.utils.BytesUtils;
25-
import lombok.Getter;
2625
import org.apache.commons.lang3.RandomStringUtils;
2726
import org.web3j.crypto.Hash;
2827

@@ -31,21 +30,20 @@
3130
import java.util.Map;
3231
import java.util.TreeMap;
3332

34-
import static com.iexec.commons.poco.itest.IexecHubTestService.*;
33+
import static com.iexec.commons.poco.itest.IexecHubTestService.GAS_PRICE;
34+
import static com.iexec.commons.poco.itest.IexecHubTestService.IEXEC_HUB_ADDRESS;
3535

3636
public class OrdersService {
3737

3838
static final String APP_NAME = "my-app";
3939
static final String DATASET_NAME = "my-dataset";
4040
static final String WORKERPOOL_NAME = "my-workerpool";
4141

42-
43-
@Getter
4442
private final EIP712Domain domain;
4543
private final SignerService signerService;
4644

47-
public OrdersService(SignerService signerService) {
48-
this.domain = new EIP712Domain(CHAIN_ID, IEXEC_HUB_ADDRESS);
45+
public OrdersService(final EIP712Domain domain, final SignerService signerService) {
46+
this.domain = domain;
4947
this.signerService = signerService;
5048
}
5149

0 commit comments

Comments
 (0)