Search in sources :

Example 1 with WalletData

use of com.quorum.gauge.common.config.WalletData in project quorum-acceptance-tests by ConsenSys.

the class PrivateRawSmartContract method verifyTransactionReceipt.

@Step("Transaction Receipt is present in <node> for <contractName> from external wallet <wallet>")
public void verifyTransactionReceipt(QuorumNode node, String contractName, WalletData wallet) {
    String transactionHash = mustHaveValue(DataStoreFactory.getScenarioDataStore(), contractName + "_transactionHash", String.class);
    Optional<TransactionReceipt> receipt = transactionService.getTransactionReceipt(node, transactionHash).map(ethGetTransactionReceipt -> {
        if (ethGetTransactionReceipt.getTransactionReceipt().isPresent()) {
            return ethGetTransactionReceipt;
        } else {
            throw new RuntimeException("retry");
        }
    }).retryWhen(new RetryWithDelay(20, 3000)).blockingFirst().getTransactionReceipt();
    assertThat(receipt.isPresent()).isTrue();
    assertThat(receipt.get().getBlockNumber()).isNotEqualTo(currentBlockNumber());
    final Credentials[] credentials = new Credentials[1];
    assertThatCode(() -> credentials[0] = WalletUtils.loadCredentials(wallet.getWalletPass(), wallet.getWalletPath())).doesNotThrowAnyException();
    assertThat(receipt.get().getFrom()).isEqualTo(credentials[0].getAddress());
}
Also used : Contract(org.web3j.tx.Contract) AbstractSpecImplementation(com.quorum.gauge.core.AbstractSpecImplementation) Step(com.thoughtworks.gauge.Step) Logger(org.slf4j.Logger) RetryWithDelay(com.quorum.gauge.common.RetryWithDelay) AssertionsForClassTypes.assertThatCode(org.assertj.core.api.AssertionsForClassTypes.assertThatCode) QuorumNode(com.quorum.gauge.common.QuorumNode) AssertionsForClassTypes(org.assertj.core.api.AssertionsForClassTypes) LoggerFactory(org.slf4j.LoggerFactory) Credentials(org.web3j.crypto.Credentials) TransactionReceipt(org.web3j.protocol.core.methods.response.TransactionReceipt) Service(org.springframework.stereotype.Service) WalletUtils(org.web3j.crypto.WalletUtils) WalletData(com.quorum.gauge.common.config.WalletData) Optional(java.util.Optional) AssertionsForClassTypes.assertThat(org.assertj.core.api.AssertionsForClassTypes.assertThat) DataStoreFactory(com.thoughtworks.gauge.datastore.DataStoreFactory) TransactionReceipt(org.web3j.protocol.core.methods.response.TransactionReceipt) RetryWithDelay(com.quorum.gauge.common.RetryWithDelay) Credentials(org.web3j.crypto.Credentials) Step(com.thoughtworks.gauge.Step)

Example 2 with WalletData

use of com.quorum.gauge.common.config.WalletData in project quorum-acceptance-tests by ConsenSys.

the class RawContractService method updateRawSimplePrivateContract.

