code: public void updated(String pid, Dictionary dictionary) throws ConfigurationException
      {
          LOGGER.entering(CLASS_NAME, "updated", new Object[]{pid, dictionary});
  
          deleted(pid);
  
          UserAgent userAgent = SLP.newUserAgent(dictionary == null ? null : DictionarySettings.from(dictionary));
  
          if (LOGGER.isLoggable(Level.FINER)) LOGGER.finer("User Agent " + pid + " starting...");
  
          userAgent.start();
  
          if (LOGGER.isLoggable(Level.FINE)) LOGGER.fine("User Agent " + pid + " started successfully");
  
          ServiceRegistration serviceRegistration = bundleContext.registerService(IServiceAgent.class.getName(), userAgent, dictionary);
          userAgents.put(pid, serviceRegistration);
  
          LOGGER.exiting(CLASS_NAME, "updated");
      }
docs: Update the SLP user agent's configuration, unregistering from the
  OSGi service registry and stopping it if it had already started.  The
  new SLP user agent will be started with the new configuration and
  registered in the OSGi service registry using the configuration
  parameters as service properties.
  
  @param pid        The PID for this configuration.
  @param dictionary The dictionary used to configure the SLP user agent.
  @throws ConfigurationException Thrown if an error occurs during the SLP user agent's configuration.