code: protected void dispatchEvent (int remoteOid, DObject target, DEvent event)
      {
          try {
              // apply the event to the object
              boolean notify = event.applyToObject(target);
  
              // if this is an object destroyed event, we need to remove the object from our table
              if (event instanceof ObjectDestroyedEvent) {
  //                 Log.info("Pitching destroyed object [oid=" + remoteOid +
  //                          ", class=" + StringUtil.shortClassName(target) + "].");
                  _ocache.remove(remoteOid);
              }
  
              // have the object pass this event on to its listeners
              if (notify) {
                  target.notifyListeners(event);
              }
  
          } catch (Exception e) {
              log.warning("Failure processing event", "event", event, "target", target, e);
          }
      }
docs: Dispatches an event on an already resolved target object.
  
  @param remoteOid is specified explicitly because we will have already translated the event's
  target oid into our local object managers oid space if we're acting on behalf of the peer
  manager.