public Observable<TransactionReceipt> updateRawSimplePrivateContract(int newValue, String contractAddress, WalletData wallet, QuorumNode source, String sourceNamedKey, List<String> targetNamedKeys) {
    Quorum client = connectionFactory().getConnection(source);
    Enclave enclave = buildEnclave(source, client);
    return Observable.fromCallable(() -> wallet).flatMap(walletData -> Observable.fromCallable(() -> WalletUtils.loadCredentials(walletData.getWalletPass(), walletData.getWalletPath()))).flatMap(cred -> Observable.just(quorumTransactionManager(client, cred, privacyService.id(source, sourceNamedKey), privacyService.ids(targetNamedKeys), enclave))).flatMap(qrtxm -> SimpleStorage.load(contractAddress, client, qrtxm, BigInteger.valueOf(0), DEFAULT_GAS_LIMIT).set(BigInteger.valueOf(newValue)).flowable().toObservable());
}
Also used : UnixDomainSocketFactory(org.web3j.quorum.UnixDomainSocketFactory) RetryWithDelay(com.quorum.gauge.common.RetryWithDelay) PrivateTransaction(org.web3j.quorum.methods.request.PrivateTransaction) LoggerFactory(org.slf4j.LoggerFactory) Autowired(org.springframework.beans.factory.annotation.Autowired) Constellation(org.web3j.quorum.enclave.Constellation) Credentials(org.web3j.crypto.Credentials) TransactionReceipt(org.web3j.protocol.core.methods.response.TransactionReceipt) RlpList(org.web3j.rlp.RlpList) Schedulers(io.reactivex.schedulers.Schedulers) BigInteger(java.math.BigInteger) URI(java.net.URI) RawDeployedContractTarget(com.quorum.gauge.common.RawDeployedContractTarget) Quorum(org.web3j.quorum.Quorum) Contract(org.web3j.tx.Contract) SneakyWrapper(com.quorum.gauge.sol.SneakyWrapper) QuorumNode(com.quorum.gauge.common.QuorumNode) DefaultBlockParameterName(org.web3j.protocol.core.DefaultBlockParameterName) ContractCallException(org.web3j.tx.exceptions.ContractCallException) ConcurrentHashMap(java.util.concurrent.ConcurrentHashMap) ClientReceipt(com.quorum.gauge.sol.ClientReceipt) TransactionEncoder(org.web3j.crypto.TransactionEncoder) Collectors(java.util.stream.Collectors) EthGetTransactionReceipt(org.web3j.protocol.core.methods.response.EthGetTransactionReceipt) SendResponse(org.web3j.quorum.enclave.SendResponse) CipherException(org.web3j.crypto.CipherException) Web3j(org.web3j.protocol.Web3j) EthSendTransaction(org.web3j.protocol.core.methods.response.EthSendTransaction) TransactionManager(org.web3j.tx.TransactionManager) RlpEncoder(org.web3j.rlp.RlpEncoder) java.util(java.util) FunctionEncoder(org.web3j.abi.FunctionEncoder) Response(org.web3j.protocol.core.Response) Request(org.web3j.protocol.core.Request) FillTransactionResponse(com.quorum.gauge.ext.filltx.FillTransactionResponse) ReadonlyTransactionManager(org.web3j.tx.ReadonlyTransactionManager) Charset(java.nio.charset.Charset) Service(org.springframework.stereotype.Service) EnclaveService(org.web3j.quorum.enclave.protocol.EnclaveService) WalletUtils(org.web3j.crypto.WalletUtils) Observable(io.reactivex.Observable) RlpDecoder(org.web3j.rlp.RlpDecoder) StreamUtils(org.springframework.util.StreamUtils) RlpString(org.web3j.rlp.RlpString) Logger(org.slf4j.Logger) QuorumNetworkProperty(com.quorum.gauge.common.QuorumNetworkProperty) PrivateFillTransaction(com.quorum.gauge.ext.filltx.PrivateFillTransaction) IOException(java.io.IOException) PrivateClientTransactionManager(com.quorum.gauge.ext.PrivateClientTransactionManager) SimpleStorage(com.quorum.gauge.sol.SimpleStorage) RawTransaction(org.web3j.crypto.RawTransaction) File(java.io.File) SimpleStorageDelegate(com.quorum.gauge.sol.SimpleStorageDelegate) Tessera(org.web3j.quorum.enclave.Tessera) OkHttpClient(okhttp3.OkHttpClient) Enclave(org.web3j.quorum.enclave.Enclave) RawTransactionManager(org.web3j.tx.RawTransactionManager) Numeric(org.web3j.utils.Numeric) WalletData(com.quorum.gauge.common.config.WalletData) Function(org.web3j.abi.datatypes.Function) InputStream(java.io.InputStream) Quorum(org.web3j.quorum.Quorum) Enclave(org.web3j.quorum.enclave.Enclave)

Example 3 with WalletData

use of com.quorum.gauge.common.config.WalletData in project quorum-acceptance-tests by ConsenSys.

the class RawContractService method createNRawSimplePrivateContract.

