Examples of FuturePut


Examples of net.tomp2p.dht.FuturePut

    private static void putDST(final PeerDHT peer, final int index, final String word, final Interval interval,
            final int height) throws IOException {
        Interval inter = interval;
        for (int i = 0; i <= height; i++) {
            Number160 key = Number160.createHash(inter.toString());
            FuturePut futurePut = peer.put(key).data(new Number160(index), new Data(word)).start();
            futurePut.awaitUninterruptibly();
            System.out.println("stored " + word + " in " + inter + " status: " + futurePut.isSuccess());
            inter = inter.split(index);
        }
        System.out.println("for DHT.put() we used " + (height + 1) + " DHT calls");
    }
View Full Code Here

Examples of net.tomp2p.dht.FuturePut

        new IndirectReplication(peer3).start();
       
       
        PeerDHT[] peers = new PeerDHT[] {peer1, peer2, peer3};
        //
        FuturePut futurePut = peer1.put(new Number160(nr3)).data(new Data("store on peer1")).start();
        futurePut.awaitUninterruptibly();
        FutureDigest futureDigest = peer1.digest(new Number160(nr3)).start();
        futureDigest.awaitUninterruptibly();
        System.out.println("we found the data on " + futureDigest.rawDigest().size() + " peers");
        // now peer1 gets to know peer2, transfer the data
        peer1.peer().bootstrap().peerAddress(peer2.peerAddress()).start();
View Full Code Here

Examples of net.tomp2p.dht.FuturePut

        Map<Number160, Data> contentMap = new HashMap<Number160, Data>();
        System.out.println("first we store 1000 items from 0-999 under key " + nr1);
        for (int i = 0; i < nrPeers; i++) {
            contentMap.put(new Number160(i), new Data("data " + i));
        }
        FuturePut futurePut = peers[peer30].put(nr1).dataMapContent(contentMap)
                .domainKey(Number160.createHash("my_domain")).start();
        futurePut.awaitUninterruptibly();
        // store another one
        Number160 nr2 = new Number160(RND);
        contentMap = new HashMap<Number160, Data>();
        System.out.println("then we store 1000 items from 800-1799 under key " + nr2);
        for (int i = range1; i < range2; i++) {
            contentMap.put(new Number160(i), new Data("data " + i));
        }
        futurePut = peers[peer60].put(nr2).dataMapContent(contentMap).domainKey(Number160.createHash("my_domain"))
                .start();
        futurePut.awaitUninterruptibly();
        // digest the first entry
        FutureDigest futureDigest = peers[peer20].digest(nr1).all().returnBloomFilter()
                .domainKey(Number160.createHash("my_domain")).start();
        futureDigest.awaitUninterruptibly();
        // we have the bloom filter for the content keys:
View Full Code Here

Examples of net.tomp2p.dht.FuturePut

            IndirectReplication i3 = new IndirectReplication(p3);
            i3.start();
           
            Utils2.perfectRouting(p1, p2, p3);
            Number160 locationKey = Number160.createHash("test1");
            FuturePut fp = p2.put(locationKey).data(new Data("hallo")).requestP2PConfiguration(new RequestP2PConfiguration(2, 10, 0)).start();
            fp.awaitUninterruptibly();
            getReplicasCount(locationKey, p1, p2, p3);
            //
            p3.peer().announceShutdown().start().awaitUninterruptibly();
            p3.shutdown().awaitUninterruptibly();
            Thread.sleep(500);
View Full Code Here

Examples of net.tomp2p.dht.FuturePut

           
           
           
            Utils2.perfectRouting(p1, p2, p3);
            Number160 locationKey = Number160.createHash("test1");
            FuturePut fp = p2.put(locationKey).data(new Data("hallo")).requestP2PConfiguration(new RequestP2PConfiguration(2, 10, 0)).start();
            fp.awaitUninterruptibly();
            getReplicasCount(locationKey, p1, p2, p3);
           
            p3.peer().announceShutdown().start().awaitUninterruptibly();
            p3.shutdown().awaitUninterruptibly();
            p1.peer().announceShutdown().start().awaitUninterruptibly();
View Full Code Here

