def postProcess(self, _edObject=None): EDPluginExecProcessScript.postProcess(self) self.DEBUG("EDPluginExecDatGnomv1_1.postProcess") # Create some output data cwd = self.getWorkingDirectory() outfile = os.path.join(cwd, os.path.basename(self.outFile)) if not os.path.isfile(outfile): self.error("EDPluginExecDatGnomv1_1 did not produce output file %s as expected !" % self.outFile) self.setFailure() self.dataOutput = XSDataResultDatGnom() return try: os.rename(outfile, self.outFile) except OSError: # may fail if src and dst on different filesystem shutil.copy(outfile, self.outFile) gnom = XSDataGnom(gnomFile=XSDataFile(XSDataString(self.outFile))) logfile = os.path.join(self.getWorkingDirectory(), self.getScriptLogFileName()) out = open(logfile, "r").read().split() for key, val, typ in (("dmax:", "dmax", XSDataLength), ("Guinier:", "rgGuinier", XSDataLength), ("Gnom:", "rgGnom", XSDataLength), ("Total:", "total", XSDataDouble)): if key in out: idx = out.index(key) res = out[idx + 1] gnom.__setattr__(val, typ(float(res))) else: self.error("EDPluginExecDatGnomv1_1.postProcess No key %s in file %s" % (key, logfile)) self.setFailure() self.dataOutput = XSDataResultDatGnom(gnom=gnom) self.dataOutput.status = XSDataStatus(message=self.getXSDataMessage())
def postProcess(self, _edObject=None): EDPluginExecProcessScript.postProcess(self) self.DEBUG("EDPluginExecDatGnomv1_0.postProcess") # Create some output data if not os.path.isfile(self.outFile): self.error( "EDPluginExecDatGnomv1_0 did not produce output file %s as expected !" % self.outFile) self.setFailure() gnom = XSDataGnom(gnomFile=XSDataFile(XSDataString(self.outFile))) logfile = os.path.join(self.getWorkingDirectory(), self.getScriptLogFileName()) out = open(logfile, "r").read().split() for key, val, typ in (("Dmax", "dmax", XSDataLength), ("Guinier", "rgGuinier", XSDataLength), ("Gnom", "rgGnom", XSDataLength), ("Total", "total", XSDataDouble)): idx = out.index(key) if idx == -1: self.error("No key %s in file %s" % (key, logfile)) self.setFailure() res = out[idx + 2] gnom.__setattr__(val, typ(float(res))) self.dataOutput = XSDataResultDatGnom(gnom=gnom)
def postProcess(self, _edObject=None): EDPluginExecProcessScript.postProcess(self) self.DEBUG("EDPluginExecDatGnomv1_0.postProcess") # Create some output data if not os.path.isfile(self.outFile): self.error("EDPluginExecDatGnomv1_0 did not produce output file %s as expected !" % self.outFile) self.setFailure() self.dataOutput = XSDataResultDatGnom() return gnom = XSDataGnom(gnomFile=XSDataFile(XSDataString(self.outFile))) logfile = os.path.join(self.getWorkingDirectory(), self.getScriptLogFileName()) out = open(logfile, "r").read().split() for key, val, typ in (("Dmax", "dmax", XSDataLength), ("Guinier", "rgGuinier", XSDataLength), ("Gnom", "rgGnom", XSDataLength), ("Total", "total", XSDataDouble)): if key in out: idx = out.index(key) res = out[idx + 2] gnom.__setattr__(val, typ(float(res))) else: self.error("EDPluginExecDatGnomv1_0.postProcess No key %s in file %s" % (key, logfile)) self.setFailure() self.dataOutput = XSDataResultDatGnom(gnom=gnom)
def postProcess(self, _edObject=None): EDPluginExecProcessScript.postProcess(self) self.DEBUG("EDPluginExecDatGnomv1_1.postProcess") # Create some output data cwd = self.getWorkingDirectory() outfile = os.path.join(cwd, os.path.basename(self.outFile)) if not os.path.isfile(outfile): self.error( "EDPluginExecDatGnomv1_1 did not produce output file %s as expected !" % self.outFile) self.setFailure() self.dataOutput = XSDataResultDatGnom() return try: os.rename(outfile, self.outFile) except OSError: # may fail if src and dst on different filesystem shutil.copy(outfile, self.outFile) gnom = XSDataGnom(gnomFile=XSDataFile(XSDataString(self.outFile))) logfile = os.path.join(self.getWorkingDirectory(), self.getScriptLogFileName()) out = open(logfile, "r").read().split() for key, val, typ in (("dmax:", "dmax", XSDataLength), ("Guinier:", "rgGuinier", XSDataLength), ("Gnom:", "rgGnom", XSDataLength), ("Total:", "total", XSDataDouble)): if key in out: idx = out.index(key) res = out[idx + 1] gnom.__setattr__(val, typ(float(res))) else: self.error( "EDPluginExecDatGnomv1_1.postProcess No key %s in file %s" % (key, logfile)) self.setFailure() self.dataOutput = XSDataResultDatGnom(gnom=gnom) self.dataOutput.status = XSDataStatus(message=self.getXSDataMessage())