diff --git a/gracedb/events/translator.py b/gracedb/events/translator.py index ca78a1dd4cbe36a6abf473cdc950e6badbbcc701..a0d5ca6b4f58c927f7a0f24cc5dc6cfa4610c1cd 100644 --- a/gracedb/events/translator.py +++ b/gracedb/events/translator.py @@ -152,11 +152,13 @@ def handle_uploaded_data(event, datafilename, except Exception, e: warnings += "Could not extract coinc event table." return temp_data_loc, warnings - event.instruments = coinc_event_table.instruments event.nevents = coinc_event_table.nevents event.likelihood = cleanData(coinc_event_table.likelihood,'likelihood') + # event.instruments is attached to the base Event and event.ifos is + # part of the CoincInspiralEvent event.ifos = ifos + event.instruments = ifos event.end_time = end_time[0] event.end_time_ns = end_time[1] event.mass = mass @@ -267,11 +269,18 @@ def handle_uploaded_data(event, datafilename, mb_table = mb_table[0] event.gpstime = mb_table.start_time - coinc_table = CoincTable.get_table(xmldoc) - coinc_table = coinc_table[0] - event.instruments = coinc_table.instruments - event.nevents = coinc_table.nevents - event.likelihood = cleanData(coinc_table.likelihood, 'likelihood') + # Try reading the CoincInspiralTable to get the ifos + warnings = [] + try: + coinc_table = CoincInspiralTable.get_table(xmldoc)[0] + except Exception, e: + warnings += "Could not extract coinc inspiral table." + return temp_data_loc, warnings + + coinc_event_table = CoincTable.get_table(xmldoc)[0] + event.instruments = coinc_table.ifos + event.nevents = coinc_event_table.nevents + event.likelihood = cleanData(coinc_event_table.likelihood, 'likelihood') # XXX xml_filename unused. #xml_filename = os.path.join(output_dir, coinc_table_filename)