private void deleteService(SvcReg reg,long now){
  Item item=reg.item;
  generateEvents(item,null,now);
  serviceByID.remove(item.serviceID);
  serviceByTime.remove(reg);
  deleteServiceFromTypes(item.serviceType,reg);
  EntryRep[] entries=item.attributeSets;
  for (int i=entries.length; --i >= 0; ) {
    deleteAttrs(reg,entries[i],false);
  }
  computeMaxLeases();
}

private void deleteService ( SvcReg reg , long now ) { Item item = reg . item ; generateEvents ( item , null , now ) ; serviceByID . remove ( item . serviceID ) ; serviceByTime . remove ( reg ) ; deleteServiceFromTypes ( item . serviceType , reg ) ; EntryRep [ ] entries = item . attributeSets ; for ( int i = entries . length ; -- i >= 0 ; ) { deleteAttrs ( reg , entries [ i ] , false ) ; } computeMaxLeases ( ) ; }
delete given service , generating events as necessary . this includes deleting from the servicebyid , servicebytime , servicebytype , and servicebyattr maps , decrementing the number of instances of each entryclass , and updating entryclasses as necessary . if this is the last registered instance of the service type , then we delete the concrete class information from the type and all supertypes .
