Skip to content

Commit 35d0d99

Browse files
committed
Update geocoder in basehandler
1 parent 3990c12 commit 35d0d99

File tree

1 file changed

+3
-33
lines changed

1 file changed

+3
-33
lines changed

apps/etl/transform/sources/noaa_ibtracs.py

+3-33
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from pystac_monty.geocoding import GAULGeocoder
55
from pystac_monty.sources.ibtracs import IBTrACSDataSource, IBTrACSTransformer
66

7-
from apps.etl.models import ExtractionData, Transform
7+
from apps.etl.models import ExtractionData
88
from apps.etl.transform.sources.handler import BaseTransformerHandler
99
from main.celery import app
1010

@@ -14,7 +14,6 @@
1414
class IbtracsTransformHandler(BaseTransformerHandler):
1515
transformer = IBTrACSTransformer
1616
transformer_schema = IBTrACSDataSource
17-
geocoder = GAULGeocoder(gpkg_path=None, service_base_url=settings.GEOCODER_URL)
1817

1918
@classmethod
2019
def get_schema_data(cls, extraction_obj: ExtractionData):
@@ -23,37 +22,8 @@ def get_schema_data(cls, extraction_obj: ExtractionData):
2322

2423
return cls.transformer_schema(source_url=extraction_obj.url, data=data.decode("utf-8"))
2524

26-
@classmethod
27-
def handle_transformation(cls, extraction_id):
28-
logger.info("Transformation started")
29-
extraction_obj = ExtractionData.objects.filter(id=extraction_id).first()
30-
31-
transform_obj = Transform.objects.create(
32-
extraction=extraction_obj,
33-
status=Transform.Status.PENDING,
34-
)
35-
36-
try:
37-
schema = cls.get_schema_data(extraction_obj)
38-
transformer = cls.transformer(schema, geocoder=cls.geocoder)
39-
transformed_items = transformer.make_items()
40-
print("...........", transformed_items[0].__dict__)
41-
42-
transform_obj.status = Transform.Status.SUCCESS
43-
transform_obj.save(update_fields=["status"])
44-
45-
cls.load_stac_item_to_queue(transformed_items, transform_obj.id)
46-
47-
logger.info("Transformation ended")
48-
49-
except Exception as e:
50-
logger.error("Transformation failed", exc_info=True, extra={"extraction_id": extraction_obj.id})
51-
transform_obj.status = Transform.Status.FAILED
52-
transform_obj.save(update_fields=["status"])
53-
# FIXME: Check if this creates duplicate entry in Sentry. if yes, remove this.
54-
raise e
55-
5625
@staticmethod
5726
@app.task
5827
def task(extraction_id):
59-
return IbtracsTransformHandler().handle_transformation(extraction_id)
28+
geocoder = GAULGeocoder(gpkg_path=None, service_base_url=settings.GEOCODER_URL)
29+
return IbtracsTransformHandler().handle_transformation(extraction_id, geocoder)

0 commit comments

Comments
 (0)