def send(self, command, *args, **kwargs):
args = list(args)<EOL>if kwargs:<EOL><INDENT>args.append(kwargs)<EOL><DEDENT>method = self.proxy<EOL>for elt in command.split('<STR_LIT:.>'):<EOL><INDENT>method = getattr(method, elt)<EOL><DEDENT>try:<EOL><INDENT>return method(*args)<EOL><DEDENT>except Fault as err:<EOL><INDENT>if err.faultCode == <NUM_LIT>:<EOL><INDENT>return {}<EOL><DEDENT>elif err.faultCode == <NUM_LIT>:<EOL><INDENT>return []<EOL><DEDENT>raise DokuWikiError(err)<EOL><DEDENT>except ExpatError as err:<EOL><INDENT>if str(err) != ERR:<EOL><INDENT>raise DokuWikiError(err)<EOL><DEDENT><DEDENT>
Generic method for executing an XML-RPC *command*. *args* and
        *kwargs* are the arguments and parameters needed by the command.