currFile.writeToLog(obj);
file.writeToLog(obj);
  public void putObject(int clientId,			NumberedObject obj,			long millis) throws RemoteException {    ClientData clientData = null;    Object objectId = null;    synchronized (this) {      clientData = checkValidClient("putObject", clientId);      objectId = obj.uid();      if (clientData.objectsInProgress.containsKey(objectId)) {	clientData.objectsInProgress.remove(objectId);      }      else {	String errMsg =	  "putObject: client " + clientId +	  " not known to be processing object No. " + objectId;	if (verbose)	  logFailure(errMsg, clientId);	throw new RemoteException(errMsg);      }    }    currFile.writeToLog(obj);    synchronized (msgs) {      int numClients = clients.size();      totalNumObjectsProcessed++;      totalNumObjectsProcessedThisRun++;      if (verbose)	log("processed object " + objectId +	    " in " + Time.elapsedTime(millis), clientId);      log("elapsed for " + totalNumObjectsProcessed +	  " objs./" + numClients + " client" +	  (numClients > 1 ? "s" : "") + ": " +	  timer + "; avg. processing time: " +	  Time.elapsedTime((Time.current() - timer.startTime()) /			   totalNumObjectsProcessedThisRun));    }    currFile.notifyIfDone();  }