filter.insert(point.unsafeBitcoinSerialize()); return filter; } finally {
filter.insert(point.unsafeBitcoinSerialize()); return filter; } finally {
filter.insert(point.unsafeBitcoinSerialize()); return filter; } finally {
filter.insert(point.unsafeBitcoinSerialize()); return filter; } finally {
@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())); } }
boolean isSendingToPubKeys = script.isSentToRawPubKey() || script.isSentToMultiSig(); if (flag == BloomUpdate.UPDATE_ALL || (flag == BloomUpdate.UPDATE_P2PUBKEY_ONLY && isSendingToPubKeys)) insert(output.getOutPointFor().unsafeBitcoinSerialize()); found = true; if (contains(input.getOutpoint().unsafeBitcoinSerialize())) { return true;
boolean isSendingToPubKeys = script.isSentToRawPubKey() || script.isSentToMultiSig(); if (flag == BloomUpdate.UPDATE_ALL || (flag == BloomUpdate.UPDATE_P2PUBKEY_ONLY && isSendingToPubKeys)) insert(output.getOutPointFor().unsafeBitcoinSerialize()); found = true; if (contains(input.getOutpoint().unsafeBitcoinSerialize())) { return true;
boolean isSendingToPubKeys = script.isSentToRawPubKey() || script.isSentToMultiSig(); if (flag == BloomUpdate.UPDATE_ALL || (flag == BloomUpdate.UPDATE_P2PUBKEY_ONLY && isSendingToPubKeys)) insert(output.getOutPointFor().unsafeBitcoinSerialize()); found = true; if (contains(input.getOutpoint().unsafeBitcoinSerialize())) { return true;
boolean isSendingToPubKeys = script.isSentToRawPubKey() || script.isSentToMultiSig(); if (flag == BloomUpdate.UPDATE_ALL || (flag == BloomUpdate.UPDATE_P2PUBKEY_ONLY && isSendingToPubKeys)) insert(output.getOutPointFor().unsafeBitcoinSerialize()); found = true; if (contains(input.getOutpoint().unsafeBitcoinSerialize())) { return true;
@Test public void marriedKeychainBloomFilter() throws Exception { createMarriedWallet(2, 2); Address address = wallet.currentReceiveAddress(); assertTrue(wallet.getBloomFilter(0.001).contains(address.getHash160())); Transaction t1 = createFakeTx(PARAMS, CENT, address); TransactionOutPoint outPoint = new TransactionOutPoint(PARAMS, 0, t1); assertFalse(wallet.getBloomFilter(0.001).contains(outPoint.unsafeBitcoinSerialize())); sendMoneyToWallet(BlockChain.NewBlockType.BEST_CHAIN, t1); assertTrue(wallet.getBloomFilter(0.001).contains(outPoint.unsafeBitcoinSerialize())); }
@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())); }
assertTrue(p3.lastReceivedFilter.contains(outpoint.unsafeBitcoinSerialize()));