org.bitcoinj.wallet.Wallet.addWatchedAddress()方法的使用及代码示例

x33g5p2x  于2022-02-03 转载在 其他  
字(6.5k)|赞(0)|评价(0)|浏览(100)

本文整理了Java中org.bitcoinj.wallet.Wallet.addWatchedAddress()方法的一些代码示例,展示了Wallet.addWatchedAddress()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Wallet.addWatchedAddress()方法的具体详情如下:
包路径:org.bitcoinj.wallet.Wallet
类名称:Wallet
方法名:addWatchedAddress

Wallet.addWatchedAddress介绍

[英]Same as #addWatchedAddress(Address,long) with the current time as the creation time.
[中]与#addWatchedAddress(Address,long)相同,当前时间为创建时间。

代码示例

代码示例来源:origin: ICOnator/ICOnator-backend

@Override
public synchronized void addPaymentAddressesForMonitoring(String addressString, Long addressCreationTimestamp) {
  final Address address = Address.fromBase58(bitcoinNetworkParameters, addressString);
  LOG.info("Add monitored Bitcoin Address: {}", addressString);
  wallet.addWatchedAddress(address, addressCreationTimestamp);
}

代码示例来源:origin: HashEngineering/dashj

private static void addAddr() {
  String addr = (String) options.valueOf("addr");
  if (addr == null) {
    System.err.println("You must specify an --addr to watch.");
    return;
  }
  try {
    Address address = Address.fromBase58(params, addr);
    // If no creation time is specified, assume genesis (zero).
    wallet.addWatchedAddress(address, getCreationTimeSeconds());
  } catch (AddressFormatException e) {
    System.err.println("Could not parse given address, or wrong network: " + addr);
  }
}

代码示例来源:origin: greenaddress/GreenBits

@Test
public void getWatchedAddresses() throws Exception {
  Address watchedAddress = new ECKey().toAddress(PARAMS);
  wallet.addWatchedAddress(watchedAddress);
  List<Address> watchedAddresses = wallet.getWatchedAddresses();
  assertEquals(1, watchedAddresses.size());
  assertEquals(watchedAddress, watchedAddresses.get(0));
}

代码示例来源:origin: greenaddress/GreenBits

@Test
public void removeWatchedAddresses() {
  List<Address> addressesForRemoval = new ArrayList<>();
  for (int i = 0; i < 10; i++) {
    Address watchedAddress = new ECKey().toAddress(PARAMS);
    addressesForRemoval.add(watchedAddress);
    wallet.addWatchedAddress(watchedAddress);
  }
  wallet.removeWatchedAddresses(addressesForRemoval);
  for (Address addr : addressesForRemoval)
    assertFalse(wallet.isAddressWatched(addr));
  assertFalse(wallet.isRequiringUpdateAllBloomFilter());
}

代码示例来源:origin: greenaddress/GreenBits

@Test
public void watchingScripts() throws Exception {
  // Verify that pending transactions to watched addresses are relevant
  Address watchedAddress = new ECKey().toAddress(PARAMS);
  wallet.addWatchedAddress(watchedAddress);
  Coin value = valueOf(5, 0);
  Transaction t1 = createFakeTx(PARAMS, value, watchedAddress);
  assertTrue(t1.getWalletOutputs(wallet).size() >= 1);
  assertTrue(wallet.isPendingTransactionRelevant(t1));
}

代码示例来源:origin: greenaddress/GreenBits

@Test(expected = InsufficientMoneyException.class)
public void watchingScriptsConfirmed() throws Exception {
  Address watchedAddress = new ECKey().toAddress(PARAMS);
  wallet.addWatchedAddress(watchedAddress);
  sendMoneyToWallet(BlockChain.NewBlockType.BEST_CHAIN, CENT, watchedAddress);
  assertEquals(CENT, wallet.getBalance());
  // We can't spend watched balances
  wallet.createSend(OTHER_ADDRESS, CENT);
}

代码示例来源:origin: greenaddress/GreenBits

@Before
public void setUp() throws Exception {
  BriefLogFormatter.initVerbose();
  Context ctx = new Context(PARAMS);
  myWatchedKey = new ECKey();
  myWallet = new Wallet(PARAMS);
  myKey = new ECKey();
  myKey.setCreationTimeSeconds(123456789L);
  myWallet.importKey(myKey);
  myAddress = myKey.toAddress(PARAMS);
  myWallet = new Wallet(PARAMS);
  myWallet.importKey(myKey);
  mScriptCreationTime = new Date().getTime() / 1000 - 1234;
  myWallet.addWatchedAddress(myWatchedKey.toAddress(PARAMS), mScriptCreationTime);
  myWallet.setDescription(WALLET_DESCRIPTION);
}

