_gp.getLoggingService().info("Packer  - current aggregated requested transport: " + TRANSPORT_TONS + " tons.");
if (numTasks != numParents) _gp.getLoggingService().error("Filler.execute - num tasks created " + numTasks + " != parents of MPTask " + numParents);  if (numParents != _sz.sizedMade) _gp.getLoggingService().error("Filler.execute - sizer num tasks made " + _sz.sizedMade + " != total parents of MPTask " + numParents);  if(_gp.getLoggingService().isInfoEnabled()) _gp.getLoggingService().info("Packer  - current aggregated requested transport: " + TRANSPORT_TONS + " tons.");  if (_gp.getLoggingService().isInfoEnabled()) _gp.getLoggingService().info("Filler.execute - exited.");  return tonsPacked;
  public void execute () {    boolean finished = false;    while (!finished) {      // initialize the aggregation      ArrayList agglist = new ArrayList();      double amount = 0.0;      while (_ac.getQuantity() - amount > 0.0) {        Task t = _sz.provide(_ac.getQuantity() - amount);        if (t == null ) {          finished = true;          break;        }                // if we reach here, t is a Task that provides        // some amount towards our overall amount        double provided  = t.getPreferredValue(AspectType.QUANTITY);                if (!_ac.validTask(t)) {          _gp.getLoggingService().error("Filler.execute: AggregationClosure rejected " +                                      " task - " + t);          continue;        }                amount += provided;        agglist.add(t);      }            if (!agglist.isEmpty()) {	// now we do the aggregation	NewMPTask mpt = _ac.newTask();                // Set ContentsPG on container        addContentsInfo((GLMAsset) mpt.getDirectObject(), agglist);                //BOZO	mpt.setPreferences(new Vector(_pa.aggregatePreferences(agglist.iterator(),                                                               _gp.getGPFactory())).                           elements());        double loadedQuantity = mpt.getPreferredValue(AspectType.QUANTITY);        TRANSPORT_TONS += loadedQuantity;	Plan plan = ((Task)agglist.get(0)).getPlan();        	_gp.createAggregation(agglist.iterator(), mpt, plan, _ard);      }    }        _gp.getLoggingService().info("Packer  - current aggregated requested transport: " +                                 TRANSPORT_TONS + " tons.");  }