Examples of net.tomp2p.dht.FuturePut

            for(PeerDHT peer:peers) {
                System.err.println(peer.peerAddress());
            }
            //store data, the two peers do not know each other
            Data data = new Data("Test");
            FuturePut futureDHT = master.put(Number160.createHash("2")).data(data).start();
            futureDHT.awaitUninterruptibly();
            futureDHT.futureRequests().awaitUninterruptibly();
            //now, do the routing, so that each peers know each other. The content should be moved
            Assert.assertEquals(false, peers[1].storageLayer().contains(new Number640(Number160.createHash("2"), Number160.ZERO, Number160.ZERO, Number160.ZERO)));
            Utils2.perfectRouting(peers);
            //we should see now the forward replication
            Thread.sleep(1000);
View Full Code Here

Examples of net.tomp2p.dht.FuturePut

            }
            PeerAddress closest = tmp.iterator().next();
            System.err.println("closest to " + locationKey + " is " + closest);
            // store
            Data data = new Data("Test");
            FuturePut futureDHT = master.put(locationKey).data(data).start();
            futureDHT.awaitUninterruptibly();
            futureDHT.futureRequests().awaitUninterruptibly();
            Assert.assertEquals(true, futureDHT.isSuccess());
            List<FutureBootstrap> tmp2 = new ArrayList<FutureBootstrap>();
            Utils2.perfectRouting(peers);
            //for (int i = 0; i < peers.length; i++) {
            //    if (peers[i] != master) {
            //        tmp2.add(peers[i].bootstrap().setPeerAddress(master.getPeerAddress()).start());
View Full Code Here

Examples of net.tomp2p.dht.FuturePut

      }
      PeerMapConfiguration pmc = new PeerMapConfiguration(Number160.createHash(rnd.nextInt()));
      slave = new PeerBuilderDHT(new PeerBuilder(Number160.ONE).peerMap(new PeerMap(pmc)).ports(13337).start())
          .start();
      printMapStatus(slave, peers);
      FuturePut futurePut = peers[8].put(slave.peerID()).data(new Data("hello")).start().awaitUninterruptibly();
      futurePut.futureRequests().awaitUninterruptibly();
      Assert.assertTrue(futurePut.isSuccess());
      Assert.assertFalse(slave.storageLayer().contains(
          new Number640(slave.peerID(), Number160.ZERO, Number160.ZERO, Number160.ZERO)));
      System.err.println("DONE!");
    } finally {
      if (master != null) {
View Full Code Here

Examples of net.tomp2p.dht.FuturePut

      // wait for maintenance to kick in
      Thread.sleep(4000);

      printMapStatus(unreachablePeer, peers);

      FuturePut futurePut = peers[8].put(unreachablePeer.peerID()).data(new Data("hello")).start()
          .awaitUninterruptibly();
      // the relayed one is the slowest, so we need to wait for it!
      futurePut.futureRequests().awaitUninterruptibly();
      System.err.println(futurePut.failedReason());

      Assert.assertTrue(futurePut.isSuccess());
      // we cannot see the peer in futurePut.rawResult, as the relayed is the slowest and we finish
      // earlier than that.
      Assert.assertTrue(unreachablePeer.storageLayer().contains(
          new Number640(unreachablePeer.peerID(), Number160.ZERO, Number160.ZERO, Number160.ZERO)));
      System.err.println("DONE!");
View Full Code Here

Examples of net.tomp2p.dht.FuturePut

      RequestP2PConfiguration rp = new RequestP2PConfiguration(1, 1, 0);

      System.err.println("Unreachable: " + unreachablePeer.peerID());
      System.err.println("Relay: " + master.peerID());

      FuturePut futurePut = peers[8].put(unreachablePeer.peerID()).data(new Data("hello")).routingConfiguration(r)
          .requestP2PConfiguration(rp).start().awaitUninterruptibly();
      // the relayed one is the slowest, so we need to wait for it!
      futurePut.futureRequests().awaitUninterruptibly();
      System.err.println(futurePut.failedReason());

      Assert.assertTrue(futurePut.isSuccess());
      Assert.assertTrue(unreachablePeer.storageLayer().contains(
          new Number640(unreachablePeer.peerID(), Number160.ZERO, Number160.ZERO, Number160.ZERO)));

      FutureGet futureGet = peers[8].get(unreachablePeer.peerID()).routingConfiguration(r).requestP2PConfiguration(rp)
          .start();
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.