public List<Observable<RawDeployedContractTarget>> createNRawSimplePrivateContract(int count, WalletData wallet, QuorumNode source, QuorumNode[] targetNodes) throws IOException, CipherException {
    try {
        Quorum client = connectionFactory().getConnection(source);
        Credentials credentials = WalletUtils.loadCredentials(wallet.getWalletPass(), wallet.getWalletPath());
        String fromAddress = credentials.getAddress();
        BigInteger transactionCount = client.ethGetTransactionCount(fromAddress, DefaultBlockParameterName.LATEST).flowable().toObservable().blockingFirst().getTransactionCount();
        Enclave enclave = buildEnclave(source, client);
        List<Observable<RawDeployedContractTarget>> allObservableContracts = new ArrayList<>();
        int counter = 0;
        for (QuorumNode targetNode : targetNodes) {
            RawPrivateContract[] rawPrivateContracts = new RawPrivateContract[count];
            for (int j = 0; j < count; j++) {
                int arbitraryValue = new Random().nextInt(50) + 1;
                String payload = base64SimpleStorageConstructorBytecode(arbitraryValue);
                SendResponse storeRawResponse = enclave.storeRawRequest(payload, privacyService.id(source), Collections.emptyList());
                String tmHash = base64ToHex(storeRawResponse.getKey());
                RawTransaction tx = RawTransaction.createContractTransaction(transactionCount.add(BigInteger.valueOf(counter)), BigInteger.ZERO, DEFAULT_GAS_LIMIT, BigInteger.ZERO, tmHash);
                counter++;
                rawPrivateContracts[j] = new RawPrivateContract(sign(tx, credentials), arbitraryValue, targetNode);
            }
            allObservableContracts.add(Observable.fromArray(rawPrivateContracts).flatMap(raw -> sendRawPrivateTransaction(source, raw.rawTransaction, targetNode).map(b -> transactionService.waitForTransactionReceipt(targetNode, b.getTransactionHash())).map(receipt -> new RawDeployedContractTarget(raw.value, raw.node, receipt)).subscribeOn(Schedulers.io())));
        }
        return allObservableContracts;
    } catch (IOException e) {
        logger.error("RawTransaction - private", e);
        throw e;
    } catch (CipherException e) {
        logger.error("RawTransaction - private - bad credentials", e);
        throw e;
    }
}
Also used : UnixDomainSocketFactory(org.web3j.quorum.UnixDomainSocketFactory) RetryWithDelay(com.quorum.gauge.common.RetryWithDelay) PrivateTransaction(org.web3j.quorum.methods.request.PrivateTransaction) LoggerFactory(org.slf4j.LoggerFactory) Autowired(org.springframework.beans.factory.annotation.Autowired) Constellation(org.web3j.quorum.enclave.Constellation) Credentials(org.web3j.crypto.Credentials) TransactionReceipt(org.web3j.protocol.core.methods.response.TransactionReceipt) RlpList(org.web3j.rlp.RlpList) Schedulers(io.reactivex.schedulers.Schedulers) BigInteger(java.math.BigInteger) URI(java.net.URI) RawDeployedContractTarget(com.quorum.gauge.common.RawDeployedContractTarget) Quorum(org.web3j.quorum.Quorum) Contract(org.web3j.tx.Contract) SneakyWrapper(com.quorum.gauge.sol.SneakyWrapper) QuorumNode(com.quorum.gauge.common.QuorumNode) DefaultBlockParameterName(org.web3j.protocol.core.DefaultBlockParameterName) ContractCallException(org.web3j.tx.exceptions.ContractCallException) ConcurrentHashMap(java.util.concurrent.ConcurrentHashMap) ClientReceipt(com.quorum.gauge.sol.ClientReceipt) TransactionEncoder(org.web3j.crypto.TransactionEncoder) Collectors(java.util.stream.Collectors) EthGetTransactionReceipt(org.web3j.protocol.core.methods.response.EthGetTransactionReceipt) SendResponse(org.web3j.quorum.enclave.SendResponse) CipherException(org.web3j.crypto.CipherException) Web3j(org.web3j.protocol.Web3j) EthSendTransaction(org.web3j.protocol.core.methods.response.EthSendTransaction) TransactionManager(org.web3j.tx.TransactionManager) RlpEncoder(org.web3j.rlp.RlpEncoder) java.util(java.util) FunctionEncoder(org.web3j.abi.FunctionEncoder) Response(org.web3j.protocol.core.Response) Request(org.web3j.protocol.core.Request) FillTransactionResponse(com.quorum.gauge.ext.filltx.FillTransactionResponse) ReadonlyTransactionManager(org.web3j.tx.ReadonlyTransactionManager) Charset(java.nio.charset.Charset) Service(org.springframework.stereotype.Service) EnclaveService(org.web3j.quorum.enclave.protocol.EnclaveService) WalletUtils(org.web3j.crypto.WalletUtils) Observable(io.reactivex.Observable) RlpDecoder(org.web3j.rlp.RlpDecoder) StreamUtils(org.springframework.util.StreamUtils) RlpString(org.web3j.rlp.RlpString) Logger(org.slf4j.Logger) QuorumNetworkProperty(com.quorum.gauge.common.QuorumNetworkProperty) PrivateFillTransaction(com.quorum.gauge.ext.filltx.PrivateFillTransaction) IOException(java.io.IOException) PrivateClientTransactionManager(com.quorum.gauge.ext.PrivateClientTransactionManager) SimpleStorage(com.quorum.gauge.sol.SimpleStorage) RawTransaction(org.web3j.crypto.RawTransaction) File(java.io.File) SimpleStorageDelegate(com.quorum.gauge.sol.SimpleStorageDelegate) Tessera(org.web3j.quorum.enclave.Tessera) OkHttpClient(okhttp3.OkHttpClient) Enclave(org.web3j.quorum.enclave.Enclave) RawTransactionManager(org.web3j.tx.RawTransactionManager) Numeric(org.web3j.utils.Numeric) WalletData(com.quorum.gauge.common.config.WalletData) Function(org.web3j.abi.datatypes.Function) InputStream(java.io.InputStream) Quorum(org.web3j.quorum.Quorum) RawDeployedContractTarget(com.quorum.gauge.common.RawDeployedContractTarget) SendResponse(org.web3j.quorum.enclave.SendResponse) RlpString(org.web3j.rlp.RlpString) IOException(java.io.IOException) Observable(io.reactivex.Observable) Enclave(org.web3j.quorum.enclave.Enclave) CipherException(org.web3j.crypto.CipherException) RawTransaction(org.web3j.crypto.RawTransaction) BigInteger(java.math.BigInteger) QuorumNode(com.quorum.gauge.common.QuorumNode) Credentials(org.web3j.crypto.Credentials)