代码示例来源:origin: greenaddress/GreenBits

@Test
public void removeWatchedAddress() {
  Address watchedAddress = new ECKey().toAddress(PARAMS);
  wallet.addWatchedAddress(watchedAddress);
  wallet.removeWatchedAddress(watchedAddress);
  assertFalse(wallet.isAddressWatched(watchedAddress));
  assertFalse(wallet.isRequiringUpdateAllBloomFilter());
}

代码示例来源:origin: greenaddress/GreenBits

@Test
public void scriptCreationTime() throws Exception {
  Utils.setMockClock();
  long now = Utils.currentTimeSeconds();
  wallet = new Wallet(PARAMS);
  assertEquals(now, wallet.getEarliestKeyCreationTime());
  Utils.rollMockClock(-120);
  wallet.addWatchedAddress(OTHER_ADDRESS);
  wallet.freshReceiveKey();
  assertEquals(now - 120, wallet.getEarliestKeyCreationTime());
}

代码示例来源:origin: greenaddress/GreenBits

@Test
public void removeScriptsBloomFilter() throws Exception {
  List<Address> addressesForRemoval = new ArrayList<>();
  for (int i = 0; i < 10; i++) {
    Address watchedAddress = new ECKey().toAddress(PARAMS);
    addressesForRemoval.add(watchedAddress);
    wallet.addWatchedAddress(watchedAddress);
  }
  wallet.removeWatchedAddresses(addressesForRemoval);
  for (Address addr : addressesForRemoval) {
    Transaction t1 = createFakeTx(PARAMS, CENT, addr);
    TransactionOutPoint outPoint = new TransactionOutPoint(PARAMS, 0, t1);
    // Note that this has a 1e-12 chance of failing this unit test due to a false positive
    assertFalse(wallet.getBloomFilter(1e-12).contains(outPoint.unsafeBitcoinSerialize()));
    sendMoneyToWallet(BlockChain.NewBlockType.BEST_CHAIN, t1);
    assertFalse(wallet.getBloomFilter(1e-12).contains(outPoint.unsafeBitcoinSerialize()));
  }
}

代码示例来源:origin: greenaddress/GreenBits

@Test
public void watchingScriptsBloomFilter() throws Exception {
  assertFalse(wallet.isRequiringUpdateAllBloomFilter());
  Address watchedAddress = new ECKey().toAddress(PARAMS);
  Transaction t1 = createFakeTx(PARAMS, CENT, watchedAddress);
  TransactionOutPoint outPoint = new TransactionOutPoint(PARAMS, 0, t1);
  wallet.addWatchedAddress(watchedAddress);
  assertTrue(wallet.isRequiringUpdateAllBloomFilter());
  // Note that this has a 1e-12 chance of failing this unit test due to a false positive
  assertFalse(wallet.getBloomFilter(1e-12).contains(outPoint.unsafeBitcoinSerialize()));
  sendMoneyToWallet(BlockChain.NewBlockType.BEST_CHAIN, t1);
  assertTrue(wallet.getBloomFilter(1e-12).contains(outPoint.unsafeBitcoinSerialize()));
}

代码示例来源:origin: greenaddress/GreenBits

@Test
public void watchingScriptsSentFrom() throws Exception {
  int baseElements = wallet.getBloomFilterElementCount();
  Address watchedAddress = new ECKey().toAddress(PARAMS);
  wallet.addWatchedAddress(watchedAddress);
  assertEquals(baseElements + 1, wallet.getBloomFilterElementCount());
  Transaction t1 = createFakeTx(PARAMS, CENT, watchedAddress);
  Transaction t2 = createFakeTx(PARAMS, COIN, OTHER_ADDRESS);
  sendMoneyToWallet(AbstractBlockChain.NewBlockType.BEST_CHAIN, t1);
  assertEquals(baseElements + 2, wallet.getBloomFilterElementCount());
  Transaction st2 = new Transaction(PARAMS);
  st2.addOutput(CENT, OTHER_ADDRESS);
  st2.addOutput(COIN, OTHER_ADDRESS);
  st2.addInput(t1.getOutput(0));
  st2.addInput(t2.getOutput(0));
  sendMoneyToWallet(AbstractBlockChain.NewBlockType.BEST_CHAIN, st2);
  assertEquals(baseElements + 2, wallet.getBloomFilterElementCount());
  assertEquals(CENT, st2.getValueSentFromMe(wallet));
}

相关文章

微信公众号

最新文章

更多

Wallet类方法