List of usage examples for com.google.common.util.concurrent Futures successfulAsList
@Beta @CheckReturnValue public static <V> ListenableFuture<List<V>> successfulAsList( Iterable<? extends ListenableFuture<? extends V>> futures)
From source file:com.magnet.yak.Launcher.java
public static void main(String args[]) { LOGGER.trace("main : {}"); List<ListenableFuture<RegisterUserCmdOutput>> list = new ArrayList<ListenableFuture<RegisterUserCmdOutput>>(); for (int i = 1; i < 2; i++) { MMXContext context = new MMXContext("/Users/sdatar/work/git/mmxpinger/src/main/resources/", "version-1", "sujay-device" + i); MMXSettings mmxSettings = new MMXSettings(context, "aaaa"); mmxSettings.setString(MMXSettings.PROP_APIKEY, "0dc6447b-5593-43b4-8437-20f33bc80d32"); mmxSettings.setString(MMXSettings.PROP_APPID, "jcci3jaffqw"); mmxSettings.setString(MMXSettings.PROP_GUESTSECRET, "1tqkjnfuk9g3w"); mmxSettings.setString(MMXSettings.PROP_HOST, "localhost"); mmxSettings.setString(MMXSettings.PROP_PORT, "5222"); MMXClient mmxClient = new MMXClient(context, mmxSettings); RegisterUserCmdInput input = new RegisterUserCmdInput("zing" + i, "test"); try {//from w w w.j a v a 2s .c o m ListenableFuture<RegisterUserCmdOutput> future = new RegisterUserCmd().execAsync(input); list.add(future); } catch (Exception e) { e.printStackTrace(); } } ListenableFuture<List<RegisterUserCmdOutput>> lists = Futures.successfulAsList(list); try { List<RegisterUserCmdOutput> successList = lists.get(); for (RegisterUserCmdOutput output : successList) { LOGGER.trace("main : output={}", output); } try { //client.getPushManager().push("sujay2", "sujay-device2", "PlaySound", "{\r\n \"text\": \"Current app is out of date. Newer version is available.\",\r\n \"date\": \"2014-10-9\",\r\n \"sound\": \"base64-encoded-audio-content\"\r\n}\r\n"); } catch (Exception e) { e.printStackTrace(); } } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ExecutionException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
From source file:com.google.NithPoints.examples.PrintPeers.java
public static void main(String[] args) throws Exception { BriefLogFormatter.init();/*from w ww .j ava 2s . c om*/ System.out.println("=== DNS ==="); printDNS(); System.out.println("=== Version/chain heights ==="); ArrayList<InetAddress> addrs = new ArrayList<InetAddress>(); for (InetSocketAddress peer : dnsPeers) addrs.add(peer.getAddress()); System.out.println("Scanning " + addrs.size() + " peers:"); final NetworkParameters params = NetworkParameters.prodNet(); final Object lock = new Object(); final long[] bestHeight = new long[1]; List<ListenableFuture<TCPNetworkConnection>> futures = Lists.newArrayList(); for (final InetAddress addr : addrs) { final ListenableFuture<TCPNetworkConnection> future = TCPNetworkConnection.connectTo(params, new InetSocketAddress(addr, params.port), 1000 /* timeout */); futures.add(future); // Once the connection has completed version handshaking ... Futures.addCallback(future, new FutureCallback<TCPNetworkConnection>() { public void onSuccess(TCPNetworkConnection conn) { // Check the chain height it claims to have. VersionMessage ver = conn.getVersionMessage(); long nodeHeight = ver.bestHeight; synchronized (lock) { long diff = bestHeight[0] - nodeHeight; if (diff > 0) { System.out.println("Node is behind by " + diff + " blocks: " + addr); } else if (diff == 0) { System.out.println("Node " + addr + " has " + nodeHeight + " blocks"); bestHeight[0] = nodeHeight; } else if (diff < 0) { System.out.println("Node is ahead by " + Math.abs(diff) + " blocks: " + addr); bestHeight[0] = nodeHeight; } } conn.close(); } public void onFailure(Throwable throwable) { System.out.println("Failed to talk to " + addr + ": " + throwable.getMessage()); } }); } // Wait for every tried connection to finish. Futures.successfulAsList(futures).get(); }
From source file:com.google.logicoin.examples.PrintPeers.java
public static void main(String[] args) throws Exception { BriefLogFormatter.init();//from w w w.j a va2 s. c om System.out.println("=== DNS ==="); printDNS(); System.out.println("=== Version/chain heights ==="); ArrayList<InetAddress> addrs = new ArrayList<InetAddress>(); for (InetSocketAddress peer : dnsPeers) addrs.add(peer.getAddress()); System.out.println("Scanning " + addrs.size() + " peers:"); final NetworkParameters params = MainNetParams.get(); final Object lock = new Object(); final long[] bestHeight = new long[1]; List<ListenableFuture<TCPNetworkConnection>> futures = Lists.newArrayList(); for (final InetAddress addr : addrs) { final ListenableFuture<TCPNetworkConnection> future = TCPNetworkConnection.connectTo(params, new InetSocketAddress(addr, params.getPort()), 1000 /* timeout */, null); futures.add(future); // Once the connection has completed version handshaking ... Futures.addCallback(future, new FutureCallback<TCPNetworkConnection>() { public void onSuccess(TCPNetworkConnection conn) { // Check the chain height it claims to have. VersionMessage ver = conn.getVersionMessage(); long nodeHeight = ver.bestHeight; synchronized (lock) { long diff = bestHeight[0] - nodeHeight; if (diff > 0) { System.out.println("Node is behind by " + diff + " blocks: " + addr); } else if (diff == 0) { System.out.println("Node " + addr + " has " + nodeHeight + " blocks"); bestHeight[0] = nodeHeight; } else if (diff < 0) { System.out.println("Node is ahead by " + Math.abs(diff) + " blocks: " + addr); bestHeight[0] = nodeHeight; } } conn.close(); } public void onFailure(Throwable throwable) { System.out.println("Failed to talk to " + addr + ": " + throwable.getMessage()); } }); } // Wait for every tried connection to finish. Futures.successfulAsList(futures).get(); }
From source file:com.google.bitcoin.examples.PrintPeers.java
public static void main(String[] args) throws Exception { BriefLogFormatter.init();/* w ww . j a v a 2 s. com*/ System.out.println("=== DNS ==="); printDNS(); System.out.println("=== Version/chain heights ==="); ArrayList<InetAddress> addrs = new ArrayList<InetAddress>(); for (InetSocketAddress peer : dnsPeers) addrs.add(peer.getAddress()); System.out.println("Scanning " + addrs.size() + " peers:"); final NetworkParameters params = MainNetParams.get(); final Object lock = new Object(); final long[] bestHeight = new long[1]; List<ListenableFuture<Void>> futures = Lists.newArrayList(); NioClientManager clientManager = new NioClientManager(); for (final InetAddress addr : addrs) { InetSocketAddress address = new InetSocketAddress(addr, params.getPort()); final Peer peer = new Peer(params, new VersionMessage(params, 0), null, new PeerAddress(address)); final SettableFuture future = SettableFuture.create(); // Once the connection has completed version handshaking ... peer.addEventListener(new AbstractPeerEventListener() { public void onPeerConnected(Peer p, int peerCount) { // Check the chain height it claims to have. VersionMessage ver = peer.getPeerVersionMessage(); long nodeHeight = ver.bestHeight; synchronized (lock) { long diff = bestHeight[0] - nodeHeight; if (diff > 0) { System.out.println("Node is behind by " + diff + " blocks: " + addr); } else if (diff == 0) { System.out.println("Node " + addr + " has " + nodeHeight + " blocks"); bestHeight[0] = nodeHeight; } else if (diff < 0) { System.out.println("Node is ahead by " + Math.abs(diff) + " blocks: " + addr); bestHeight[0] = nodeHeight; } } // Now finish the future and close the connection future.set(null); peer.close(); } public void onPeerDisconnected(Peer p, int peerCount) { if (!future.isDone()) System.out.println("Failed to talk to " + addr); future.set(null); } }); clientManager.openConnection(address, peer); futures.add(future); } // Wait for every tried connection to finish. Futures.successfulAsList(futures).get(); }
From source file:com.dogecoin.dogecoinj.examples.PrintPeers.java
public static void main(String[] args) throws Exception { BriefLogFormatter.init();/*from w ww . j av a 2 s . co m*/ System.out.println("=== DNS ==="); printDNS(); System.out.println("=== Version/chain heights ==="); ArrayList<InetAddress> addrs = new ArrayList<InetAddress>(); for (InetSocketAddress peer : dnsPeers) addrs.add(peer.getAddress()); System.out.println("Scanning " + addrs.size() + " peers:"); final NetworkParameters params = MainNetParams.get(); final Object lock = new Object(); final long[] bestHeight = new long[1]; List<ListenableFuture<Void>> futures = Lists.newArrayList(); NioClientManager clientManager = new NioClientManager(); for (final InetAddress addr : addrs) { InetSocketAddress address = new InetSocketAddress(addr, params.getPort()); final Peer peer = new Peer(params, new VersionMessage(params, 0), null, new PeerAddress(address)); final SettableFuture<Void> future = SettableFuture.create(); // Once the connection has completed version handshaking ... peer.addEventListener(new AbstractPeerEventListener() { @Override public void onPeerConnected(Peer p, int peerCount) { // Check the chain height it claims to have. VersionMessage ver = peer.getPeerVersionMessage(); long nodeHeight = ver.bestHeight; synchronized (lock) { long diff = bestHeight[0] - nodeHeight; if (diff > 0) { System.out.println("Node is behind by " + diff + " blocks: " + addr); } else if (diff == 0) { System.out.println("Node " + addr + " has " + nodeHeight + " blocks"); bestHeight[0] = nodeHeight; } else if (diff < 0) { System.out.println("Node is ahead by " + Math.abs(diff) + " blocks: " + addr); bestHeight[0] = nodeHeight; } } // Now finish the future and close the connection future.set(null); peer.close(); } @Override public void onPeerDisconnected(Peer p, int peerCount) { if (!future.isDone()) System.out.println("Failed to talk to " + addr); future.set(null); } }); clientManager.openConnection(address, peer); futures.add(future); } // Wait for every tried connection to finish. Futures.successfulAsList(futures).get(); }
From source file:org.guldenj.examples.PrintPeers.java
public static void main(String[] args) throws Exception { BriefLogFormatter.init();/*from w w w.j a v a 2s .com*/ System.out.println("=== DNS ==="); printDNS(); System.out.println("=== Version/chain heights ==="); ArrayList<InetAddress> addrs = new ArrayList<InetAddress>(); for (InetSocketAddress peer : dnsPeers) addrs.add(peer.getAddress()); System.out.println("Scanning " + addrs.size() + " peers:"); final NetworkParameters params = MainNetParams.get(); final Object lock = new Object(); final long[] bestHeight = new long[1]; List<ListenableFuture<Void>> futures = Lists.newArrayList(); NioClientManager clientManager = new NioClientManager(); for (final InetAddress addr : addrs) { InetSocketAddress address = new InetSocketAddress(addr, params.getPort()); final Peer peer = new Peer(params, new VersionMessage(params, 0), null, new PeerAddress(address)); final SettableFuture<Void> future = SettableFuture.create(); // Once the connection has completed version handshaking ... peer.addConnectedEventListener(new PeerConnectedEventListener() { @Override public void onPeerConnected(Peer p, int peerCount) { // Check the chain height it claims to have. VersionMessage ver = peer.getPeerVersionMessage(); long nodeHeight = ver.bestHeight; synchronized (lock) { long diff = bestHeight[0] - nodeHeight; if (diff > 0) { System.out.println("Node is behind by " + diff + " blocks: " + addr); } else if (diff == 0) { System.out.println("Node " + addr + " has " + nodeHeight + " blocks"); bestHeight[0] = nodeHeight; } else if (diff < 0) { System.out.println("Node is ahead by " + Math.abs(diff) + " blocks: " + addr); bestHeight[0] = nodeHeight; } } // Now finish the future and close the connection future.set(null); peer.close(); } }); peer.addDisconnectedEventListener(new PeerDisconnectedEventListener() { @Override public void onPeerDisconnected(Peer p, int peerCount) { if (!future.isDone()) System.out.println("Failed to talk to " + addr); future.set(null); } }); clientManager.openConnection(address, peer); futures.add(future); } // Wait for every tried connection to finish. Futures.successfulAsList(futures).get(); }
From source file:org.bitcoinj.examples.PrintPeers.java
public static void main(String[] args) throws Exception { BriefLogFormatter.init();/*from w ww . j a va 2 s . c om*/ System.out.println("=== DNS ==="); printDNS(); System.out.println("=== Version/chain heights ==="); ArrayList<InetAddress> addrs = new ArrayList<InetAddress>(); for (InetSocketAddress peer : dnsPeers) addrs.add(peer.getAddress()); System.out.println("Scanning " + addrs.size() + " peers:"); final NetworkParameters params = MainNetParams.get(); final Object lock = new Object(); final long[] bestHeight = new long[1]; List<ListenableFuture<Void>> futures = Lists.newArrayList(); NioClientManager clientManager = new NioClientManager(); for (final InetAddress addr : addrs) { InetSocketAddress address = new InetSocketAddress(addr, params.getPort()); final Peer peer = new Peer(params, new VersionMessage(params, 0), null, new PeerAddress(params, address)); final SettableFuture<Void> future = SettableFuture.create(); // Once the connection has completed version handshaking ... peer.addConnectedEventListener(new PeerConnectedEventListener() { @Override public void onPeerConnected(Peer p, int peerCount) { // Check the chain height it claims to have. VersionMessage ver = peer.getPeerVersionMessage(); long nodeHeight = ver.bestHeight; synchronized (lock) { long diff = bestHeight[0] - nodeHeight; if (diff > 0) { System.out.println("Node is behind by " + diff + " blocks: " + addr); } else if (diff == 0) { System.out.println("Node " + addr + " has " + nodeHeight + " blocks"); bestHeight[0] = nodeHeight; } else if (diff < 0) { System.out.println("Node is ahead by " + Math.abs(diff) + " blocks: " + addr); bestHeight[0] = nodeHeight; } } // Now finish the future and close the connection future.set(null); peer.close(); } }); peer.addDisconnectedEventListener(new PeerDisconnectedEventListener() { @Override public void onPeerDisconnected(Peer p, int peerCount) { if (!future.isDone()) System.out.println("Failed to talk to " + addr); future.set(null); } }); clientManager.openConnection(address, peer); futures.add(future); } // Wait for every tried connection to finish. Futures.successfulAsList(futures).get(); }
From source file:com.google.worldcoin.examples.PrintPeers.java
public static void main(String[] args) throws Exception { BriefLogFormatter.init();/*from w ww . jav a 2s.c om*/ System.out.println("=== DNS ==="); printDNS(); System.out.println("=== Version/chain heights ==="); ArrayList<InetAddress> addrs = new ArrayList<InetAddress>(); for (InetSocketAddress peer : dnsPeers) addrs.add(peer.getAddress()); //addrs.add(convertAddress()); System.out.println("Scanning " + addrs.size() + " peers:"); final NetworkParameters params = MainNetParams.get(); final Object lock = new Object(); final long[] bestHeight = new long[1]; List<ListenableFuture<Void>> futures = Lists.newArrayList(); NioClientManager clientManager = new NioClientManager(); for (final InetAddress addr : addrs) { InetSocketAddress address = new InetSocketAddress(addr, params.getPort()); final Peer peer = new Peer(params, new VersionMessage(params, 0), null, new PeerAddress(address)); final SettableFuture future = SettableFuture.create(); // Once the connection has completed version handshaking ... peer.addEventListener(new AbstractPeerEventListener() { public void onPeerConnected(Peer p, int peerCount) { // Check the chain height it claims to have. VersionMessage ver = peer.getPeerVersionMessage(); long nodeHeight = ver.bestHeight; synchronized (lock) { long diff = bestHeight[0] - nodeHeight; if (diff > 0) { System.out.println("Node is behind by " + diff + " blocks: " + addr); } else if (diff == 0) { System.out.println("Node " + addr + " has " + nodeHeight + " blocks"); bestHeight[0] = nodeHeight; } else if (diff < 0) { System.out.println("Node is ahead by " + Math.abs(diff) + " blocks: " + addr); bestHeight[0] = nodeHeight; } } // Now finish the future and close the connection future.set(null); peer.close(); } public void onPeerDisconnected(Peer p, int peerCount) { if (!future.isDone()) System.out.println("Failed to talk to " + addr); future.set(null); } }); clientManager.start(); clientManager.openConnection(address, peer); futures.add(future); } // Wait for every tried connection to finish. Futures.successfulAsList(futures).get(); }
From source file:com.google.litecoin.examples.PrintPeers.java
public static void main(String[] args) throws Exception { BriefLogFormatter.init();//from w w w .ja v a 2 s. c om System.out.println("=== IRC ==="); printIRC(); System.out.println("=== DNS ==="); printDNS(); System.out.println("=== Version/chain heights ==="); ArrayList<InetAddress> addrs = new ArrayList<InetAddress>(); for (InetSocketAddress peer : dnsPeers) addrs.add(peer.getAddress()); for (InetSocketAddress peer : ircPeers) addrs.add(peer.getAddress()); System.out.println("Scanning " + addrs.size() + " peers:"); final NetworkParameters params = NetworkParameters.prodNet(); final Object lock = new Object(); final long[] bestHeight = new long[1]; List<ListenableFuture<TCPNetworkConnection>> futures = Lists.newArrayList(); for (final InetAddress addr : addrs) { final ListenableFuture<TCPNetworkConnection> future = TCPNetworkConnection.connectTo(params, new InetSocketAddress(addr, params.port), 1000 /* timeout */); futures.add(future); // Once the connection has completed version handshaking ... Futures.addCallback(future, new FutureCallback<TCPNetworkConnection>() { public void onSuccess(TCPNetworkConnection conn) { // Check the chain height it claims to have. VersionMessage ver = conn.getVersionMessage(); long nodeHeight = ver.bestHeight; synchronized (lock) { long diff = bestHeight[0] - nodeHeight; if (diff > 0) { System.out.println("Node is behind by " + diff + " blocks: " + addr); } else if (diff == 0) { System.out.println("Node " + addr + " has " + nodeHeight + " blocks"); bestHeight[0] = nodeHeight; } else if (diff < 0) { System.out.println("Node is ahead by " + Math.abs(diff) + " blocks: " + addr); bestHeight[0] = nodeHeight; } } conn.close(); } public void onFailure(Throwable throwable) { System.out.println("Failed to talk to " + addr + ": " + throwable.getMessage()); } }); } // Wait for every tried connection to finish. Futures.successfulAsList(futures).get(); }
From source file:bear.console.ConsolesDivider.java
public void await(int sec) { try {/*from w ww . jav a 2 s . co m*/ Futures.successfulAsList(futures).get(sec, TimeUnit.SECONDS); } catch (Exception e) { throw Exceptions.runtime(e); } }