Beispiel #1
0
    def manage_initial_servicegroup_status_brok(self, b):
        data = b.data
        sg_id = data['id']
        servicegroup_name = data['servicegroup_name']
        members = data['members']
        del data['members']

        # Like for hostgroups, maybe we already got this
        # service group from another instance, need to
        # factorize all
        try:
            sg = self.servicegroups[servicegroup_name]
        except KeyError:
            #print "Creating servicegroup:", sg_id, data
            sg = Servicegroup()
            # By default set members as a void list
            setattr(sg, 'members', [])

        self.update_element(sg, data)

        for (s_id, s_name) in members:
            # A direct lookup by s_host_name+s_name is not possible
            # because we don't have the host_name in members, only ids.
            try:
                sg.members.append(self.service_id_cache[s_id])
            except Exception:
                pass

        sg.members = list(set(sg.members))
        self.servicegroups[servicegroup_name] = sg
        self.number_of_objects += 1
Beispiel #2
0
    def manage_initial_servicegroup_status_brok(self, b):
        data = b.data
        sg_id = data['id']
        members = data['members']
        del data['members']

        # Like for hostgroups, maybe we already got this
        # service group from another instance, need to
        # factorize all
        name = data['servicegroup_name']
        sg = self.find_servicegroup(name)
        if not sg:
            #print "Creating servicegroup:", sg_id, data
            sg = Servicegroup()
            # By default set members as a void list
            setattr(sg, 'members', [])

        self.update_element(sg, data)

        for (s_id, s_name) in members:
            if s_id in self.services:
                sg.members.append(self.services[s_id])
                # Need to be sure we unique theses elements
                sg.members = list(set(sg.members))
        #print "SG:", sg
        self.servicegroups[sg_id] = sg
        self.number_of_objects += 1
Beispiel #3
0
 def manage_initial_servicegroup_status_brok(self, b):
     data = b.data
     sg_id = data['id']
     members = data['members']
     del data['members']
     #print "Creating servicegroup:", sg_id, data
     sg = Servicegroup()
     self.update_element(sg, data)
     setattr(sg, 'members', [])
     for (s_id, s_name) in members:
         if s_id in self.services:
             sg.members.append(self.services[s_id])
     #print "SG:", sg
     self.servicegroups[sg_id] = sg
     self.number_of_objects += 1