Package net.tomp2p.futures

Examples of net.tomp2p.futures.FutureDigest


        .contentKey(parameters.getCKey()).setVersionKey(parameters.getVersionKey())
        .keyPair(parameters.getProtectionKeys()).start();
  }

  public NavigableMap<Number640, Number160> getDigest(IParameters parameters) {
    FutureDigest futureDigest = getDigestUnblocked(parameters);
    FutureDigestListener listener = new FutureDigestListener(parameters);
    futureDigest.addListener(listener);
    return listener.awaitAndGet();
  }
View Full Code Here


  @Override
  public void operationComplete(FutureRemove future) throws Exception {
    logger.trace("Start verification of remove. '{}'", parameters.toString());
    // get data to verify if everything went correct
    FutureDigest digestFuture = dataManager.getDigestUnblocked(parameters);
    digestFuture.addListener(new BaseFutureAdapter<FutureDigest>() {
      @Override
      public void operationComplete(FutureDigest future) throws Exception {
        if (future.getDigest() == null) {
          retryRemove();
        } else if (!future.getDigest().keyDigest().isEmpty()) {
View Full Code Here

  /**
   * Loads digest and triggers a check.
   */
  private void verifyPut() {
    // get data to verify if everything went correct
    FutureDigest digestFuture = dataManager.getDigestUnblocked(parameters);
    digestFuture.addListener(new BaseFutureAdapter<FutureDigest>() {
      @Override
      public void operationComplete(FutureDigest future) throws Exception {
        if (future.isFailed() || future.getRawDigest() == null || future.getRawDigest().isEmpty()) {
          logger.error("Put verification failed. Could not get digest. '{}'", parameters.toString());
          notifyFailure();
View Full Code Here

    futureGet.awaitUninterruptibly();
    Assert.assertTrue(futureGet.isSuccess());
    Assert.assertTrue(ttl > futureGet.getData().ttlSeconds());

    // check decrement of ttl through a get meta
    FutureDigest futureDigest = p1.digest(lKey).setDomainKey(dKey).setContentKey(cKey)
        .setVersionKey(vKey).returnMetaValues().start();
    futureDigest.awaitUninterruptibly();
    Assert.assertTrue(futureDigest.isSuccess());
    Data dataMeta = futureDigest.getDigest().dataMap().values().iterator().next();
    Assert.assertTrue(ttl > dataMeta.ttlSeconds());

    // wait again a moment, till data gets expired
    Thread.sleep(2000);
View Full Code Here

            .createHash(contentKey), Number160.ZERO))
        .to(new Number640(Number160.createHash(locationKey), Number160.ZERO, Number160
            .createHash(contentKey), Number160.MAX_VALUE)).start();
    futureRemove.awaitUninterruptibly();

    FutureDigest futureDigest = p1
        .digest(Number160.createHash(locationKey))
        .from(new Number640(Number160.createHash(locationKey), Number160.ZERO, Number160
            .createHash(contentKey), Number160.ZERO))
        .to(new Number640(Number160.createHash(locationKey), Number160.ZERO, Number160
            .createHash(contentKey), Number160.MAX_VALUE)).start();
    futureDigest.awaitUninterruptibly();

    assertTrue(futureDigest.getDigest().keyDigest().isEmpty());

    p1.shutdown().awaitUninterruptibly();
    p2.shutdown().awaitUninterruptibly();
  }
View Full Code Here

    FutureRemove futureRemove = p1.remove(Number160.createHash(locationKey)).setDomainKey(Number160.ZERO)
        .contentKey(Number160.createHash(contentKey)).setVersionKey(data.getVersionKey()).start();
    futureRemove.awaitUninterruptibly();

    FutureDigest futureDigest = p1.digest(Number160.createHash(locationKey))
        .setContentKey(Number160.createHash(contentKey)).setVersionKey(data.getVersionKey()).start();
    futureDigest.awaitUninterruptibly();

    assertTrue(futureDigest.getDigest().keyDigest().isEmpty());

    p1.shutdown().awaitUninterruptibly();
    p2.shutdown().awaitUninterruptibly();
  }
View Full Code Here

    FutureRemove futureRemove = p1.remove(lKey).setDomainKey(dKey).contentKey(cKey).start();
    futureRemove.awaitUninterruptibly();

    // check with a normal digest
    FutureDigest futureDigest = p1.digest(lKey).setContentKey(cKey).setDomainKey(dKey).start();
    futureDigest.awaitUninterruptibly();
    assertTrue(futureDigest.getDigest().keyDigest().isEmpty());

    // check with a from/to digest
    futureDigest = p1.digest(lKey).from(new Number640(lKey, dKey, cKey, Number160.ZERO))
        .to(new Number640(lKey, dKey, cKey, Number160.MAX_VALUE)).start();
    futureDigest.awaitUninterruptibly();
    assertTrue(futureDigest.getDigest().keyDigest().isEmpty());

    p1.shutdown().awaitUninterruptibly();
    p2.shutdown().awaitUninterruptibly();
  }
View Full Code Here

    FutureRemove futureRemove = p1.remove(lKey).from(new Number640(lKey, dKey, cKey, Number160.ZERO))
        .to(new Number640(lKey, dKey, cKey, Number160.MAX_VALUE)).start();
    futureRemove.awaitUninterruptibly();

    FutureDigest futureDigest = p1.digest(lKey).from(new Number640(lKey, dKey, cKey, Number160.ZERO))
        .to(new Number640(lKey, dKey, cKey, Number160.MAX_VALUE)).start();
    futureDigest.awaitUninterruptibly();

    // should be empty
    assertTrue(futureDigest.getDigest().keyDigest().isEmpty());

    p1.shutdown().awaitUninterruptibly();
    p2.shutdown().awaitUninterruptibly();
  }
View Full Code Here

      p2.put(Number160.createHash(locationKey))
          .setData(Number160.createHash(contentKey), new Data(data))
          .setVersionKey(data.getVersionKey()).start().awaitUninterruptibly();
    }

    FutureDigest futureDigest = p1
        .digest(Number160.createHash(locationKey))
        .from(new Number640(Number160.createHash(locationKey), Number160.ZERO, Number160
            .createHash(contentKey), Number160.ZERO))
        .to(new Number640(Number160.createHash(locationKey), Number160.ZERO, Number160
            .createHash(contentKey), Number160.MAX_VALUE)).start();
    futureDigest.awaitUninterruptibly();

    assertEquals(numberOfContent, futureDigest.getDigest().keyDigest().size());

    for (H2HTestData data : content) {
      assertTrue(futureDigest
          .getDigest()
          .keyDigest()
          .containsKey(
              new Number640(Number160.createHash(locationKey), Number160.ZERO, Number160
                  .createHash(contentKey), data.getVersionKey())));
View Full Code Here

          .setData(Number160.createHash(contentKey), new Data(data))
          .setVersionKey(data.getVersionKey()).start().awaitUninterruptibly();
    }

    for (H2HTestData data : content) {
      FutureDigest future = p1.digest(Number160.createHash(locationKey)).setDomainKey(Number160.ZERO)
          .setContentKey(Number160.createHash(contentKey)).setVersionKey(data.getVersionKey())
          .start();
      future.awaitUninterruptibly();

      assertEquals(1, future.getDigest().keyDigest().size());
      assertEquals(
          new Number640(Number160.createHash(locationKey), Number160.ZERO,
              Number160.createHash(contentKey), data.getVersionKey()), future.getDigest()
              .keyDigest().firstKey());
    }

    p1.shutdown().awaitUninterruptibly();
    p2.shutdown().awaitUninterruptibly();
View Full Code Here

TOP

Related Classes of net.tomp2p.futures.FutureDigest

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.