Skip to content
Snippets Groups Projects
Commit b2b0ecb1 authored by Wernle, Alexandra Nicole's avatar Wernle, Alexandra Nicole
Browse files

Added factory to created_by flag in order to track the source in the future....

Added factory to created_by flag in order to track the source in the future. Changed status flag back to previous definition.
parent 8d37f54a
No related branches found
No related tags found
1 merge request!227Changes to copy_absolutes.py and new copy_observatory.py
......@@ -66,8 +66,10 @@ def copy_absolutes(
"""Copy absolutes from the web absolutes service OR residual spreadsheets into the metadata service."""
if factory.value == ResidualFactory.WEB_ABSOLUTES:
factory = WebAbsolutesFactory(url=web_absolutes_url)
source_factory = "webabsolutes"
else:
factory = SpreadsheetAbsolutesFactory(base_directory=directory)
source_factory = "spreadsheet"
readings = get_readings(
factory=factory,
......@@ -89,10 +91,12 @@ def copy_absolutes(
iterable=readings, label="Uploading to metadata service"
) as progressbar:
for reading in progressbar:
upload_reading(factory=metadata_factory, reading=reading)
upload_reading(
factory=metadata_factory, reading=reading, source_factory=source_factory
)
def create_reading_metadata(reading: Reading) -> Metadata:
def create_reading_metadata(reading: Reading, source_factory) -> Metadata:
"""Create reading metadata object.
Parameters
......@@ -107,13 +111,13 @@ def create_reading_metadata(reading: Reading) -> Metadata:
measurement_times = [m.time for m in reading.measurements if m.time]
metadata = Metadata(
category=MetadataCategory.READING,
created_by=reading.metadata.get("observer", "copy_absolutes"),
created_by=(source_factory),
endtime=max(measurement_times),
metadata=json.loads(reading.json()),
network="NT",
starttime=min(measurement_times),
station=reading.metadata["station"],
status="reviewed" if reading.metadata.get("reviewed") else "legacy",
status="reviewed" if reading.metadata.get("reviewed") else "new",
updated_by=reading.metadata.get("reviewer"),
)
return metadata
......@@ -157,7 +161,9 @@ def main() -> None:
typer.run(copy_absolutes)
def upload_reading(factory: MetadataFactory, reading: Reading) -> Metadata:
def upload_reading(
factory: MetadataFactory, reading: Reading, source_factory
) -> Metadata:
"""Upload reading to metadata service
Parameters
......@@ -171,7 +177,7 @@ def upload_reading(factory: MetadataFactory, reading: Reading) -> Metadata:
-------
created metadata object
"""
metadata = create_reading_metadata(reading=reading)
metadata = create_reading_metadata(reading=reading, source_factory=source_factory)
# TODO: should this check if metadata was already uploaded?
# TODO: should that check occur before calling this method?
return factory.create_metadata(metadata=metadata)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment