use of com.alexstyl.specialdates.events.namedays.NameCelebrations in project Memento-Calendar by alexstyl.
the class GreeklishParserTest method alexandrosNamedayIsReturnedCorrectly.
@Test
public void alexandrosNamedayIsReturnedCorrectly() {
NamedayBundle namedayBundle = NamedayJSONParser.getNamedaysFromJSONasSounds(namedayJSON);
NameCelebrations dates = namedayBundle.getDatesFor("Αλέξανδρος");
NameCelebrations datesGreeklish = namedayBundle.getDatesFor("Aleksandros");
assertThatContainsSamedate(dates, datesGreeklish);
}
use of com.alexstyl.specialdates.events.namedays.NameCelebrations in project Memento-Calendar by alexstyl.
the class CharacterNode method addDate.
@Override
public void addDate(String name, Date date) {
Index index = new Index(name.length());
if (index.hasNotStarted()) {
if (dates == null) {
dates = new NameCelebrations(name);
}
}
index.stepUp();
addDateInternal(index, name, date);
}
use of com.alexstyl.specialdates.events.namedays.NameCelebrations in project Memento-Calendar by alexstyl.
the class CharacterNode method addDateInternal.
private void addDateInternal(Index index, String word, Date date) {
Character s = null;
if (!index.hasEnded()) {
s = word.charAt(index.intValue());
index.stepUp();
if (index.intValue() == word.length()) {
index.end();
}
}
if (s == null) {
if (dates == null) {
dates = new NameCelebrations(word);
}
dates.addDate(date);
} else {
CharacterNode theNode = null;
Collator collator = getCollator();
for (CharacterNode node : nodes) {
if (collator.compare(node.keySound.toString(), s.toString()) == 0) {
theNode = node;
break;
}
}
if (theNode == null) {
theNode = new CharacterNode(s);
nodes.add(theNode);
}
theNode.addDateInternal(index, word, date);
}
}
use of com.alexstyl.specialdates.events.namedays.NameCelebrations in project Memento-Calendar by alexstyl.
the class CharacterNode method getDatesInternal.
private NameCelebrations getDatesInternal(Index index, String name) {
Character s = null;
if (!index.hasEnded()) {
s = name.charAt(index.intValue());
index.stepUp();
if (index.intValue() >= name.length()) {
index.end();
}
}
if (s == null) {
return getDates();
} else {
Collator collator = getCollator();
for (CharacterNode node : nodes) {
if (collator.compare(node.keySound.toString(), s.toString()) == 0) {
int currentIndex = index.intValue();
NameCelebrations e = node.getDatesInternal(index, name);
if (e != null) {
return e;
}
index.setTo(currentIndex);
}
}
return new NameCelebrations(name);
}
}
use of com.alexstyl.specialdates.events.namedays.NameCelebrations in project Memento-Calendar by alexstyl.
the class NamedayJSONParserTest method amaliaNamedayIsReturnedCorrectly.
@Test
public void amaliaNamedayIsReturnedCorrectly() {
NamedayBundle namedayBundle = NamedayJSONParser.getNamedaysFrom(namedayJSON);
NameCelebrations dates = namedayBundle.getDatesFor("Αμαλία");
assertThatContainsDate(dates, Date.Companion.on(10, JULY));
}
Aggregations