hostedby patching to work with the updated Crossref contents, resolved conflict
This commit is contained in:
parent
0139f23d66
commit
3776327a8c
|
@ -25,27 +25,38 @@ object SparkApplyHostedByMapToResult {
|
||||||
val i = p.getInstance().asScala
|
val i = p.getInstance().asScala
|
||||||
if (i.size == 1) {
|
if (i.size == 1) {
|
||||||
val inst: Instance = i.head
|
val inst: Instance = i.head
|
||||||
inst.getHostedby.setKey(ei.getHostedById)
|
patchInstance(p, ei, inst)
|
||||||
inst.getHostedby.setValue(ei.getName)
|
|
||||||
if (ei.getOpenAccess) {
|
|
||||||
inst.setAccessright(
|
|
||||||
OafMapperUtils.accessRight(
|
|
||||||
ModelConstants.ACCESS_RIGHT_OPEN,
|
|
||||||
"Open Access",
|
|
||||||
ModelConstants.DNET_ACCESS_MODES,
|
|
||||||
ModelConstants.DNET_ACCESS_MODES
|
|
||||||
)
|
|
||||||
)
|
|
||||||
inst.getAccessright.setOpenAccessRoute(OpenAccessRoute.gold)
|
|
||||||
p.setBestaccessright(OafMapperUtils.createBestAccessRights(p.getInstance()));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
} else {
|
||||||
|
val cf = i.map(ii => ii.getCollectedfrom.getValue)
|
||||||
|
if (cf.contains("Crossref")) {
|
||||||
|
i.foreach(ii => {
|
||||||
|
patchInstance(p, ei, ii)
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
p
|
p
|
||||||
})(Encoders.bean(classOf[Publication]))
|
})(Encoders.bean(classOf[Publication]))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private def patchInstance(p: Publication, ei: EntityInfo, inst: Instance): Unit = {
|
||||||
|
inst.getHostedby.setKey(ei.getHostedById)
|
||||||
|
inst.getHostedby.setValue(ei.getName)
|
||||||
|
if (ei.getOpenAccess) {
|
||||||
|
inst.setAccessright(
|
||||||
|
OafMapperUtils.accessRight(
|
||||||
|
ModelConstants.ACCESS_RIGHT_OPEN,
|
||||||
|
"Open Access",
|
||||||
|
ModelConstants.DNET_ACCESS_MODES,
|
||||||
|
ModelConstants.DNET_ACCESS_MODES
|
||||||
|
)
|
||||||
|
)
|
||||||
|
inst.getAccessright.setOpenAccessRoute(OpenAccessRoute.gold)
|
||||||
|
p.setBestaccessright(OafMapperUtils.createBestAccessRights(p.getInstance()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
def main(args: Array[String]): Unit = {
|
def main(args: Array[String]): Unit = {
|
||||||
|
|
||||||
val logger: Logger = LoggerFactory.getLogger(getClass)
|
val logger: Logger = LoggerFactory.getLogger(getClass)
|
||||||
|
|
Loading…
Reference in New Issue