def modify()

in footmark/slb/vserver_group.py [0:0]


    def modify(self, backend_servers):
        '''
        modify backend servers
        '''
        changed = False
        old = []
        new = []
        if backend_servers and self.backend_servers['backend_server']:
            for o in self.backend_servers['backend_server']:
                for n in backend_servers:
                    if o['server_id'] == n['server_id']:
                        for key in list(o.keys()):
                            if key in n and str(o[key]) != str(n[key]):
                                old.append(o)
                                new.append(n)
                                break
        if old and new:
            params = {'vserver_group_id': self.vserver_group_id}
            for index in range(0, len(old), 20):
                params['old_backend_servers'] = self.format_backend_servers(old[index:index+20])
                params['new_backend_servers'] = self.format_backend_servers(new[index:index+20])
                if self.connection.modify_vserver_group_backend_servers(**params):
                    changed = True
        return changed