Example 4 with WalletData

use of com.quorum.gauge.common.config.WalletData in project quorum-acceptance-tests by ConsenSys.

the class RawContractService method updateRawClientReceiptPrivateContract.

public Observable<TransactionReceipt> updateRawClientReceiptPrivateContract(String contractAddress, WalletData wallet, QuorumNode source, String sourceNamedKey, List<String> targetNamedKeys) {
    Quorum client = connectionFactory().getConnection(source);
    Enclave enclave = buildEnclave(source, client);
    return Observable.fromCallable(() -> wallet).flatMap(walletData -> Observable.fromCallable(() -> WalletUtils.loadCredentials(walletData.getWalletPass(), walletData.getWalletPath()))).flatMap(cred -> Observable.just(quorumTransactionManager(client, cred, privacyService.id(source, sourceNamedKey), privacyService.ids(targetNamedKeys), enclave))).flatMap(qrtxm -> ClientReceipt.load(contractAddress, client, qrtxm, BigInteger.valueOf(0), DEFAULT_GAS_LIMIT).deposit(new byte[32], BigInteger.ZERO).flowable().toObservable());
}
Also used : UnixDomainSocketFactory(org.web3j.quorum.UnixDomainSocketFactory) RetryWithDelay(com.quorum.gauge.common.RetryWithDelay) PrivateTransaction(org.web3j.quorum.methods.request.PrivateTransaction) LoggerFactory(org.slf4j.LoggerFactory) Autowired(org.springframework.beans.factory.annotation.Autowired) Constellation(org.web3j.quorum.enclave.Constellation) Credentials(org.web3j.crypto.Credentials) TransactionReceipt(org.web3j.protocol.core.methods.response.TransactionReceipt) RlpList(org.web3j.rlp.RlpList) Schedulers(io.reactivex.schedulers.Schedulers) BigInteger(java.math.BigInteger) URI(java.net.URI) RawDeployedContractTarget(com.quorum.gauge.common.RawDeployedContractTarget) Quorum(org.web3j.quorum.Quorum) Contract(org.web3j.tx.Contract) SneakyWrapper(com.quorum.gauge.sol.SneakyWrapper) QuorumNode(com.quorum.gauge.common.QuorumNode) DefaultBlockParameterName(org.web3j.protocol.core.DefaultBlockParameterName) ContractCallException(org.web3j.tx.exceptions.ContractCallException) ConcurrentHashMap(java.util.concurrent.ConcurrentHashMap) ClientReceipt(com.quorum.gauge.sol.ClientReceipt) TransactionEncoder(org.web3j.crypto.TransactionEncoder) Collectors(java.util.stream.Collectors) EthGetTransactionReceipt(org.web3j.protocol.core.methods.response.EthGetTransactionReceipt) SendResponse(org.web3j.quorum.enclave.SendResponse) CipherException(org.web3j.crypto.CipherException) Web3j(org.web3j.protocol.Web3j) EthSendTransaction(org.web3j.protocol.core.methods.response.EthSendTransaction) TransactionManager(org.web3j.tx.TransactionManager) RlpEncoder(org.web3j.rlp.RlpEncoder) java.util(java.util) FunctionEncoder(org.web3j.abi.FunctionEncoder) Response(org.web3j.protocol.core.Response) Request(org.web3j.protocol.core.Request) FillTransactionResponse(com.quorum.gauge.ext.filltx.FillTransactionResponse) ReadonlyTransactionManager(org.web3j.tx.ReadonlyTransactionManager) Charset(java.nio.charset.Charset) Service(org.springframework.stereotype.Service) EnclaveService(org.web3j.quorum.enclave.protocol.EnclaveService) WalletUtils(org.web3j.crypto.WalletUtils) Observable(io.reactivex.Observable) RlpDecoder(org.web3j.rlp.RlpDecoder) StreamUtils(org.springframework.util.StreamUtils) RlpString(org.web3j.rlp.RlpString) Logger(org.slf4j.Logger) QuorumNetworkProperty(com.quorum.gauge.common.QuorumNetworkProperty) PrivateFillTransaction(com.quorum.gauge.ext.filltx.PrivateFillTransaction) IOException(java.io.IOException) PrivateClientTransactionManager(com.quorum.gauge.ext.PrivateClientTransactionManager) SimpleStorage(com.quorum.gauge.sol.SimpleStorage) RawTransaction(org.web3j.crypto.RawTransaction) File(java.io.File) SimpleStorageDelegate(com.quorum.gauge.sol.SimpleStorageDelegate) Tessera(org.web3j.quorum.enclave.Tessera) OkHttpClient(okhttp3.OkHttpClient) Enclave(org.web3j.quorum.enclave.Enclave) RawTransactionManager(org.web3j.tx.RawTransactionManager) Numeric(org.web3j.utils.Numeric) WalletData(com.quorum.gauge.common.config.WalletData) Function(org.web3j.abi.datatypes.Function) InputStream(java.io.InputStream) Quorum(org.web3j.quorum.Quorum) Enclave(org.web3j.quorum.enclave.Enclave)

