From 93f15aa37be8e1abd588389cf53e288085db7450 Mon Sep 17 00:00:00 2001 From: Tony Mack Date: Tue, 27 Jan 2009 21:31:26 +0000 Subject: [PATCH] fix formatting --- geni/util/rspec.py | 52 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 39 insertions(+), 13 deletions(-) diff --git a/geni/util/rspec.py b/geni/util/rspec.py index 23e20f9f..00fa429c 100644 --- a/geni/util/rspec.py +++ b/geni/util/rspec.py @@ -4,6 +4,32 @@ import os from xml.dom import minidom from types import StringTypes +class Spec(dict): + + fields = {} + plcFields = {} + type = None + + def __init__(self, spec_dict): + sdict = self.plcToSpec(spec_dict) + dict.__init__(self, sdict) + + def plcToSpec(self, spec_dict): + spec = {} + for field in self.fields: + plc_field = plc_fields[field] + + if spec_dict.has_key(field): + spec[field] = spec_dict(field) + + return {self.type: spec} + + +class IfSpec(Spec): + pass + + + class Rspec(): def __init__(self, xml = None, xsd = None): @@ -115,19 +141,19 @@ class Rspec(): convert a dict object into a dom object. """ - def elementNode(tagname, rd): - element = minidom.Element(tagname) - for key in rd.keys(): - if isinstance(rd[key], StringTypes): - element.setAttribute(key, rd[key]) - elif isinstance(rd[key], dict): - child = elementNode(key, rd[key]) - element.appendChild(child) - elif isinstance(rd[key], list): - for item in rd[key]: - child = elementNode(key, item) - element.appendChild(child) - return element + def elementNode(tagname, rd): + element = minidom.Element(tagname) + for key in rd.keys(): + if isinstance(rd[key], StringTypes): + element.setAttribute(key, rd[key]) + elif isinstance(rd[key], dict): + child = elementNode(key, rd[key]) + element.appendChild(child) + elif isinstance(rd[key], list): + for item in rd[key]: + child = elementNode(key, item) + element.appendChild(child) + return element node = elementNode(rdict.keys()[0], rdict.values()[0]) if include_doc: -- 2.47.0