if (logger.isDebugEnabled ()) logger.debug("\n InventoryPlugin " + supplyType + " not ready to process tasks yet." + " my inv policy is: " + inventoryPolicy);
if (logger.isInfoEnabled ()) logger.info("\n InventoryPlugin " + supplyType + " not ready to process tasks yet." + " my inv policy is: " + inventoryPolicy + " in " + myOrganization);
  protected void execute() {    //clear our new refill list    newRefills.clear();    updateInventoryPolicy(inventoryPolicySubscription.getAddedCollection());    updateInventoryPolicy(inventoryPolicySubscription.getChangedCollection());    cycleStamp = (new Date()).getTime();    if (inventoryPolicy ==null) {      if (logger.isDebugEnabled ())	logger.debug("\n InventoryPlugin " + supplyType + 		     " not ready to process tasks yet." +		     " my inv policy is: " + inventoryPolicy);      return;    }	    if (myOrganization == null) {      myOrganization = getMyOrganization(selfOrganizations.elements());    }    if (myOrganization == null) {      if (logger.isDebugEnabled())	logger.debug("\n InventoryPlugin " + supplyType + 		     " not ready to process tasks yet." +		     " my org is: " + myOrganization);      return;    }    if (supplyTaskSubscription == null) {      myOrgName = myOrganization.getItemIdentificationPG().getItemIdentification();      inventoryFile = getInventoryFile(supplyType);      getInventoryData();      supplyExpander.initialize(myOrganization);      setupSubscriptions2();    }     if (detReqHandler.getDetermineRequirementsTask(detReqSubscription, aggMILSubscription) != null) {// && //        myOrganization != null ) {      expandIncomingRequisitions(supplyTaskSubscription.getAddedCollection());      touchedProjections = expandIncomingProjections(projectionTaskSubscription.getAddedCollection());      // call the Refill Generators if we have new demand      if (! getTouchedInventories().isEmpty()) {	  //check to see if we have new projections	  if (touchedProjections) {	      refillProjGenerator.calculateRefillProjections(getTouchedInventories(), 							     criticalLevel, 							     getEndOfLevelSix(), 							     getEndOfLevelTwo(), 							     refillComparator);	  }	  refillGenerator.calculateRefills(getTouchedInventories(), inventoryPolicy,					   refillComparator);          externalAllocator.allocateRefillTasks(newRefills);      } else { // Backwards Flow	externalAllocator.updateAllocationResult(refillAllocationSubscription);        allocationAssessor.reconcileInventoryLevels(getTouchedInventories());	supplyExpander.updateAllocationResult(expansionSubscription);      }						             takeInventorySnapshot(getTouchedInventories());      // touchedInventories should not be cleared until the end of transaction      touchedInventories.clear();      touchedProjections = false;      //testBG();    }  }