2021-07-01 14:29:47 +02:00
|
|
|
package eu.dnetlib.dhp.schema.sx
|
2021-04-23 12:15:36 +02:00
|
|
|
|
2021-04-23 14:03:59 +02:00
|
|
|
import eu.dnetlib.dhp.schema.common.ModelConstants
|
|
|
|
import eu.dnetlib.dhp.schema.oaf.{AccessRight, DataInfo, Field, KeyValue, Qualifier, StructuredProperty}
|
2021-04-23 12:15:36 +02:00
|
|
|
|
|
|
|
object OafUtils {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def generateKeyValue(key: String, value: String): KeyValue = {
|
|
|
|
val kv: KeyValue = new KeyValue()
|
|
|
|
kv.setKey(key)
|
|
|
|
kv.setValue(value)
|
|
|
|
kv.setDataInfo(generateDataInfo("0.9"))
|
|
|
|
kv
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2021-04-23 14:03:59 +02:00
|
|
|
def generateDataInfo(trust: String = "0.9", invisible: Boolean = false): DataInfo = {
|
2021-04-23 12:15:36 +02:00
|
|
|
val di = new DataInfo
|
|
|
|
di.setDeletedbyinference(false)
|
|
|
|
di.setInferred(false)
|
2021-04-23 14:03:59 +02:00
|
|
|
di.setInvisible(invisible)
|
2021-04-23 12:15:36 +02:00
|
|
|
di.setTrust(trust)
|
2021-04-23 14:03:59 +02:00
|
|
|
di.setProvenanceaction(createQualifier(ModelConstants.SYSIMPORT_ACTIONSET, ModelConstants.DNET_PROVENANCE_ACTIONS))
|
2021-04-23 12:15:36 +02:00
|
|
|
di
|
|
|
|
}
|
|
|
|
|
|
|
|
def createQualifier(cls: String, sch: String): Qualifier = {
|
|
|
|
createQualifier(cls, cls, sch, sch)
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
def createQualifier(classId: String, className: String, schemeId: String, schemeName: String): Qualifier = {
|
|
|
|
val q: Qualifier = new Qualifier
|
|
|
|
q.setClassid(classId)
|
|
|
|
q.setClassname(className)
|
|
|
|
q.setSchemeid(schemeId)
|
|
|
|
q.setSchemename(schemeName)
|
|
|
|
q
|
|
|
|
}
|
|
|
|
|
2021-04-23 14:03:59 +02:00
|
|
|
def createAccessRight(classId: String, className: String, schemeId: String, schemeName: String): AccessRight = {
|
|
|
|
val accessRight: AccessRight = new AccessRight
|
|
|
|
accessRight.setClassid(classId)
|
|
|
|
accessRight.setClassname(className)
|
|
|
|
accessRight.setSchemeid(schemeId)
|
|
|
|
accessRight.setSchemename(schemeName)
|
|
|
|
accessRight
|
|
|
|
}
|
|
|
|
|
2021-04-23 12:15:36 +02:00
|
|
|
|
|
|
|
def asField[T](value: T): Field[T] = {
|
|
|
|
val tmp = new Field[T]
|
|
|
|
tmp.setValue(value)
|
|
|
|
tmp
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
def createSP(value: String, classId: String,className:String, schemeId: String, schemeName:String): StructuredProperty = {
|
|
|
|
val sp = new StructuredProperty
|
|
|
|
sp.setQualifier(createQualifier(classId,className, schemeId, schemeName))
|
|
|
|
sp.setValue(value)
|
|
|
|
sp
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def createSP(value: String, classId: String,className:String, schemeId: String, schemeName:String, dataInfo: DataInfo): StructuredProperty = {
|
|
|
|
val sp = new StructuredProperty
|
|
|
|
sp.setQualifier(createQualifier(classId,className, schemeId, schemeName))
|
|
|
|
sp.setValue(value)
|
|
|
|
sp.setDataInfo(dataInfo)
|
|
|
|
sp
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
def createSP(value: String, classId: String, schemeId: String): StructuredProperty = {
|
|
|
|
val sp = new StructuredProperty
|
|
|
|
sp.setQualifier(createQualifier(classId, schemeId))
|
|
|
|
sp.setValue(value)
|
|
|
|
sp
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def createSP(value: String, classId: String, schemeId: String, dataInfo: DataInfo): StructuredProperty = {
|
|
|
|
val sp = new StructuredProperty
|
|
|
|
sp.setQualifier(createQualifier(classId, schemeId))
|
|
|
|
sp.setValue(value)
|
|
|
|
sp.setDataInfo(dataInfo)
|
|
|
|
sp
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|