Skip to content

Commit

Permalink
always update Pub/Sub links to GBs (#23) (#28)
Browse files Browse the repository at this point in the history
* always update Pub/Sub links to GBs (#23)

* remove line not needed
  • Loading branch information
tomkralidis authored Nov 6, 2024
1 parent 69ef05a commit 060f96f
Showing 1 changed file with 8 additions and 6 deletions.
14 changes: 8 additions & 6 deletions wis2-gdc-management/wis2_gdc/registrar.py
Original file line number Diff line number Diff line change
Expand Up @@ -213,9 +213,8 @@ def register(self, metadata: Union[dict, str], topic: str = None) -> None:
self._process_record_metric(
self.metadata['id'], f'{data_policy}_total', centre_id_labels)

if data_policy == 'core':
LOGGER.info('Core data detected: updating links')
self.update_record_links()
LOGGER.info('Updating links')
self.update_record_links(data_policy)

LOGGER.info('Publishing metadata to backend')
self._publish()
Expand Down Expand Up @@ -360,7 +359,7 @@ def _publish(self):
LOGGER.info(f'Saving to {BACKEND_TYPE} ({BACKEND_CONNECTION})')
self.backend.save_record(self.metadata)

def update_record_links(self) -> None:
def update_record_links(self, data_policy: str) -> None:
"""
Update Global Service links
Expand All @@ -379,13 +378,16 @@ def is_wis2_mqtt_link(link) -> bool:
for count, value in enumerate(self.metadata['links']):
if is_wis2_mqtt_link(value):
LOGGER.debug('Adjusting MQTT link')
channel = value.get('wmo:topic', value.get('channel'))
channel = value.get('channel', value.get('wmo:topic'))

new_link = value
_ = new_link.pop('wmo:topic', None)

if data_policy == 'core':
LOGGER.debug('Adjusting channel origin to cache')
new_link['channel'] = channel.replace('origin', 'cache')

new_link['rel'] = 'items'
new_link['channel'] = channel.replace('origin', 'cache')
new_link['type'] = 'application/geo+json'

del self.metadata['links'][count]
Expand Down

0 comments on commit 060f96f

Please sign in to comment.