• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java Type类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.web3j.abi.datatypes.Type的典型用法代码示例。如果您正苦于以下问题:Java Type类的具体用法?Java Type怎么用?Java Type使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Type类属于org.web3j.abi.datatypes包,在下文中一共展示了Type类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: callHash

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
private byte[] callHash(String name, Type...parameters) throws InterruptedException, ExecutionException {

        Function function = new Function(name,
            Arrays.asList(parameters),
            Arrays.asList(new TypeReference<Bytes32>() {})
        );
        String encodedFunction = FunctionEncoder.encode(function);

        TransactionManager transactionManager = cfg.getTransactionManager(cfg.getMainAddress());
        String channelLibraryAddress = contractsProperties.getAddress().get("ChannelLibrary").toString();
        org.web3j.protocol.core.methods.response.EthCall ethCall = web3j.ethCall(
            Transaction.createEthCallTransaction(
                transactionManager.getFromAddress(), channelLibraryAddress, encodedFunction),
            DefaultBlockParameterName.LATEST)
            .sendAsync().get();

        String value = ethCall.getValue();
        List<Type> list = FunctionReturnDecoder.decode(value, function.getOutputParameters());
        return ((Bytes32) list.get(0)).getValue();
    }
 
开发者ID:papyrusglobal,项目名称:state-channels,代码行数:21,代码来源:HashTest.java


示例2: extractEventParameters

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public static EventValues extractEventParameters(Event event, Log log) throws Exception {
        Hashes topics = log.getTopics();
        if (topics == null || topics.size() == 0) {
//            throw new GethException("topic is empty");
            return null;
        }

        String eventSig = EventEncoder.encode(event);
        String topic = topics.get(0).getHex();
        if (!topic.equals(eventSig)) {
//            throw new GethException("topic is not match. topic signature : " + eventSig + ", log topic : " + topic);
            return null;
        }
        android.util.Log.d(TAG, "======= LOG DATA : " + byteToHex(log.getData()));

        List<Type> indexedValues = new ArrayList<>();
        List<Type> nonIndexedValues = FunctionReturnDecoder.decode(byteToHex(log.getData()), event.getNonIndexedParameters());

        List<TypeReference<Type>> indexedParameters = event.getIndexedParameters();
        for (int i = 0; i < indexedParameters.size(); i++) {
            Type value = FunctionReturnDecoder.decodeIndexedValue(topics.get(i + 1).getHex(), indexedParameters.get(i));
            indexedValues.add(value);
        }
        return new EventValues(indexedValues, nonIndexedValues);
    }
 
开发者ID:SlotNSlot,项目名称:SlotNSlot_Android,代码行数:26,代码来源:Utils.java


示例3: json

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
private static String json(Type<?> p) {
    if (p == null) return "null";
    if (p instanceof NumericType || p instanceof Bool) {
        return p.getValue().toString();
    } 
    if (p instanceof Array) {
        return "[" + json(((Array<?>) p).getValue()) + "]";
    }
    Object value = p.getValue();
    String str;
    if (value instanceof byte[]) {
        str = Numeric.toHexStringNoPrefix((byte[]) value);
    } else {
        str = value.toString();
    }
    return "\"" + StringEscapeUtils.escapeJava(str) + "\"";
}
 
开发者ID:papyrusglobal,项目名称:state-channels,代码行数:18,代码来源:CallUtil.java


示例4: convertToOrder

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
private Order convertToOrder(List<Type> list) {
  Order order = null;
  if (null != list && list.size() > 0) {
    BigInteger quantity = ((Uint256) list.get(0)).getValue();
    BigInteger price = ((Uint256) list.get(1)).getValue();
    Boolean buy = ((Bool) list.get(2)).getValue();
    String ownerAddress = ((Address) list.get(3)).toString();
    BigInteger dealNr = ((Uint256) list.get(4)).getValue();
    BigInteger extId = ((Uint256) list.get(5)).getValue();
    Order.Type type = Order.Type.BUY;
    if (!buy) {
      type = Order.Type.SELL;
    }
    order = new Order(type, quantity.intValue(), price.doubleValue() / 100, extId.intValue());
    order.setId(dealNr.intValue());
    order.setOwner(ownerAddress);
  }
  return order;
}
 
开发者ID:BSI-Business-Systems-Integration-AG,项目名称:trading-network,代码行数:20,代码来源:OrderBookService.java


