public ModsType mapPairs(ModsType mods, List<ExtentPair> pairs) { pairs = MapperUtils.noNull(pairs); List<ArrayItem> oldies = map(mods); List<ArrayItem> unknowns = filter(oldies, false, ExtentItem.class); List<ExtentItem> toExtents = toExtents(pairs); List<ArrayItem> news = MapperUtils.mergeList(toExtents, unknowns); return map(mods, pairs, NO_PRESERVATION, NO_PRESERVATION); }
public ModsType map( ModsType mods, List<ExtentPair> pairs, String preservationTreatment, String preservationStateOfArt) { pairs = MapperUtils.noNull(pairs); List<ArrayItem> oldies = map(mods); List<ExtentItem> toExtents = toExtents(pairs); List<ArrayItem> news; if (preservationTreatment == NO_PRESERVATION) { List<ArrayItem> unknowns = filter(oldies, false, ExtentItem.class); news = MapperUtils.mergeList(toExtents, unknowns); } else { List<ArrayItem> unknowns = filter(oldies, false, ExtentItem.class, NoteItem.class); List<NoteItem> notes = MapperUtils.find(oldies, NoteItem.class); updateTreatmentItem(oldies, notes, preservationTreatment, PRESERVATION_TREATMENT); updateTreatmentItem(oldies, notes, preservationStateOfArt, PRESERVATION_STATE_OF_ART); news = MapperUtils.mergeList(toExtents, notes, unknowns); } return map(mods, news); }