Package net.jini.lease

Examples of net.jini.lease.LeaseRenewalSet


  // get a lease renewal set w/ duration for as long as we can
  logger.log(Level.FINE, "Creating the lease renewal set with duration" +
        " of Lease.FOREVER");
  LeaseRenewalService lrs = getLRS();
  LeaseRenewalSet set = lrs.createLeaseRenewalSet(Lease.FOREVER);
  set = prepareSet(set);
  lrm.renewFor(prepareLease(set.getRenewalSetLease()), Lease.FOREVER, null);

 
  // register listener to receive events
  logger.log(Level.FINE, "Registering listener for renewal failure" +
        " events.");
  set.setRenewalFailureListener(rrl  , null);

  /* create 6 test leases which will throw definite exceptions
     and add then to the renewal set. Three lease's expiration
     times are 30 seconds, the rest are 60 seconds. */
  TestLease[] lease = new TestLease[6];

  for (int i = 0; i < 6; i += 2) {
      logger.log(Level.FINE, "Creating lease with duration of " +
            renewGrant + " milliseconds.");
      lease[i] =
    shortLeaseProvider.createNewLease(owner,
               rstUtil.durToExp(renewGrant));
      set.renewFor(lease[i], Lease.FOREVER);
      logger.log(Level.FINE, "Creating lease with duration of " +
            renewGrant*3 + " milliseconds.");
      lease[i+1] =
    longLeaseProvider.createNewLease(owner,
             rstUtil.durToExp(renewGrant*3));
      set.renewFor(lease[i+1], Lease.FOREVER);
  }

  // allow the leases with lower duration times to expire
  rstUtil.waitForLeaseExpiration(lease[4],
      "for client leases with lower expiration times to expire.");

  // remove the listener many times to ensure no ill effect
  try {
      for (int i = 0; i < 10; ++i) {
    set.clearRenewalFailureListener();
      }
  } catch (Exception ex) {
      String message = "Multiple calls to " +
    "clearRenewalFailureListener raises an exception.";
      throw new TestException(message, ex);
  }

  // assert that only 3 calls to notify have been made
  int numberOfEvents = rrl.getEvents().length;
  if (numberOfEvents != 3) {
      String message = "Check #1:\n" +
    "Listener received " + numberOfEvents +
    " events but is required to receive exactly 3.";
      throw new TestException(message);
  }
 
  // wait for the rest of the leases to expire
  rstUtil.waitForLeaseExpiration(lease[5],
       "for the remaining client leases to expire.");

  // assert that all leases have expired
  for (int i = 0; i < 6; ++i) {
      Lease managedLease = set.remove(lease[i]);
      if (managedLease != null) {
    String message = "Lease #" + i + " did not expire as " +
        "expect.";
    throw new TestException(message);
      }
View Full Code Here


  // service under test
  LeaseRenewalService lrs = getLRS();

  // create a lease renewal set that hangs around a long time
  long renewSetDur = Lease.FOREVER;
  LeaseRenewalSet set = lrs.createLeaseRenewalSet(renewSetDur);
  set = prepareSet(set);
  logger.log(Level.FINE, "Created Set with lease duration of " +
        "Lease.FOREVER.");

  // register listener to receive events
  EventRegistration evReg = set.setRenewalFailureListener(rrl, null);
  evReg = prepareRegistration(evReg);

  // check event registration (not formally part of this test)
  if (rstUtil.isValidRenewFailEventReg(evReg, set) == false) {
      String message = "Registration is invalid because:\n" +
    rstUtil.getFailureReason();
      throw new TestException(message);
  }

  /* create a lease that will fail to renew with an indefinite
     exception */
  logger.log(Level.FINE, "Creating the lease to be managed.");
  logger.log(Level.FINE, "Duration == " + renewGrant);
  TestLease testLease =
      leaseProvider.createNewLease(indefiniteOwner,
           rstUtil.durToExp(renewGrant));

  // start managing the lease for as long as we can
  logger.log(Level.FINE, "Adding managed lease to lease renewal set.");
  set.renewFor(testLease, Long.MAX_VALUE);
 
  // wait for the event to arrive
  long timeout = renewGrant * 2;
  boolean gotEvent = rstUtil.waitForRemoteEvents(rrl, 1, timeout);
  if (gotEvent == false) {
View Full Code Here

    // inherit javadoc from parent class
    public synchronized void notify(RemoteEvent theEvent)
           throws UnknownEventException, RemoteException {
  super.notify(theEvent);
  if (theEvent.getClass() == ExpirationWarningEvent.class) {
      LeaseRenewalSet set = (LeaseRenewalSet) theEvent.getSource();
      Lease lease = null;
      try {
    set = (LeaseRenewalSet)
          QAConfig.getConfig().prepare("test.normRenewalSetPreparer",
              set);
    lease = set.getRenewalSetLease();
    lease =  (Lease)
       QAConfig.getConfig().prepare("test.normLeasePreparer",
                 lease);
      } catch (TestException e) {
    renewalException = e;
View Full Code Here

  // get a lease renewal set w/ duration for as long as we can
  logger.log(Level.FINE, "Creating the lease renewal set with duration" +
        " of Lease.FOREVER");
  LeaseRenewalService lrs = getLRS();
  LeaseRenewalSet set = lrs.createLeaseRenewalSet(Lease.FOREVER);
  set = prepareSet(set);
  lrm.renewFor(prepareLease(set.getRenewalSetLease()), Lease.FOREVER, null);

  // register listener to receive events
  logger.log(Level.FINE, "Registering listener for renewal failure" +
        " events.");
  set.setRenewalFailureListener(rrl  , null);

  // create two leases that will not fail on renewal
  logger.log(Level.FINE, "Creating lease #1 with duration of " +
        renewGrant + " milliseconds.");
  TestLease lease01 =
      leaseProvider.createNewLease(succeedingOwner,
           rstUtil.durToExp(renewGrant));
  set.renewFor(lease01, Long.MAX_VALUE);
 
  logger.log(Level.FINE, "Creating lease #2 with duration of " +
        renewGrant + " milliseconds.");
  TestLease lease02 =
      leaseProvider.createNewLease(succeedingOwner,
           rstUtil.durToExp(renewGrant));
  set.renewFor(lease02, Long.MAX_VALUE);

  // create the lease to be managed
  long longerGrant = renewGrant * 2;
  logger.log(Level.FINE, "Creating lease #3 with duration of " +
        longerGrant + " milliseconds.");
  TestLease lease03 =
      leaseProvider.createNewLease(failingOwner,
           rstUtil.durToExp(longerGrant));
  set.renewFor(lease03, Long.MAX_VALUE);

  // wait for the failing lease to renew
  rstUtil.waitForRemoteEvents(rrl, 1, longerGrant);

  // assert we only received 1 event
View Full Code Here

  // create a renewal set
  logger.log(Level.FINE, "Creating renewal set with lease duration of " +
        "Lease.FOREVER.");
  long renewSetDur = Lease.FOREVER;
  LeaseRenewalSet set = lrs.createLeaseRenewalSet(renewSetDur);
  set = prepareSet(set);
  lrm.renewFor(prepareLease(set.getRenewalSetLease()), renewSetDur, null);

  // create a test lease to be managed
  logger.log(Level.FINE, "Creating the lease to be managed.");
  logger.log(Level.FINE, "Duration == Lease.FOREVER");
  TestLease testLease =
      leaseProvider.createNewLease(leaseOwner, Lease.FOREVER);

  // start managing the lease forever
  logger.log(Level.FINE, "Adding lease with membership of " +
        "Lease.FOREVER");
  set.renewFor(testLease, Lease.FOREVER);

  // remove the lease
  Lease managedLease = set.remove(testLease);
  if (managedLease.equals(testLease) == false) {
      String message = "Lease removed does not match the lease\n" +
           "originally added to the set.";
      throw new TestException(message);
  }
View Full Code Here

  // get a lease renewal set w/ duration of 1/5 the max grant time
  logger.log(Level.FINE, "Creating the lease renewal set.");
  setLeaseGrant = renewGrant / 5;
  logger.log(Level.FINE, "Lease duration == " + setLeaseGrant);
  LeaseRenewalService lrs = getLRS();
  LeaseRenewalSet set = lrs.createLeaseRenewalSet(setLeaseGrant);
  set = prepareSet(set);
 
  // get three leases with their repective durations
  logger.log(Level.FINE, "Creating the leases to be managed.");

  logger.log(Level.FINE, "Duration (lease #1) == " + grant1);
  TestLease testLease1 =
      leaseProvider.createNewLease(owner, rstUtil.durToExp(grant1));

  logger.log(Level.FINE, "Duration (lease #2) == " + grant2);
  TestLease testLease2 =
      leaseProvider.createNewLease(owner, rstUtil.durToExp(grant2));

  logger.log(Level.FINE, "Duration (lease #3) == " + grant3);
  TestLease testLease3 =
      leaseProvider.createNewLease(owner, rstUtil.durToExp(grant3));

  // start managing the leases for as long as we can
  logger.log(Level.FINE, "Adding managed leases to lease renewal set.");
  set.renewFor(testLease1, Lease.FOREVER);
  set.renewFor(testLease2, Lease.FOREVER);
  set.renewFor(testLease3, Lease.FOREVER);
 
  // allow the lease of the renewal set to expire
  logger.log(Level.FINE, "Getting the renewal set lease.");
  Lease setLease = prepareLease(set.getRenewalSetLease());
  boolean success = expireRenewalSetLease(setLease);
  if (success == false) {
      String message = "Lease did not expire as expected.\n";
      throw new TestException(message);
  }

  // assert that any attempt to use the set results in an exception
  try {
      Lease managedLease = set.remove(testLease1);
      String message = "Performed successful remove operation on\n";
      message += " renewal set after its lease had expired.";
      throw new TestException(message);
  } catch (NoSuchObjectException ex) {
      // we passed so just keep on going ...
  }

  try {
      Lease managedLease = leaseProvider.createNewLease(owner,
                    renewGrant);
      set.renewFor(managedLease, Lease.FOREVER);
      managedLease.cancel();
      String message = "Performed successful add operation on\n";
      message += " renewal set after its lease had expired.";
      throw new TestException(message);
  } catch (NoSuchObjectException ex) {
View Full Code Here

      long duration = (long) Math.pow(10, i);
      logger.log(Level.FINE, "Create renewal set with duration of " +
            duration);
      // short time in the past before creation
      long preLease = System.currentTimeMillis();
      LeaseRenewalSet set = lrs.createLeaseRenewalSet(duration);
      set = prepareSet(set);
      long now = System.currentTimeMillis();
      long expTime = now + duration;
      long leaseExpTime = prepareLease(set.getRenewalSetLease()).getExpiration();

      // It is impossible to calc. expTime exactly, there is slop
      logger.log(Level.FINE, "Calculated lease expiration ==> " +
            expTime);
      logger.log(Level.FINE, "Actual lease expiration ======> " +
            leaseExpTime);
      logger.log(Level.FINE, "slop =========================> " +
            (expTime - leaseExpTime));

      // lease must not be in the past
      if (leaseExpTime < preLease) {
    logger.log(Level.FINE, "lease duration = " + duration);
    logger.log(Level.FINE, "leaseExpTime = " + leaseExpTime);
    logger.log(Level.FINE, "less than now = " + now);
    String message =
        "LRS granted a lease for a renewal set" +
        " with an expiration in the past.";
    throw new TestException(message);
      }

      // lease expiration must be less or equal to calculated
      if (prepareLease(set.getRenewalSetLease()).getExpiration() > expTime) {
    String message =
        "LRS granted a lease for a renewal set" +
        " with an expiration time greater\n" +
        "than requested.";
    throw new TestException(message);
      }
  }     

  // test Lease.ANY
  logger.log(Level.FINE, "Create lease with duration of " +
        "Lease.ANY");
  LeaseRenewalSet set = lrs.createLeaseRenewalSet(Lease.ANY);
  set = prepareSet(set);
  long now = System.currentTimeMillis();
  long anyExp = prepareLease(set.getRenewalSetLease()).getExpiration();
  if ( anyExp < now) {
      logger.log(Level.FINE, "Now        = " + now);
      logger.log(Level.FINE, "Expiration = " + anyExp);
      String message = "LRS granted a time in the past when";
      message += " given Lease.ANY as duration request.";
      throw new TestException(message);
  }

  // test Lease.FOREVER
  logger.log(Level.FINE, "Create lease with duration of " +
        "Lease.FOREVER");
  set = lrs.createLeaseRenewalSet(Lease.FOREVER);
  set = prepareSet(set);
  now = System.currentTimeMillis();
  long foreverExp = prepareLease(set.getRenewalSetLease()).getExpiration();
  if ( foreverExp < now) {
      logger.log(Level.FINE, "Now        = " + now);
      logger.log(Level.FINE, "Expiration = " + anyExp);
      String message = "LRS granted a time in the past when";
      message += " given Lease.FORVER as duration request.";
View Full Code Here

  // create a lease renewal set that hangs around a long time
  logger.log(Level.FINE, "Creating set with lease duration of " +
        "Lease.FOREVER.");
  long renewSetDur = Lease.FOREVER;
  LeaseRenewalSet set = lrs.createLeaseRenewalSet(renewSetDur);
  set = prepareSet(set);

  // register the listeners to receive renewal failure events
  set.setRenewalFailureListener(failingListener, null);

  // create 3 leases that will fail during renewal attempts
  logger.log(Level.FINE, "Creating failing lease #1 with duration of " +
        renewGrant + " milliseconds.");
  TestLease lease01 =
      leaseProvider.createNewLease(failingOwner,
           rstUtil.durToExp(renewGrant));
 
  logger.log(Level.FINE, "Creating failing lease #2 with duration of " +
        renewGrant + " milliseconds.");
  TestLease lease02 =
      leaseProvider.createNewLease(failingOwner,
           rstUtil.durToExp(renewGrant));
 
  logger.log(Level.FINE, "Creating failing lease #3 with duration of " +
        renewGrant + " milliseconds.");
  TestLease lease03 =
      leaseProvider.createNewLease(failingOwner,
           rstUtil.durToExp(renewGrant));
 
  // add all the leases to the set
  logger.log(Level.FINE, "Adding client leases to renewal set.");
  set.renewFor(lease01, Long.MAX_VALUE);
  set.renewFor(lease02, Long.MAX_VALUE);
  set.renewFor(lease03, Long.MAX_VALUE);

  // wait for the failures to roll in ...
  rstUtil.waitForRemoteEvents(failingListener, 3, renewGrant * 2);

  // assert that the three events have arrived
  long numberOfFailedEvents = failingListener.getEvents().length;
  if (numberOfFailedEvents < 3) {
      String message = "The failing remote listener received " +
    numberOfFailedEvents + " events but was required to " +
    "receive at least 3.";
      throw new TestException(message);
  }

  // Replace the failing listener with a normal one
  logger.log(Level.FINE, "Replacing failing listener with a" +
        " succeeding one.");
  set.setRenewalFailureListener(normalListener, null);

  // wait for events to get forwarded
  rstUtil.waitForRemoteEvents(normalListener, 3, renewGrant * 2);
 
  // assert that the normal listener received at least one event
View Full Code Here

  // get a lease renewal set w/ duration for as long as we can
  logger.log(Level.FINE, "Creating the lease renewal set with duration" +
        " of Lease.FOREVER");
  LeaseRenewalService lrs = getLRS();
  LeaseRenewalSet set = lrs.createLeaseRenewalSet(Lease.FOREVER);
  set = prepareSet(set);
  lrm.renewFor(prepareLease(set.getRenewalSetLease()), Lease.FOREVER, null);

  // register listener to receive events
  logger.log(Level.FINE, "Registering listener for renewal failure" +
        " events.");
  set.setRenewalFailureListener(rrl, null);

  // create a lease that will ultimately fail renewal
  logger.log(Level.FINE, "Creating lease with duration of " +
        renewGrant + " milliseconds.");
  TestLease lease =
      leaseProvider.createNewLease(failingOwner,
           rstUtil.durToExp(renewGrant));
  logger.log(Level.FINE, "Adding lease to renewal set.");
  set.renewFor(lease, Long.MAX_VALUE);
 
  // wait for the failing lease to renew
  rstUtil.waitForRemoteEvents(rrl, 1, renewGrant*2);

  // Capture the event and ensure there is only one
View Full Code Here

  // create a renewal set
  logger.log(Level.FINE, "Creating renewal set with lease duration of " +
        "Lease.FOREVER.");
  long renewSetDur = Lease.FOREVER;
  LeaseRenewalSet set = lrs.createLeaseRenewalSet(renewSetDur);
  set = prepareSet(set);
  lrm.renewFor(prepareLease(set.getRenewalSetLease()), renewSetDur, null);

  // create 2 unreadable test leases to be managed
  logger.log(Level.FINE, "Creating an unreadable lease to be managed.");
  logger.log(Level.FINE, "Duration == Lease.FOREVER");
  TestLease specialLease01 =
      unreadableLeaseProvider.createNewLease(leaseOwner,
               Lease.FOREVER);

  logger.log(Level.FINE, "Creating an unreadable lease to be managed.");
  logger.log(Level.FINE, "Duration == Lease.FOREVER");
  TestLease specialLease02 =
      unreadableLeaseProvider.createNewLease(leaseOwner,
               Lease.FOREVER);
  // start managing the unreadable leases forever
  logger.log(Level.FINE, "Adding unreadable lease with membership of " +
        "Lease.FOREVER");
  set.renewFor(specialLease01, Lease.FOREVER);

  logger.log(Level.FINE, "Adding unreadable lease with membership of " +
        "Lease.FOREVER");
  set.renewFor(specialLease02, Lease.FOREVER);

  /* Assert that a LeaseUnmarshalException is thrown when getLeases()
     is called */
  try {
      UnreadableTestLease.setFailMode(true);
      Lease[] leaseArray = set.getLeases();
      UnreadableTestLease.setFailMode(false);

      /* here we have succeeded to getLeases so something went
         frightfully wrong */
      String message =
View Full Code Here

TOP

Related Classes of net.jini.lease.LeaseRenewalSet

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.