示例5: deployContract

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public Address deployContract(TransactionManager transactionManager, String binary, Map<String, Address> libraries, Type... constructorArgs) throws IOException, InterruptedException, TransactionException {
    ContractLinker linker = new ContractLinker(binary);
    if (libraries != null && !libraries.isEmpty()) {
        libraries.forEach(linker::link);
    }
    linker.assertLinked();
    String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.<Type>asList(constructorArgs));
    String data = linker.getBinary() + encodedConstructor;

    EthSendTransaction transactionResponse = transactionManager.sendTransaction(
        properties.getGasPrice(), properties.getGasLimit(), null, data, BigInteger.ZERO);

    if (transactionResponse.hasError()) {
        throw new RuntimeException("Error processing transaction request: "
            + transactionResponse.getError().getMessage());
    }

    String transactionHash = transactionResponse.getTransactionHash();

    Optional<TransactionReceipt> receiptOptional =
        sendTransactionReceiptRequest(transactionHash, web3j);

    long millis = properties.getSleep().toMillis();
    int attempts = properties.getAttempts();
    for (int i = 0; i < attempts; i++) {
        if (!receiptOptional.isPresent()) {
            Thread.sleep(millis);
            receiptOptional = sendTransactionReceiptRequest(transactionHash, web3j);
        } else {
            String contractAddress = receiptOptional.get().getContractAddress();
            return new Address(contractAddress);
        }
    }
    throw new TransactionException("Transaction receipt was not generated after " + (millis * attempts / 1000)
        + " seconds for transaction: " + transactionHash);
}
 
开发者ID:papyrusglobal,项目名称:state-channels,代码行数:37,代码来源:DeployService.java


示例6: deploy

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public Address deploy(String contractName, String binName, Type... args) throws IOException, TransactionException, InterruptedException {
    System.out.println("Deploying " + contractName + "...");
    Address address = service.deployContract(m, binaryOf(binName), deployed, args);
    deployed.put(contractName,  address);
    System.out.println(contractName + ": " + address);
    return address;
}
 
开发者ID:papyrusglobal,项目名称:state-channels,代码行数:8,代码来源:Deployer.java


示例7: executeCallMultipleValueReturnObservable

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
protected Observable<List<Type>> executeCallMultipleValueReturnObservable(Function function) {
    return executeCall(function)
            .flatMap(types -> {
                if (types == null) {
                    return Observable.error(new GethException("value is null"));
                }
                return Observable.just(types);
            });
}
 
开发者ID:SlotNSlot,项目名称:SlotNSlot_Android,代码行数:10,代码来源:Contract.java


示例8: executeCallSingleValueReturnObservable

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
protected <T extends Type> Observable<T> executeCallSingleValueReturnObservable(Function function) {
    return executeCall(function)
            .flatMap(types -> {
                if (types == null || types.isEmpty()) {
                    return Observable.error(new GethException("value is null"));
                }
                return Observable.just((T) types.get(0));
            });
}
 
开发者ID:SlotNSlot,项目名称:SlotNSlot_Android,代码行数:10,代码来源:Contract.java


示例9: getBalance

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
private BigDecimal getBalance(Wallet wallet, TokenInfo tokenInfo) throws Exception {
    org.web3j.abi.datatypes.Function function = balanceOf(wallet.address);
    String responseValue = callSmartContractFunction(function, tokenInfo.address, wallet);

    List<Type> response = FunctionReturnDecoder.decode(
            responseValue, function.getOutputParameters());
    if (response.size() == 1) {
        return new BigDecimal(((Uint256) response.get(0)).getValue());
    } else {
        return null;
    }
}
 
开发者ID:TrustWallet,项目名称:trust-wallet-android,代码行数:13,代码来源:TokenRepository.java


示例10: approve

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public RemoteCall<TransactionReceipt> approve(String _spender, BigInteger _value) {
    Function function = new Function(
            "approve", 
            Arrays.<Type>asList(new org.web3j.abi.datatypes.Address(_spender),
            new org.web3j.abi.datatypes.generated.Uint256(_value)),
            Collections.<TypeReference<?>>emptyList());
    return executeRemoteCallTransaction(function);
}
 
开发者ID:web3j,项目名称:quorum,代码行数:9,代码来源:HumanStandardToken.java


示例11: transferFrom

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public RemoteCall<TransactionReceipt> transferFrom(String _from, String _to, BigInteger _value) {
    Function function = new Function(
            "transferFrom",
            Arrays.<Type>asList(new org.web3j.abi.datatypes.Address(_from),
            new org.web3j.abi.datatypes.Address(_to),
            new org.web3j.abi.datatypes.generated.Uint256(_value)),
            Collections.<TypeReference<?>>emptyList());
    return executeRemoteCallTransaction(function);
}
 
开发者ID:web3j,项目名称:quorum,代码行数:10,代码来源:HumanStandardToken.java


