server: remove discovery async

Move a number of initialization items out of the initial discovery
into the Mapper constructor.  No functional impact but faciliates
refactoring in prep for non-blocking discovery.

Change-Id: Ida97a3829166dbbf55481f58ffd13474660d7afc
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/obmc/mapper/server.py b/obmc/mapper/server.py
index 800880d..f9bf5ca 100644
--- a/obmc/mapper/server.py
+++ b/obmc/mapper/server.py
@@ -203,8 +203,11 @@
         self.manager = Manager(bus, obmc.dbuslib.bindings.OBJ_PREFIX)
         self.unique = bus.get_unique_name()
         self.bus_map = {}
+        self.bus_map[self.unique] = obmc.mapper.MAPPER_NAME
 
-        gobject.idle_add(self.discover)
+        # add my object mananger instance
+        self.add_new_objmgr(obmc.dbuslib.bindings.OBJ_PREFIX, self.unique)
+
         self.bus.add_signal_receiver(
             self.bus_handler,
             dbus_interface=dbus.BUS_DAEMON_IFACE,
@@ -228,8 +231,12 @@
             path_keyword='path',
             sender_keyword='sender')
 
-    def discovery_pending(self):
-        return not bool(self.service)
+        print "ObjectMapper startup complete.  Discovery in progress..."
+        self.discover()
+
+        print "ObjectMapper discovery complete"
+        self.service = dbus.service.BusName(
+            obmc.mapper.MAPPER_NAME, self.bus)
 
     def cache_get(self, path):
         cache_entry = self.cache.get(path, {})
@@ -374,22 +381,7 @@
                     iface_match=self.intf_match))
             self.bus_map[o] = owned_name
 
-        if self.discovery_pending():
-            # add my object mananger instance
-            self.bus_map[self.unique] = obmc.mapper.MAPPER_NAME
-            self.add_items(
-                self.unique,
-                {obmc.dbuslib.bindings.OBJ_PREFIX:
-                    [dbus.BUS_DAEMON_IFACE + '.ObjectManager']})
-
-            print "ObjectMapper discovery complete..."
-            self.service = dbus.service.BusName(
-                obmc.mapper.MAPPER_NAME, self.bus)
-
     def valid_signal(self, name):
-        if self.discovery_pending():
-            return False
-
         if obmc.dbuslib.bindings.is_unique(name):
             name = self.bus_map.get(name)