def create_integration_id(datacollect_id): autoproc_status = edFactoryPlugin.loadPlugin('EDPluginISPyBStoreAutoProcStatusv1_4') status_input = XSDataInputStoreAutoProcStatus() status_input.dataCollectionId = datacollect_id # needed even if we only want to get an integration ID? status_data = AutoProcStatus() status_data.step = "Indexing" status_data.status = "Launched" status_data.comments = "Getting integration ID" status_input.AutoProcStatus = status_data autoproc_status.dataInput = status_input # get our autoproc status id autoproc_status.executeSynchronous() return autoproc_status.dataOutput.autoProcIntegrationId
def log_to_ispyb_impl(integration_id, step, status, comments=""): # hack in the event we could not create an integration ID if integration_id is None: EDVerbose.ERROR('could not log to ispyb: no integration id') return autoproc_status = edFactoryPlugin.loadPlugin('EDPluginISPyBStoreAutoProcStatusv1_4') status_input = XSDataInputStoreAutoProcStatus() status_input.autoProcIntegrationId = integration_id status_data = AutoProcStatus() status_data.step = step status_data.status = status status_data.comments = comments status_input.AutoProcStatus = status_data autoproc_status.dataInput = status_input autoproc_status.executeSynchronous()