Example 5 with WalletData

use of com.quorum.gauge.common.config.WalletData in project quorum-acceptance-tests by ConsenSys.

the class RawContractService method invokeGetFromDelegateInSneakyWrapper.

public Observable<TransactionReceipt> invokeGetFromDelegateInSneakyWrapper(int nonceShift, String contractAddress, WalletData wallet, QuorumNode source, String sourceNamedKey, List<String> targetNamedKeys) {
    logger.debug("Update SimpleStorageDelegateContract@{} via a private raw transaction", contractAddress);
    Quorum client = connectionFactory().getConnection(source);
    Enclave enclave = buildEnclave(source, client);
    return Observable.fromCallable(() -> wallet).flatMap(walletData -> Observable.fromCallable(() -> WalletUtils.loadCredentials(walletData.getWalletPass(), walletData.getWalletPath()))).flatMap(cred -> Observable.just(new PrivateClientTransactionManager(client, cred.getAddress(), privacyService.id(source, sourceNamedKey), targetNamedKeys.stream().map(privacyService::id).collect(Collectors.toList())))).flatMap(qrtxm -> SneakyWrapper.load(contractAddress, client, qrtxm, BigInteger.valueOf(0), DEFAULT_GAS_LIMIT).getFromDelegate().flowable().toObservable());
}
Also used : UnixDomainSocketFactory(org.web3j.quorum.UnixDomainSocketFactory) RetryWithDelay(com.quorum.gauge.common.RetryWithDelay) PrivateTransaction(org.web3j.quorum.methods.request.PrivateTransaction) LoggerFactory(org.slf4j.LoggerFactory) Autowired(org.springframework.beans.factory.annotation.Autowired) Constellation(org.web3j.quorum.enclave.Constellation) Credentials(org.web3j.crypto.Credentials) TransactionReceipt(org.web3j.protocol.core.methods.response.TransactionReceipt) RlpList(org.web3j.rlp.RlpList) Schedulers(io.reactivex.schedulers.Schedulers) BigInteger(java.math.BigInteger) URI(java.net.URI) RawDeployedContractTarget(com.quorum.gauge.common.RawDeployedContractTarget) Quorum(org.web3j.quorum.Quorum) Contract(org.web3j.tx.Contract) SneakyWrapper(com.quorum.gauge.sol.SneakyWrapper) QuorumNode(com.quorum.gauge.common.QuorumNode) DefaultBlockParameterName(org.web3j.protocol.core.DefaultBlockParameterName) ContractCallException(org.web3j.tx.exceptions.ContractCallException) ConcurrentHashMap(java.util.concurrent.ConcurrentHashMap) ClientReceipt(com.quorum.gauge.sol.ClientReceipt) TransactionEncoder(org.web3j.crypto.TransactionEncoder) Collectors(java.util.stream.Collectors) EthGetTransactionReceipt(org.web3j.protocol.core.methods.response.EthGetTransactionReceipt) SendResponse(org.web3j.quorum.enclave.SendResponse) CipherException(org.web3j.crypto.CipherException) Web3j(org.web3j.protocol.Web3j) EthSendTransaction(org.web3j.protocol.core.methods.response.EthSendTransaction) TransactionManager(org.web3j.tx.TransactionManager) RlpEncoder(org.web3j.rlp.RlpEncoder) java.util(java.util) FunctionEncoder(org.web3j.abi.FunctionEncoder) Response(org.web3j.protocol.core.Response) Request(org.web3j.protocol.core.Request) FillTransactionResponse(com.quorum.gauge.ext.filltx.FillTransactionResponse) ReadonlyTransactionManager(org.web3j.tx.ReadonlyTransactionManager) Charset(java.nio.charset.Charset) Service(org.springframework.stereotype.Service) EnclaveService(org.web3j.quorum.enclave.protocol.EnclaveService) WalletUtils(org.web3j.crypto.WalletUtils) Observable(io.reactivex.Observable) RlpDecoder(org.web3j.rlp.RlpDecoder) StreamUtils(org.springframework.util.StreamUtils) RlpString(org.web3j.rlp.RlpString) Logger(org.slf4j.Logger) QuorumNetworkProperty(com.quorum.gauge.common.QuorumNetworkProperty) PrivateFillTransaction(com.quorum.gauge.ext.filltx.PrivateFillTransaction) IOException(java.io.IOException) PrivateClientTransactionManager(com.quorum.gauge.ext.PrivateClientTransactionManager) SimpleStorage(com.quorum.gauge.sol.SimpleStorage) RawTransaction(org.web3j.crypto.RawTransaction) File(java.io.File) SimpleStorageDelegate(com.quorum.gauge.sol.SimpleStorageDelegate) Tessera(org.web3j.quorum.enclave.Tessera) OkHttpClient(okhttp3.OkHttpClient) Enclave(org.web3j.quorum.enclave.Enclave) RawTransactionManager(org.web3j.tx.RawTransactionManager) Numeric(org.web3j.utils.Numeric) WalletData(com.quorum.gauge.common.config.WalletData) Function(org.web3j.abi.datatypes.Function) InputStream(java.io.InputStream) Quorum(org.web3j.quorum.Quorum) PrivateClientTransactionManager(com.quorum.gauge.ext.PrivateClientTransactionManager) Enclave(org.web3j.quorum.enclave.Enclave)

