本文整理汇总了Java中com.subgraph.orchid.TorClient类的典型用法代码示例。如果您正苦于以下问题:Java TorClient类的具体用法?Java TorClient怎么用?Java TorClient使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
TorClient类属于com.subgraph.orchid包,在下文中一共展示了TorClient类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createPeerGroup
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
protected PeerGroup createPeerGroup() throws TimeoutException {
if (useTor) {
TorClient torClient = new TorClient();
torClient.getConfig().setDataDirectory(directory);
return PeerGroup.newWithTor(params, vChain, torClient);
}
else
return new PeerGroup(params, vChain);
}
示例2: TorDiscovery
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
/**
* Supports finding peers through Tor.
*
* @param hostNames Host names to be examined for seed addresses.
* @param netParams Network parameters to be used for port information.
* @param torClient an already-started Tor client.
*/
public TorDiscovery(String[] hostNames, NetworkParameters netParams, TorClient torClient) {
this.hostNames = hostNames;
this.netParams = netParams;
this.torClient = torClient;
this.pathChooser = CircuitPathChooser.create(torClient.getConfig(), torClient.getDirectory());
}
示例3: createPeerGroup
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
PeerGroup createPeerGroup() throws TimeoutException {
if (useTor) {
return PeerGroup.newWithTor(netParams, vChain, new TorClient());
}
else
return new PeerGroup(netParams, vChain);
}
示例4: onBitcoinSetup
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
/**
* will be called after the awaitRunning event is called from the WalletAppKit
*/
public void onBitcoinSetup() {
bitcoin.peerGroup().addEventListener(new PeerListener());
TorClient tor = bitcoin.peerGroup().getTorClient();
if(tor != null)
tor.addInitializationListener(listener);
}
示例5: createPeerGroup
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
protected PeerGroup createPeerGroup() throws TimeoutException {
if (useTor) {
return PeerGroup.newWithTor(params, vChain, new TorClient());
}
else
return new PeerGroup(params, vChain);
}
示例6: PeerGroup
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
/**
* Creates a new PeerGroup allowing you to specify the {@link ClientConnectionManager} which is used to create new
* connections and keep track of existing ones.
*/
private PeerGroup(NetworkParameters params, @Nullable AbstractBlockChain chain, ClientConnectionManager connectionManager, @Nullable TorClient torClient) {
this.params = checkNotNull(params);
this.chain = chain;
this.fastCatchupTimeSecs = params.getGenesisBlock().getTimeSeconds();
this.wallets = new CopyOnWriteArrayList<Wallet>();
this.peerFilterProviders = new CopyOnWriteArrayList<PeerFilterProvider>();
this.torClient = torClient;
// This default sentinel value will be overridden by one of two actions:
// - adding a peer discovery source sets it to the default
// - using connectTo() will increment it by one
this.maxConnections = 0;
int height = chain == null ? 0 : chain.getBestChainHeight();
// We never request that the remote node wait for a bloom filter yet, as we have no wallets
this.versionMessage = new VersionMessage(params, height, true);
this.downloadTxDependencies = true;
memoryPool = new MemoryPool();
inactives = new PriorityQueue<PeerAddress>(1, new Comparator<PeerAddress>() {
@Override
public int compare(PeerAddress a, PeerAddress b) {
int result = backoffMap.get(a).compareTo(backoffMap.get(b));
// Sort by port if otherwise equals - for testing
if (result == 0)
result = Ints.compare(a.getPort(), b.getPort());
return result;
}
});
backoffMap = new HashMap<PeerAddress, ExponentialBackoff>();
peers = new CopyOnWriteArrayList<Peer>();
pendingPeers = new CopyOnWriteArrayList<Peer>();
channels = connectionManager;
peerDiscoverers = new CopyOnWriteArraySet<PeerDiscovery>();
peerEventListeners = new CopyOnWriteArrayList<ListenerRegistration<PeerEventListener>>();
runningBroadcasts = Collections.synchronizedSet(new HashSet<TransactionBroadcast>());
}
示例7: onBitcoinSetup
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
public void onBitcoinSetup() {
model.setWallet(bitcoin.wallet());
addressControl.addressProperty().bind(model.addressProperty());
balance.textProperty().bind(EasyBind.map(model.balanceProperty(), coin -> MonetaryFormat.BTC.noCode().format(coin).toString()));
// Don't let the user click send money when the wallet is empty.
sendMoneyOutBtn.disableProperty().bind(model.balanceProperty().isEqualTo(Coin.ZERO));
TorClient torClient = Main.bitcoin.peerGroup().getTorClient();
if (torClient != null) {
SimpleDoubleProperty torProgress = new SimpleDoubleProperty(-1);
String torMsg = "Initialising Tor";
syncItem = Main.instance.notificationBar.pushItem(torMsg, torProgress);
torClient.addInitializationListener(new TorInitializationListener() {
@Override
public void initializationProgress(String message, int percent) {
Platform.runLater(() -> {
syncItem.label.set(torMsg + ": " + message);
torProgress.set(percent / 100.0);
});
}
@Override
public void initializationCompleted() {
Platform.runLater(() -> {
syncItem.cancel();
showBitcoinSyncMessage();
});
}
});
} else {
showBitcoinSyncMessage();
}
model.syncProgressProperty().addListener(x -> {
if (model.syncProgressProperty().get() >= 1.0) {
readyToGoAnimation();
if (syncItem != null) {
syncItem.cancel();
syncItem = null;
}
} else if (syncItem == null) {
showBitcoinSyncMessage();
}
});
}
示例8: OrchidSocketImpl
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
OrchidSocketImpl(TorClient torClient) {
this.torClient = torClient;
this.fd = new FileDescriptor();
}
示例9: OrchidSocketFactory
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
public OrchidSocketFactory(TorClient torClient) {
this(torClient, true);
}
示例10: OrchidSocketImplFactory
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
public OrchidSocketImplFactory(TorClient torClient) {
this.torClient = torClient;
}
示例11: OrchidXmlRpcTransportFactory
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
public OrchidXmlRpcTransportFactory(XmlRpcClient client, TorClient torClient) {
this(client, torClient, null);
}
示例12: PeerGroup
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
/**
* Creates a new PeerGroup allowing you to specify the {@link ClientConnectionManager} which is used to create new
* connections and keep track of existing ones.
*/
private PeerGroup(NetworkParameters params, @Nullable AbstractBlockChain chain, ClientConnectionManager connectionManager, @Nullable TorClient torClient) {
this.params = checkNotNull(params);
this.chain = chain;
fastCatchupTimeSecs = params.getGenesisBlock().getTimeSeconds();
wallets = new CopyOnWriteArrayList<Wallet>();
peerFilterProviders = new CopyOnWriteArrayList<PeerFilterProvider>();
this.torClient = torClient;
// This default sentinel value will be overridden by one of two actions:
// - adding a peer discovery source sets it to the default
// - using connectTo() will increment it by one
maxConnections = 0;
int height = chain == null ? 0 : chain.getBestChainHeight();
versionMessage = new VersionMessage(params, height);
// We never request that the remote node wait for a bloom filter yet, as we have no wallets
versionMessage.relayTxesBeforeFilter = true;
downloadTxDependencies = true;
memoryPool = new MemoryPool();
inactives = new PriorityQueue<PeerAddress>(1, new Comparator<PeerAddress>() {
@Override
public int compare(PeerAddress a, PeerAddress b) {
int result = backoffMap.get(a).compareTo(backoffMap.get(b));
// Sort by port if otherwise equals - for testing
if (result == 0)
result = Ints.compare(a.getPort(), b.getPort());
return result;
}
});
backoffMap = new HashMap<PeerAddress, ExponentialBackoff>();
peers = new CopyOnWriteArrayList<Peer>();
pendingPeers = new CopyOnWriteArrayList<Peer>();
channels = connectionManager;
peerDiscoverers = new CopyOnWriteArraySet<PeerDiscovery>();
peerEventListeners = new CopyOnWriteArrayList<ListenerRegistration<PeerEventListener>>();
runningBroadcasts = Collections.synchronizedSet(new HashSet<TransactionBroadcast>());
bloomFilterMerger = new FilterMerger(DEFAULT_BLOOM_FILTER_FP_RATE);
}
示例13: getTorClient
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
/**
* Returns the {@link com.subgraph.orchid.TorClient} object for this peer group, if Tor is in use, null otherwise.
*/
@Nullable
public TorClient getTorClient() {
return torClient;
}
示例14: onBitcoinSetup
import com.subgraph.orchid.TorClient; //导入依赖的package包/类
public void onBitcoinSetup() {
model.setWallet(bitcoin.wallet());
addressControl.addressProperty().bind(model.addressProperty());
balance.textProperty().bind(EasyBind.map(model.balanceProperty(), coin -> MonetaryFormat.BTC.noCode().format(coin).toString()));
// Don't let the user click send money when the wallet is empty.
sendMoneyOutBtn.disableProperty().bind(model.balanceProperty().isEqualTo(Coin.ZERO));
TorClient torClient = Main.bitcoin.peerGroup().getTorClient();
if (torClient != null) {
SimpleDoubleProperty torProgress = new SimpleDoubleProperty(-1);
String torMsg = "Initialising Tor";
syncItem = Main.instance.notificationBar.pushItem(torMsg, torProgress);
torClient.addInitializationListener(new TorInitializationListener() {
@Override
public void initializationProgress(String message, int percent) {
Platform.runLater(() -> {
syncItem.label.set(torMsg + ": " + message);
torProgress.set(percent / 100.0);
});
}
@Override
public void initializationCompleted() {
Platform.runLater(() -> {
syncItem.cancel();
showBitcoinSyncMessage();
});
}
});
} else {
showBitcoinSyncMessage();
}
model.syncProgressProperty().addListener(x -> {
if (model.syncProgressProperty().get() >= 1.0) {
readyToGoAnimation();
if (syncItem != null) {
syncItem.cancel();
syncItem = null;
}
} else if (syncItem == null) {
showBitcoinSyncMessage();
}
});
Bindings.bindContent(outputSelect.getItems(), model.getOutputs());
outputSelect.setCellFactory(new Callback<ListView<TransactionOutput>, ListCell<TransactionOutput>>() {
@Override
public ListCell<TransactionOutput> call(
ListView<TransactionOutput> param) {
return new TextFieldListCell<TransactionOutput>(new StringConverter<TransactionOutput>() {
@Override
public String toString(TransactionOutput object) {
return (object.getValue().toPlainString() + " BTC | " + object.getAddressFromP2PKHScript(object.getParams()));
}
@Override
public TransactionOutput fromString(String string) {
// TODO Auto-generated method stub
return null;
}
});
}
});
destAddr = Main.bitcoin.wallet().currentReceiveAddress();
changeAddr = Main.bitcoin.wallet().getChangeAddress();
destination.setEditable(false);
destination.setText(destAddr.toString());
change.setEditable(false);
change.setText(changeAddr.toString());
debugInfo.setEditable(false);
debugInfo.clear();
}