X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fserver%2Fapi_versions.py;h=6e584922bf203bbfa0e7c799df9bd625aeb4e032;hb=fd395e1944dcd49f10a4d5b27ce4983ad389fb96;hp=2f1ccf739602c420e30707034801a990ef51ec0d;hpb=7f0832796aa604729648728328ab9a433653bf02;p=sfa.git diff --git a/sfa/server/api_versions.py b/sfa/server/api_versions.py index 2f1ccf73..6e584922 100644 --- a/sfa/server/api_versions.py +++ b/sfa/server/api_versions.py @@ -2,13 +2,14 @@ import os from sfa.util.xml import XML from sfa.util.config import Config + class ApiVersions: required_fields = ['version', 'url'] - + template = """ -""" +""" def __init__(self, string=None, filename=None, create=False): self.xml = None @@ -22,9 +23,10 @@ class ApiVersions: else: # load the default file c = Config() - api_versions_file = os.path.sep.join([c.config_path, 'api_versions.xml']) + api_versions_file = os.path.sep.join( + [c.config_path, 'api_versions.xml']) self.load(api_versions_file) - + def create(self): self.xml = XML(string=ApiVersions.template) @@ -32,16 +34,14 @@ class ApiVersions: self.xml = XML(source) def get_versions(self): - versions = [] + versions = {} for value in self.xml.todict().values(): if not value: continue if isinstance(value, list): for item in value: if isinstance(item, dict) and \ - set(ApiVersions.required_fields).issubset(item.keys()): - api_version = {str(item['version']): item['url']} - versions.append(api_version) - return versions - - + set(ApiVersions.required_fields).issubset(item.keys()) and \ + item['version'] != '' and item['url'] != '': + versions[str(item['version'])] = item['url'] + return versions