Aggregations

WalletData (com.quorum.gauge.common.config.WalletData)13 QuorumNode (com.quorum.gauge.common.QuorumNode)12 Logger (org.slf4j.Logger)12 LoggerFactory (org.slf4j.LoggerFactory)12 Service (org.springframework.stereotype.Service)12 Credentials (org.web3j.crypto.Credentials)12 WalletUtils (org.web3j.crypto.WalletUtils)12 Contract (org.web3j.tx.Contract)12 QuorumNetworkProperty (com.quorum.gauge.common.QuorumNetworkProperty)11 RetryWithDelay (com.quorum.gauge.common.RetryWithDelay)11 Observable (io.reactivex.Observable)11 BigInteger (java.math.BigInteger)11 java.util (java.util)11 Collectors (java.util.stream.Collectors)11 Autowired (org.springframework.beans.factory.annotation.Autowired)11 RawDeployedContractTarget (com.quorum.gauge.common.RawDeployedContractTarget)10 PrivateClientTransactionManager (com.quorum.gauge.ext.PrivateClientTransactionManager)10 FillTransactionResponse (com.quorum.gauge.ext.filltx.FillTransactionResponse)10 PrivateFillTransaction (com.quorum.gauge.ext.filltx.PrivateFillTransaction)10 ClientReceipt (com.quorum.gauge.sol.ClientReceipt)10