Skip to content

Instantly share code, notes, and snippets.

@dudarev
Created June 5, 2012 16:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dudarev/2876101 to your computer and use it in GitHub Desktop.
Save dudarev/2876101 to your computer and use it in GitHub Desktop.
import xml.dom.minidom
from exceptions import QueryRequired
import experiment
import analysis
class Result(object):
experiment_xml = None
analysis_xml = None
pass
def request(query=None, file_name=None):
"""
Makes a request to CGHub web service or gets data from a file.
Returns parsed Response object.
"""
if query==None and file_name==None:
raise QueryRequired
results = []
if query==None and file_name:
f = open(file_name, 'r')
raw_xml = f.read()
dom = xml.dom.minidom.parseString(raw_xml)
results_dom = dom.getElementsByTagName('Result')
results = []
for r in results_dom:
t = Result()
experimentTag = r.getElementsByTagName('experiment_xml')[0].firstChild
dom_instance = experiment.CreateFromDOM(experimentTag)
t.experiment_xml = dom_instance
analysisTag = r.getElementsByTagName('analysis_xml')[0].firstChild
dom_instance = analysis.CreateFromDOM(analysisTag)
t.analysis_xml = dom_instance
results.append(t)
return results
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment