code: public boolean sendNotifications() {
  		long [] fileCre8TimeStamps ;
  		synchronized(unsentFileNotifications) {
  			int unsentSize = unsentFileNotifications.size() ;
  			if (ivSubProcessCommAgent == null || unsentSize == 0) return false;		// Prepare to copy out notification tstamps
  			fileCre8TimeStamps = new long[unsentSize] ;
  			Iterator<Long> unsentIter = unsentFileNotifications.iterator() ;
  			int curIdx = 0 ;
  			while (unsentIter.hasNext()) {
  				fileCre8TimeStamps[curIdx++] = unsentIter.next() ;
  			}
  			unsentFileNotifications.clear() ;
  		}
  		synchronized (ivSubProcessCommAgent) {
  			for (long thisTstamp : fileCre8TimeStamps) {
  				String tempStr = ivSubProcessCommAgent.notifyOfFileCreation(managedType, thisTstamp, ivPid, ivProcessLabel) ;
  				if (debugLogger.isLoggable(Level.FINE) && LogRepositoryBaseImpl.isDebugEnabled()) {
  					debugLogger.logp(Level.FINE, thisClass, "setSubProcessCommAg", "Notifying of past timestamp: "+thisTstamp+
  						" got file: "+tempStr);
  				}
  			}
  		}
  		return true ;
  	}
docs: sent notifications of file creations to the controller.  This is here (the actual sending of the notifications) so
  that the requests can be queued and the actual orb calls can be made at a time when the thread is not holding
  critical locks