code: protected void handleTCPSrvReg(SrvReg srvReg, Socket socket)
      {
          try
          {
              boolean update = srvReg.isUpdating();
              ServiceInfo givenService = ServiceInfo.from(srvReg);
              ServiceInfoCache.Result<ServiceInfo> result = cacheService(givenService, update);
              forwardRegistration(givenService, result.getPrevious(), result.getCurrent(), update);
              tcpSrvAck.perform(socket, srvReg, SLPError.NO_ERROR);
          }
          catch (ServiceLocationException x)
          {
              tcpSrvAck.perform(socket, srvReg, x.getSLPError());
          }
      }
docs: Handles a unicast TCP SrvReg message arrived to this service agent.
  <br />
  This service agent will reply with an acknowledge containing the result of the registration.
  
  @param srvReg the SrvReg message to handle
  @param socket the socket connected to th client where to write the reply