Package net.tomp2p.storage

Examples of net.tomp2p.storage.Data


    @Test
    public void testPutGet() throws Exception {
        for (int i = 0; i < stressTestLoopCount; i++) {
            configure();
            peer1DHT = getDHTPeer("node_1", client1Port);
            FuturePut futurePut = peer1DHT.put(Number160.createHash("key")).data(new Data("hallo")).start();
            futurePut.awaitUninterruptibly();
            assertTrue(futurePut.isSuccess());

            peer2DHT = getDHTPeer("node_2", client2Port);
            FutureGet futureGet = peer2DHT.get(Number160.createHash("key")).start();
View Full Code Here


        byte[] me13 = new byte[] { 3, 3 };
        byte[] me14 = new byte[] { 4, 4 };
        Map<PeerAddress, Map<Number640, Data>> rawData = new HashMap<PeerAddress, Map<Number640, Data>>();
        PeerAddress pa1 = Utils2.createAddress(19);
        Map<Number640, Data> test1 = new HashMap<Number640, Data>();
        test1.put(new Number640(new Number160(12),new Number160(12),new Number160(12),new Number160(0)), new Data(me12));
        test1.put(new Number640(new Number160(13),new Number160(13),new Number160(13),new Number160(0)), new Data(me13));
        test1.put(new Number640(new Number160(14),new Number160(14),new Number160(14),new Number160(0)), new Data(me14));
        rawData.put(pa1, test1);
        //
        PeerAddress pa2 = Utils2.createAddress(20);
        Map<Number640, Data> test2 = new HashMap<Number640, Data>();
        test2.put(new Number640(new Number160(12),new Number160(12),new Number160(12),new Number160(0)), new Data(me12));
        test2.put(new Number640(new Number160(13),new Number160(13),new Number160(13),new Number160(0)), new Data(me13));
        rawData.put(pa2, test2);
        //
        PeerAddress pa3 = Utils2.createAddress(21);
        Map<Number640, Data> test3 = new HashMap<Number640, Data>();
        test3.put(new Number640(new Number160(11),new Number160(11),new Number160(11),new Number160(0)), new Data(me11));
        test3.put(new Number640(new Number160(13),new Number160(13),new Number160(13),new Number160(0)), new Data(me13));
        test3.put(new Number640(new Number160(14),new Number160(14),new Number160(14),new Number160(0)), new Data(me14));
        rawData.put(pa3, test3);
        VotingSchemeDHT evs = new VotingSchemeDHT();
        Map<Number640, Data> tmp = evs.evaluate2(rawData);
        Assert.assertEquals(false, tmp.containsKey(new Number640(new Number160(11),new Number160(11),new Number160(11),new Number160(0))));
        Assert.assertEquals(true, tmp.containsKey(new Number640(new Number160(12),new Number160(12),new Number160(12),new Number160(0))));
View Full Code Here

    @Test
    public void testAdd() throws Exception {
        for (int i = 0; i < stressTestLoopCount; i++) {
            configure();
            peer1DHT = getDHTPeer("node_1", client1Port);
            FuturePut futurePut1 = peer1DHT.add(Number160.createHash("locationKey")).data(new Data("hallo1")).start();
            futurePut1.awaitUninterruptibly();
            assertTrue(futurePut1.isSuccess());

            FuturePut futurePut2 = peer1DHT.add(Number160.createHash("locationKey")).data(new Data("hallo2")).start();
            futurePut2.awaitUninterruptibly();
            assertTrue(futurePut2.isSuccess());

            shutdown();
        }
View Full Code Here

        byte[] me13 = new byte[] { 3, 3 };
        byte[] me14 = new byte[] { 4, 4 };
        Map<PeerAddress, Map<Number640, Data>> rawData = new HashMap<PeerAddress, Map<Number640, Data>>();
        PeerAddress pa1 = Utils2.createAddress(19);
        Map<Number640, Data> test1 = new HashMap<Number640, Data>();
        test1.put(new Number640(new Number160(12),new Number160(12),new Number160(12),new Number160(0)), new Data(me12));
        test1.put(new Number640(new Number160(13),new Number160(13),new Number160(13),new Number160(0)), new Data(me13));
        test1.put(new Number640(new Number160(14),new Number160(14),new Number160(14),new Number160(0)), new Data(me14));
        rawData.put(pa1, test1);
        //
        PeerAddress pa2 = Utils2.createAddress(20);
        Map<Number640, Data> test2 = new HashMap<Number640, Data>();
        test2.put(new Number640(new Number160(12),new Number160(12),new Number160(12),new Number160(0)), new Data(me11));
        test2.put(new Number640(new Number160(13),new Number160(13),new Number160(13),new Number160(0)), new Data(me13));
        rawData.put(pa2, test2);
        //
        PeerAddress pa3 = Utils2.createAddress(21);
        Map<Number640, Data> test3 = new HashMap<Number640, Data>();
        test3.put(new Number640(new Number160(11),new Number160(11),new Number160(11),new Number160(0)), new Data(me11));
        test3.put(new Number640(new Number160(13),new Number160(13),new Number160(13),new Number160(0)), new Data(me13));
        test3.put(new Number640(new Number160(14),new Number160(14),new Number160(14),new Number160(0)), new Data(me14));
       
        rawData.put(pa3, test3);
        VotingSchemeDHT evs = new VotingSchemeDHT();
        Map<Number640, Data> tmp = evs.evaluate2(rawData);
       
View Full Code Here

    @Test
    public void testAddGet() throws Exception {
        for (int i = 0; i < stressTestLoopCount; i++) {
            configure();
            peer1DHT = getDHTPeer("node_1", client1Port);
            FuturePut futurePut1 = peer1DHT.add(Number160.createHash("locationKey")).data(new Data("hallo1")).start();
            futurePut1.awaitUninterruptibly();
            assertTrue(futurePut1.isSuccess());

            FuturePut futurePut2 = peer1DHT.add(Number160.createHash("locationKey")).data(new Data("hallo2")).start();
            futurePut2.awaitUninterruptibly();
            assertTrue(futurePut2.isSuccess());

            peer2DHT = getDHTPeer("node_2", client2Port);
            FutureGet futureGet = peer2DHT.get(Number160.createHash("locationKey")).all().start();
            futureGet.awaitUninterruptibly();
            assertTrue(futureGet.isSuccess());

            assertTrue(futureGet.dataMap().values().contains(new Data("hallo1")));
            assertTrue(futureGet.dataMap().values().contains(new Data("hallo2")));
            assertTrue(futureGet.dataMap().values().size() == 2);

            shutdown();
        }
    }
View Full Code Here

            if(forcedConnectionType == ConnectionType.DIRECT) {
              SeedNodeForTesting.main(null);
            }
           
            peer1DHT = getDHTPeer("node_1" + i, client1Port);
            FuturePut futurePut1 = peer1DHT.add(Number160.createHash("locationKey")).data(new Data("hallo1")).start();
            futurePut1.awaitUninterruptibly();
            futurePut1.awaitListenersUninterruptibly();
            assertTrue(futurePut1.isSuccess());

            FuturePut futurePut2 = peer1DHT.add(Number160.createHash("locationKey")).data(new Data("hallo2")).start();
            futurePut2.awaitUninterruptibly();
            futurePut2.awaitListenersUninterruptibly();
            assertTrue(futurePut2.isSuccess());

            peer2DHT = getDHTPeer("node_2" + i, client2Port);
            Number160 contentKey = new Data("hallo1").hash();
            FutureRemove futureRemove = peer2DHT.remove(Number160.createHash("locationKey")).contentKey(contentKey)
                                                .start();
            futureRemove.awaitUninterruptibly();
            futureRemove.awaitListenersUninterruptibly();

            // That fails sometimes in direct mode and NAT
            assertTrue(futureRemove.isSuccess());

            FutureGet futureGet = peer2DHT.get(Number160.createHash("locationKey")).all().start();
            futureGet.awaitUninterruptibly();
            assertTrue(futureGet.isSuccess());
            if(!futureGet.dataMap().values().contains(new Data("hallo2"))) {
              System.err.println("raw data has the value, the evaluated not!");
            }
            assertTrue(futureGet.dataMap().values().contains(new Data("hallo2")));
            assertTrue(futureGet.dataMap().values().size() == 1);

            shutdown();
           
            if(forcedConnectionType == ConnectionType.DIRECT) {
View Full Code Here

        this.data = data;
        return this;
    }

    public AddBuilder object(Object object) throws IOException {
        return data(new Data(object));
    }
View Full Code Here

     *            The peers in this P2P network
     * @throws InterruptedException
     * @throws IOException .
     */
    private static void exmpleDirectReplication(final PeerDHT[] peers) throws IOException, InterruptedException {
        PutBuilder putBuilder = peers[1].put(Number160.ONE).data(new Data("test"));
        DirectReplication replication = new DirectReplication(peers[1].peer());
        Shutdown shutdown = replication.start(putBuilder, 1000, -1, new AutomaticFuture() {
      @Override
      public void futureCreated(BaseFuture future) {
        System.out.println("put again...");
View Full Code Here

        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
View Full Code Here

            private NavigableMap<Number640, Data> wrap(final SortedMap<Number640, Data> tmp) {
              NavigableMap<Number640, Data> retVal = new TreeMap<Number640, Data>();
                    for (Map.Entry<Number640, Data> entry : tmp.entrySet()) {
                        try {
                            String data = (String) entry.getValue().object();
                            retVal.put(entry.getKey(), new Data(new StringBoolean(tmp.size() < max, data)));
                        } catch (ClassNotFoundException e) {
                            e.printStackTrace();
                        } catch (IOException e) {
                            e.printStackTrace();
                        }
View Full Code Here

TOP

Related Classes of net.tomp2p.storage.Data

Copyright © 2018 www.massapicom. 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.