publish method

Future<void> publish(
  1. AppMetadata? metadata
)

FR-META-004, 005 — deliver to sink, swallow sink failures.

Implementation

Future<void> publish(AppMetadata? metadata) async {
  if (metadata == null) return;
  final sink = _sink;
  if (sink == null) return;
  try {
    await sink.onMetadata(metadata);
    _logger.debug('metadata.sink.deliver', {'appId': metadata.appId});
  } catch (e, st) {
    _logger.warn('metadata.sink.fail', {
      'appId': metadata.appId,
      'cause': e.toString(),
    });
    _logger.logError('metadata.sink.fail', e, st);
  }
}