use of com.alexstyl.specialdates.events.namedays.calendar.NamedayCalendar in project Memento-Calendar by alexstyl.
the class DailyReminderIntentService method notifyForNamedaysFor.
private void notifyForNamedaysFor(Date date) {
NamedayLocale locale = namedayPreferences.getSelectedLanguage();
NamedayCalendar namedayCalendar = namedayCalendarProvider.loadNamedayCalendarForLocale(locale, date.getYear());
NamesInADate names = namedayCalendar.getAllNamedaysOn(date);
if (containsNames(names)) {
notifier.forNamedays(names.getNames(), date);
}
}
use of com.alexstyl.specialdates.events.namedays.calendar.NamedayCalendar in project Memento-Calendar by alexstyl.
the class NameSuggestionsAdapter method newInstance.
public static NameSuggestionsAdapter newInstance(OnNameSelectedListener onNameSelectedListener, NamedayUserSettings namedayPreferences, NamedayCalendarProvider namedayCalendarProvider) {
NamedayLocale locale = namedayPreferences.getSelectedLanguage();
WordComparator compatator;
if (locale.isComparedBySound()) {
compatator = new SoundWordComparator();
} else {
compatator = new CaseInsensitiveComparator();
}
int year = Date.Companion.today().getYear();
NamedayCalendar namedayCalendar = namedayCalendarProvider.loadNamedayCalendarForLocale(locale, year);
ArrayList<String> names = namedayCalendar.getAllNames();
return new NameSuggestionsAdapter(new NameFilter(names, compatator), onNameSelectedListener);
}
use of com.alexstyl.specialdates.events.namedays.calendar.NamedayCalendar in project Memento-Calendar by alexstyl.
the class PeopleDynamicNamedaysProviderTest method setUp.
@Before
public void setUp() {
NamedayCalendar namedayCalendar = new TestNamedayCalendarBuilder().forLocale(LOCALE).forYear(YEAR).build();
when(namedayCalendarProvider.loadNamedayCalendarForLocale(any(NamedayLocale.class), any(Integer.class))).thenReturn(namedayCalendar);
when(mockSettings.getSelectedLanguage()).thenReturn(LOCALE);
when(mockSettings.isEnabled()).thenReturn(true);
calculator = new PeopleDynamicNamedaysProvider(mockSettings, namedayCalendarProvider, mockContactsProvider);
}
use of com.alexstyl.specialdates.events.namedays.calendar.NamedayCalendar in project Memento-Calendar by alexstyl.
the class NamedayCalendarProvider method loadNamedayCalendarForLocale.
public NamedayCalendar loadNamedayCalendarForLocale(NamedayLocale locale, int year) {
if (hasRequestedSameCalendar(locale, year)) {
return cachedCalendar;
}
NamedayJSON namedayJSON = getNamedayJSONFor(locale);
SpecialNamedays specialCaseHandler = getSpecialnamedaysHandler(locale, namedayJSON);
NamedayBundle namedaysBundle = getNamedayBundle(locale, namedayJSON);
NamedayCalendar namedayCalendar = new NamedayCalendar(locale, namedaysBundle, specialCaseHandler, year);
cacheCalendar(namedayCalendar);
return namedayCalendar;
}
Aggregations