fromMap method

  1. @override
FcmSilentData? fromMap(
  1. Map<String, dynamic> dataMap
)

Exports all content into a serializable object

Implementation

@override
FcmSilentData? fromMap(Map<String, dynamic> dataMap) {
  _id = dataMap[NOTIFICATION_ID];

  if (data != null)
    _data?.clear();
  else
    _data = {};

  for (String key in dataMap.keys) {
    switch (key) {
      case NOTIFICATION_CREATED_DATE:
        _createdDate = AwesomeAssertUtils.extractValue<DateTime>(
            NOTIFICATION_CREATED_DATE, dataMap);
        break;

      case NOTIFICATION_CREATED_SOURCE:
        _createdSource = AwesomeAssertUtils.extractEnum<NotificationSource>(
            NOTIFICATION_CREATED_SOURCE, dataMap, NotificationSource.values);
        break;

      case NOTIFICATION_CREATED_LIFECYCLE:
        _createdLifeCycle =
            AwesomeAssertUtils.extractEnum<NotificationLifeCycle>(
                NOTIFICATION_CREATED_LIFECYCLE,
                dataMap,
                NotificationLifeCycle.values);
        continue;

      case SILENT_HANDLE:
        break;

      default:
        _data![key] = dataMap[key]?.toString();
        break;
    }
  }

  return this;
}