- # Get node networks for this node
- nodenetworks = NodeNetworks(self.api, node['nodenetwork_ids']).values()
- if not nodenetworks:
- raise PLCInvalidArgument, "Node has no node networks"
-
- # Filter out undesired or None fields (XML-RPC cannot marshal
- # None) and turn each node into a real dict.
- valid_return_fields_only = lambda (key, value): value is not None
- nodenetworks = [dict(filter(valid_return_fields_only, nodenetwork.items())) \
- for nodenetwork in nodenetworks]
-
- return nodenetworks
+ if not node['nodenetwork_ids']:
+ return []
+
+ return GetNodeNetworks.call(self, auth, node['nodenetwork_ids'])