diff options
author | Kevin McCarthy <kmccarth@redhat.com> | 2007-10-15 09:04:13 -0700 |
---|---|---|
committer | Kevin McCarthy <kmccarth@redhat.com> | 2007-10-15 09:04:13 -0700 |
commit | fbbdd27b5389ccbafa3fea8608b412759093cb69 (patch) | |
tree | 6fb9d1e82fc9b21a322493a79071b5dab00cd822 /ipa-python | |
parent | 63f7cdf7f7e1c39b791dad6951fa39d9a6d58c9d (diff) | |
download | freeipa-fbbdd27b5389ccbafa3fea8608b412759093cb69.tar.gz freeipa-fbbdd27b5389ccbafa3fea8608b412759093cb69.tar.xz freeipa-fbbdd27b5389ccbafa3fea8608b412759093cb69.zip |
Creates an update_entry api call, aliases update_user and update_group to it.
Diffstat (limited to 'ipa-python')
-rw-r--r-- | ipa-python/ipaclient.py | 6 | ||||
-rw-r--r-- | ipa-python/rpcclient.py | 14 |
2 files changed, 20 insertions, 0 deletions
diff --git a/ipa-python/ipaclient.py b/ipa-python/ipaclient.py index cf2e355a5..9f6f8f3e6 100644 --- a/ipa-python/ipaclient.py +++ b/ipa-python/ipaclient.py @@ -78,6 +78,12 @@ class IPAClient: result = self.transport.get_entry_by_cn(cn,sattrs) return entity.Entity(result) + def update_entry(self,entry): + """Update a entry.""" + + result = self.transport.update_entry(entry.origDataDict(), entry.toDict()) + return result + # User support def get_user_by_uid(self,uid,sattrs=None): """Get a specific user by uid. If sattrs is set then only those diff --git a/ipa-python/rpcclient.py b/ipa-python/rpcclient.py index ae26d7070..eae68ee32 100644 --- a/ipa-python/rpcclient.py +++ b/ipa-python/rpcclient.py @@ -118,6 +118,20 @@ class RPCClient: return ipautil.unwrap_binary_data(result) + def update_entry(self,oldentry,newentry): + """Update an existing entry. oldentry and newentry are dicts of attributes""" + server = self.setup_server() + + try: + result = server.update_entry(ipautil.wrap_binary_data(oldentry), + ipautil.wrap_binary_data(newentry)) + except xmlrpclib.Fault, fault: + raise ipaerror.gen_exception(fault.faultCode, fault.faultString) + except socket.error, (value, msg): + raise xmlrpclib.Fault(value, msg) + + return ipautil.unwrap_binary_data(result) + # User support |