private void addIssue(YStructure journal, YAncestor issue, String issueId) { if(issue == null) { issue = new YAncestor(YConstants.EXT_LEVEL_JOURNAL_ISSUE, issueId); } journal.addAncestor(issue); }
private void appendAncestorDataToYAncestor(List<YAncestor> result, String type, AncestorData data) { if (StringUtils.isNotBlank(data.getId()) || StringUtils.isNotBlank(data.getName())) { result.add(new YAncestor(ResourceDataConstants.MAP_ANCESTOR_TYPE_TO_LEVEL.get(type), data.getId(), new YName(data.getName()))); } }
public static void addPublisher(YElement element, String publisher) { YStructure structure = Enhancers.getOrCreateJournalStructure(element); YAncestor ancestor = new YAncestor(YConstants.EXT_LEVEL_JOURNAL_PUBLISHER); ancestor.addName(new YName(publisher)); structure.addAncestor(ancestor); }
public static void addJournal(YElement element, String journal) { YStructure structure = Enhancers.getOrCreateJournalStructure(element); YAncestor ancestor = new YAncestor(YConstants.EXT_LEVEL_JOURNAL_JOURNAL); ancestor.addName(new YName(journal)); structure.addAncestor(ancestor); }
public static void addVolume(YElement element, String volume) { YStructure structure = getOrCreateJournalStructure(element); YAncestor ancestor = new YAncestor(YConstants.EXT_LEVEL_JOURNAL_VOLUME); ancestor.addName(new YName(volume)); structure.addAncestor(ancestor); }
public static void addIssue(YElement element, String issue) { YStructure structure = getOrCreateJournalStructure(element); YAncestor ancestor = new YAncestor(YConstants.EXT_LEVEL_JOURNAL_ISSUE); ancestor.addName(new YName(issue)); structure.addAncestor(ancestor); } }
private void updateIssue(ZentralBlattSoFieldParser.SoFieldData soData) { if (soData.issue != null && soData.issue.length() > 0) { YAncestor ancestor = new YAncestor(YConstants.EXT_LEVEL_JOURNAL_ISSUE); // TODO // UID? YName issueName = new YName(soData.issue); yIssue.addName(issueName); ancestor.setIdentity(yIssue.getId()); ancestor.addName(issueName); yArticle.getStructure(YConstants.EXT_HIERARCHY_JOURNAL).addAncestor(ancestor); } }
al.add(new YAncestor(EXT_LEVEL_JOURNAL_JOURNAL, yJournal.getId()).addId(new YId( EXT_SCHEME_ISSN, yJournal.getIds(EXT_SCHEME_ISSN).get(0)))); yVolume.getStructure(EXT_HIERARCHY_JOURNAL).setAncestors(al); al.add(new YAncestor(EXT_LEVEL_JOURNAL_VOLUME, yVolume.getId())); yIssue.getStructure(EXT_HIERARCHY_JOURNAL).setAncestors(al); al.add(new YAncestor(EXT_LEVEL_JOURNAL_ISSUE, yIssue.getId())); yArticle.getStructure(EXT_HIERARCHY_JOURNAL).setAncestors(al);
al.add(new YAncestor(YConstants.EXT_LEVEL_JOURNAL_JOURNAL, yJournal.getId()).addId(new YId(YConstants.EXT_SCHEME_ISSN, yJournal.getId(YConstants.EXT_SCHEME_ISSN)))); yVolume.getStructure(YConstants.EXT_HIERARCHY_JOURNAL).setAncestors(al); al.add(new YAncestor(YConstants.EXT_LEVEL_JOURNAL_VOLUME, yVolume.getId())); yIssue.getStructure(YConstants.EXT_HIERARCHY_JOURNAL).setAncestors(al); al.add(new YAncestor(YConstants.EXT_LEVEL_JOURNAL_ISSUE, yIssue.getId())); yArticle.getStructure(YConstants.EXT_HIERARCHY_JOURNAL).setAncestors(al);
private void updateYear(ZentralBlattSoFieldParser.SoFieldData soData, String pyYear) { YAncestor ancestor = new YAncestor(YConstants.EXT_LEVEL_JOURNAL_YEAR); // TODO // UID? // soData.year is preferred if (soData.year != null && soData.year.length() > 0) { if (pyYear != null && pyYear.length() > 0 && !soData.year.equals(pyYear)) { log.warn("soData.year:[{}] != year:[{}]", soData.year, pyYear); } YName yearName = new YName(soData.year); yYear.addName(yearName); ancestor.setIdentity(yYear.getId()); ancestor.addName(yearName); yVolume.getStructure(YConstants.EXT_HIERARCHY_JOURNAL).addAncestor(ancestor); yIssue.getStructure(YConstants.EXT_HIERARCHY_JOURNAL).addAncestor(ancestor); yArticle.getStructure(YConstants.EXT_HIERARCHY_JOURNAL).addAncestor(ancestor); } // pyYear is assumed to refer just to publication - not to journal // itself /* * else if (pyYear != null && pyYear.length() > 0) { YName yearName = * new YName(pyYear) ancestor.addName(yearName); * yYear.addName(yearName); structure.addAncestor(ancestor); } */ }
@Override public YStructure build(PublicationMeta meta, List<YElement> ancestors) { if (isAlreadyBuilt(meta, ancestors)) { return null; } YStructure structure = new YStructure(getSupportedHierarchyId()); YElement directAncestor = null; if (!ancestors.isEmpty()) { directAncestor = ancestors.get(ancestors.size() - 1); YStructure parentStructure = directAncestor.getStructure(getSupportedHierarchyId()); structure.getAncestors().addAll(parentStructure.getAncestors()); YAncestor ancestor = new YAncestor(structure.getHierarchy()); ancestor.setLevel(getLevel(directAncestor)); AncestorsManagement.copyDataToAncestor(directAncestor, ancestor); structure.getAncestors().add(ancestor); } structure.setCurrent(getCurrent(meta, directAncestor)); return structure; }
private void updateVolume(ZentralBlattSoFieldParser.SoFieldData soData) { if (soData.volume != null && soData.volume.length() > 0) { YAncestor ancestor = new YAncestor(YConstants.EXT_LEVEL_JOURNAL_VOLUME); // TODO // UID? YName volumeName = new YName(soData.volume); yVolume.addName(volumeName); ancestor.setIdentity(yVolume.getId()); ancestor.addName(volumeName); yIssue.getStructure(YConstants.EXT_HIERARCHY_JOURNAL).addAncestor(ancestor); yArticle.getStructure(YConstants.EXT_HIERARCHY_JOURNAL).addAncestor(ancestor); } }
protected YStructure buildStructureFromParent(YElement parent, String hierarchy, String currentLevel) { YStructure structure = new YStructure(hierarchy); YCurrent current = new YCurrent(currentLevel); structure.setCurrent(current); if (parent != null) { YStructure parentStructure = parent.getStructure(hierarchy); structure.getAncestors().addAll(parentStructure.getAncestors()); YAncestor ancestor = new YAncestor(parentStructure.getCurrent().getLevel(), parent.getId()); ancestor.getNames().addAll(parent.getNames()); ancestor.getIds().addAll(parent.getIds()); structure.addAncestor(ancestor); } return structure; }
private YElement buildElement(HierarchyLevel hierarchyLevel, String elementLevel, String parentId, String parentLevel, String parentName) { final String elementId = hierarchyLevel.getId(); final String name = hierarchyLevel.getName(); YElement element = new YElement(elementId); element.setNames(Lists.newArrayList(new YName(name))); final YStructure yStructure = new YStructure(HierarchyWithLevelIds.EXT_HIERARCHY_JOURNAL); yStructure.setCurrent(new YCurrent(elementLevel)); final YAncestor parent = new YAncestor(parentLevel, parentId); parent.addName(new YName(parentName)); yStructure.addAncestor(parent); element.setStructures(Lists.newArrayList(yStructure)); return element; } }
private void updateJournal(ZentralBlattSoFieldParser.SoFieldData soData, ZentralBlattSeFieldParser.SeFieldData seData) { YAncestor ancestor = new YAncestor(YConstants.EXT_LEVEL_JOURNAL_JOURNAL); boolean updated = false; // is there any meaningful information in the
/** * Creates an element in the hierarchy. * * @param level hierarchy for the element * @param level level for the element in the hierarchy * @param name name to use as the canonical name of the element * @param parent parent for the element in the hierarchy * @param id eudml id * @return the created element */ public YElement element(String hierarchy, String level, YName name, YElement parent, String id) { YStructure ps = parent==null ? null : parent.getStructure(hierarchy); YStructure struct = new YStructure(hierarchy).setCurrent(new YCurrent(level)); List<String> issns = parent==null ? null : parent.getIds(IdSchemaIds.EXT_SCHEME_ISSN); String issn = (issns==null || issns.isEmpty()) ? null : issns.get(0); if (ps != null) { YAncestor ancestor = new YAncestor(ps.getCurrent().getLevel(), parent.getId()).addName(parent.getDefaultName()); if (StringUtils.isNotEmpty(issn)) { ancestor.addId(new YId(IdSchemaIds.EXT_SCHEME_ISSN, issn)); } struct.setAncestors(ps.getAncestors()).addAncestor(ancestor); } return new YElement(id).addName(name).addStructure(struct); }
YAncestor journalAncestor = new YAncestor(); journalAncestor.setLevel(HierarchyWithLevelIds.EXT_LEVEL_JOURNAL_JOURNAL); journalAncestor.setIdentity(journal.getId()); YAncestor yearAncestor = new YAncestor(); yearAncestor.setLevel(HierarchyWithLevelIds.EXT_LEVEL_JOURNAL_YEAR); yearAncestor.setIdentity(year.getId()); YAncestor volumeAncestor = new YAncestor(); volumeAncestor.setLevel(HierarchyWithLevelIds.EXT_LEVEL_JOURNAL_VOLUME); volumeAncestor.setIdentity(volume.getId());
YAncestor journalAncestor = new YAncestor(); journalAncestor.setLevel(HierarchyWithLevelIds.EXT_LEVEL_JOURNAL_JOURNAL); journalAncestor.setIdentity(journal.getId()); YAncestor yearAncestor = new YAncestor(); yearAncestor.setLevel(HierarchyWithLevelIds.EXT_LEVEL_JOURNAL_YEAR); yearAncestor.setIdentity(year.getId());
/** * Creates an element in the hierarchy specified by the <code>hierarchy</code> property. * * @param level level for the element in the hierarchy * @param name name to use as the canonical name of the element * @param parent parent for the element in the hierarchy * @return the created element */ public YElement element(String level, YName name, YElement parent) { YStructure ps = parent.getStructure(getHierarchy()); YStructure struct = new YStructure(getHierarchy()).setCurrent(new YCurrent(level)); if (ps != null) struct .setAncestors(ps.getAncestors()) .addAncestor( new YAncestor(ps.getCurrent().getLevel(), parent.getId()) .addName(parent.getDefaultName())); return new YElement( generateId(EXT_PREFIX_ELEMENT, parent, name)) .addName(name) .addStructure(struct); }
YAncestor journalAncestor = new YAncestor(); journalAncestor.setLevel(HierarchyWithLevelIds.EXT_LEVEL_JOURNAL_JOURNAL); journalAncestor.setIdentity(journal.getId());