示例12: deploy

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public static RemoteCall<HumanStandardToken> deploy(Web3j web3j, TransactionManager transactionManager, BigInteger gasPrice, BigInteger gasLimit, BigInteger _initialAmount, String _tokenName, BigInteger _decimalUnits, String _tokenSymbol) {
    String encodedConstructor = FunctionEncoder.encodeConstructor(Arrays.<Type>asList(new org.web3j.abi.datatypes.generated.Uint256(_initialAmount),
            new org.web3j.abi.datatypes.Utf8String(_tokenName),
            new org.web3j.abi.datatypes.generated.Uint8(_decimalUnits),
            new org.web3j.abi.datatypes.Utf8String(_tokenSymbol)));
    return deployRemoteCall(HumanStandardToken.class, web3j, transactionManager, gasPrice, gasLimit, BINARY, encodedConstructor);
}
 
开发者ID:web3j,项目名称:quorum,代码行数:8,代码来源:HumanStandardToken.java


示例13: kill

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public RemoteCall<TransactionReceipt> kill() {
    Function function = new Function(
            "kill", 
            Arrays.<Type>asList(),
            Collections.<TypeReference<?>>emptyList());
    return executeRemoteCallTransaction(function);
}
 
开发者ID:web3j,项目名称:quorum,代码行数:8,代码来源:Greeter.java


示例14: P_Order

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
@SuppressWarnings("rawtypes")
P_Order(List<Type> list) {
	quantity = (Uint256) list.get(0);
	price = (Uint256) list.get(1);
	type = (Bool) list.get(2);
	address = (Address) list.get(3);
	id = (Uint256) list.get(4);
}
 
开发者ID:BSI-Business-Systems-Integration-AG,项目名称:trading-network,代码行数:9,代码来源:TestOrderBook.java


示例15: getExecutedOrderAtIndex

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
private Order getExecutedOrderAtIndex(int index, OrderBook contract) {
  List<Type> list = null;
  try {
    list = contract.executedOrders(new Uint256(BigInteger.valueOf(index))).get();
  }
  catch (InterruptedException | ExecutionException e) {
    // TODO Auto-generated catch block
    // e.printStackTrace();
  }
  Order order = null;
  if (null != list && list.size() > 0) {
    order = convertToOrder(list);
  }
  return order;
}
 
开发者ID:BSI-Business-Systems-Integration-AG,项目名称:trading-network,代码行数:16,代码来源:OrderBookService.java


示例16: allowance

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public Future<Uint256> allowance(Address _owner, Address _spender) {
    Function function = new Function("allowance", 
            Arrays.<Type>asList(_owner, _spender), 
            Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}));
    return executeCallSingleValueReturnAsync(function);
}
 
开发者ID:humaniq,项目名称:humaniq-android,代码行数:7,代码来源:HumaniqToken.java


示例17: approve

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public Future<TransactionReceipt> approve(Address _spender, Uint256 _value) {
    Function function = new Function("approve", Arrays.<Type>asList(_spender, _value), Collections.<TypeReference<?>>emptyList());
    return executeTransactionAsync(function);
}
 
开发者ID:modum-io,项目名称:tokenapp-backend,代码行数:5,代码来源:ModumToken.java


示例18: totalSupply

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public Future<Uint256> totalSupply() {
    Function function = new Function("totalSupply", 
            Arrays.<Type>asList(), 
            Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}));
    return executeCallSingleValueReturnAsync(function);
}
 
开发者ID:modum-io,项目名称:tokenapp-backend,代码行数:7,代码来源:ModumToken.java


示例19: decimals

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public Future<Uint8> decimals() {
    Function function = new Function("decimals", 
            Arrays.<Type>asList(), 
            Arrays.<TypeReference<?>>asList(new TypeReference<Uint8>() {}));
    return executeCallSingleValueReturnAsync(function);
}
 
开发者ID:humaniq,项目名称:humaniq-android,代码行数:7,代码来源:HumaniqToken.java


示例20: changeFounder

import org.web3j.abi.datatypes.Type; //导入依赖的package包/类
public Future<TransactionReceipt> changeFounder(Address newAddress) {
    Function function = new Function("changeFounder", Arrays.<Type>asList(newAddress), Collections.<TypeReference<?>>emptyList());
    return executeTransactionAsync(function);
}
 
开发者ID:humaniq,项目名称:humaniq-android,代码行数:5,代码来源:HumaniqToken.java



注:本文中的org.web3j.abi.datatypes.Type类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java Format类代码示例发布时间:2022-05-22
下一篇:
Java EventStreams类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap