@Override public void setStartDateForUser(DocumentReference user, Date startDate) throws NotificationException { Set<NotificationFilterPreference> preferences = getFilterPreferences(user); if (preferences.isEmpty()) { return; } for (NotificationFilterPreference preference : preferences) { if (preference instanceof DefaultNotificationFilterPreference) { ((DefaultNotificationFilterPreference) preference).setStartingDate(startDate); } } saveFilterPreferences(user, preferences); }
private void handleObject(List<NotificationFilterPreference> preferencesToConvert, BaseObject obj) { DefaultNotificationFilterPreference preference = new DefaultNotificationFilterPreference(); NotificationFilterType filterType = NotificationFilterType.valueOf( obj.getStringValue(FIELD_FILTER_TYPE).toUpperCase()); Set<NotificationFormat> filterFormats = new HashSet<>(); for (String format : (List<String>) obj.getListValue(FIELD_FILTER_FORMATS)) { filterFormats.add(NotificationFormat.valueOf(format.toUpperCase())); } preference.setProviderHint("userProfile"); preference.setFilterName(obj.getStringValue(FIELD_FILTER_NAME)); preference.setEnabled(obj.getIntValue(FIELD_IS_ENABLED, 1) == 1); preference.setActive(obj.getIntValue(FIELD_IS_ACTIVE, 1) == 1); preference.setFilterType(filterType); preference.setNotificationFormats(filterFormats); preference.setStartingDate(obj.getDateValue(FIELD_STARTING_DATE)); handleProperties(preferencesToConvert, obj, preference); }
preference.setActive(false); preference.setFilterName(ScopeNotificationFilter.FILTER_NAME); preference.setStartingDate(new Date());