From da289170c5514b97929a271ed1fe4fb082959c7c Mon Sep 17 00:00:00 2001 From: Mark Huang Date: Tue, 10 Oct 2006 20:25:48 +0000 Subject: [PATCH] api now allows marshalling of None (although type checking does not allow None yet for most values...) --- PLC/Methods/UpdateNode.py | 8 -------- PLC/Methods/UpdateNodeNetwork.py | 8 -------- PLC/Methods/UpdatePerson.py | 8 -------- PLC/Methods/UpdateSite.py | 8 -------- 4 files changed, 32 deletions(-) diff --git a/PLC/Methods/UpdateNode.py b/PLC/Methods/UpdateNode.py index f80b7795..f9d02d4b 100644 --- a/PLC/Methods/UpdateNode.py +++ b/PLC/Methods/UpdateNode.py @@ -38,14 +38,6 @@ class UpdateNode(Method): if filter(lambda field: field not in self.update_fields, update_fields): raise PLCInvalidArgument, "Invalid field specified" - # XML-RPC cannot marshal None, so we need special values to - # represent "unset". - for key, value in update_fields.iteritems(): - if value == -1 or value == "null": - if key in ['hostname', 'boot_state']: - raise PLCInvalidArgument, "hostname and boot_state cannot be unset" - update_fields[key] = None - # Get account information nodes = Nodes(self.api, [node_id_or_hostname]) if not nodes: diff --git a/PLC/Methods/UpdateNodeNetwork.py b/PLC/Methods/UpdateNodeNetwork.py index 8e0b2676..393b6e4a 100644 --- a/PLC/Methods/UpdateNodeNetwork.py +++ b/PLC/Methods/UpdateNodeNetwork.py @@ -41,14 +41,6 @@ class UpdateNodeNetwork(Method): if filter(lambda field: field not in self.update_fields, update_fields): raise PLCInvalidArgument, "Invalid fields specified" - # XML-RPC cannot marshal None, so we need special values to - # represent "unset". - for key, value in update_fields.iteritems(): - if value == -1 or value == "null": - if key in ['method', 'type', 'mac', 'ip', 'bwlimit']: - raise PLCInvalidArgument, "%s cannot be unset" % key - update_fields[key] = None - # Get node network information nodenetworks = NodeNetworks(self.api, [nodenetwork_id_or_hostname]).values() if not nodenetworks: diff --git a/PLC/Methods/UpdatePerson.py b/PLC/Methods/UpdatePerson.py index a79a4612..140b5632 100644 --- a/PLC/Methods/UpdatePerson.py +++ b/PLC/Methods/UpdatePerson.py @@ -40,14 +40,6 @@ class UpdatePerson(Method): if filter(lambda field: field not in self.update_fields, update_fields): raise PLCInvalidArgument, "Invalid field specified" - # XML-RPC cannot marshal None, so we need special values to - # represent "unset". - for key, value in update_fields.iteritems(): - if value == -1 or value == "null": - if key in ['first_name', 'last_name']: - raise PLCInvalidArgument, "first_name and last_name cannot be unset" - update_fields[key] = None - # Get account information persons = Persons(self.api, [person_id_or_email]) if not persons: diff --git a/PLC/Methods/UpdateSite.py b/PLC/Methods/UpdateSite.py index 3b3a908a..bb517473 100644 --- a/PLC/Methods/UpdateSite.py +++ b/PLC/Methods/UpdateSite.py @@ -42,14 +42,6 @@ class UpdateSite(Method): if filter(lambda field: field not in self.update_fields, update_fields): raise PLCInvalidArgument, "Invalid field specified" - # XML-RPC cannot marshal None, so we need special values to - # represent "unset". - for key, value in update_fields.iteritems(): - if value == -1 or value == "null": - if key not in ['latitude', 'longitude', 'url']: - raise PLCInvalidArgument, "%s cannot be unset" % key - update_fields[key] = None - # Get site information sites = Sites(self.api, [site_id_or_login_base]) if not sites: -- 2.45.2