diff --git a/geomagio/imfv283/GOESIMFV283Factory.py b/geomagio/imfv283/GOESIMFV283Factory.py index 1e646895c1036e75d920078f6c5e2939f9ed1b8b..33b1c25775356def988f17999458b63b64cb6727 100644 --- a/geomagio/imfv283/GOESIMFV283Factory.py +++ b/geomagio/imfv283/GOESIMFV283Factory.py @@ -39,19 +39,14 @@ class GOESIMFV283Factory(IMFV283Factory): IMFV283Factory Timeseriesfactory """ - def __init__(self, observatory=None, channels=None, - type=None, interval='minute', directory=None, - getdcpmessages=None, password = None, server=None, - user=None): - IMFV283Factory.__init__(self, None, observatory, channels, - type, interval) + def __init__(self, directory=None, getdcpmessages=None, + password = None, server=None, user=None, **kwargs): + IMFV283Factory.__init__(self, None, **kwargs) self.directory = directory self.getdcpmessages = getdcpmessages self.server = server self.user = user self.password = password - self.observatories = observatory - self.observatory = observatory[0] self.javaerror = 'java.io.IOException: Socket closed' def get_timeseries(self, starttime, endtime, observatory=None, @@ -82,6 +77,19 @@ class GOESIMFV283Factory(IMFV283Factory): return timeseries + def _post_process(self, timeseries): + """And metadata to the timeseries traces. + + Parameters + ---------- + timeseries: obspy.core.Stream + timeseries object with incomplete metadata + """ + for trace in timeseries: + stats = trace.stats + self.observatoryMetadata.set_metadata(stats, stats.station, + stats.channel, 'variation', 'minute') + def _retrieve_goes_messages(self, starttime, endtime, observatory): """Retrieve goes messages, using getdcpmessages commandline tool. @@ -117,11 +125,14 @@ class GOESIMFV283Factory(IMFV283Factory): for server in self.server: print >> sys.stderr, server + print >> sys.stderr, self.password + print >> sys.stderr, self.getdcpmessages + print >> sys.stderr, self.directory + '/' + self.criteria_file_name proc = subprocess.Popen( [self.getdcpmessages, '-h ' + server, '-u ' + self.user, - '-p ' + self.password, + '-P ' + self.password, '-f ' + self.directory + '/' + self.criteria_file_name, '-t 60', '-n'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)