info.amountLeft = amLeft;
Operation op = factory.getOperation(type);
// wrap operation in finalizer so that amount left gets decrements when
// its done
if (op != null) {
Observer fn = new Observer() {
public void notifyFinished(Operation op) {
OperationInfo opInfo = operations.get(type);
if (opInfo != null) {
--opInfo.amountLeft;
}