/** Starts the factory. This method is not called when holding the monitor lock. */
 public void starting() {
   if (m_tracker == null) {
     if (m_requiredHandlers.size() != 0) {
       try {
         String filter =
             "(&("
                 + Handler.HANDLER_TYPE_PROPERTY
                 + "="
                 + PrimitiveHandler.HANDLER_TYPE
                 + ")"
                 + "(factory.state=1)"
                 + ")";
         m_tracker = new Tracker(m_context, m_context.createFilter(filter), this);
         m_tracker.open();
       } catch (InvalidSyntaxException e) {
         m_logger.log(
             Logger.ERROR,
             "A factory filter is not valid: "
                 + e.getMessage()); // Holding the lock should not be an issue here.
         stop();
       }
     }
   }
   // Else, the tracking has already started.
 }
 /** Stops all the instance managers. This method is called when holding the lock. */
 public void stopping() {
   if (m_tracker != null) {
     m_tracker.close();
     m_tracker = null;
   }
 }