use of org.olat.core.commons.services.license.LicenseService in project OpenOLAT by OpenOLAT.
the class QTIMetadataConverter method addLicenseMetadataField.
private void addLicenseMetadataField(String label, QuestionItemFull fullItem, Element metadata) {
LicenseService lService = CoreSpringFactory.getImpl(LicenseService.class);
ResourceLicense license = lService.loadLicense(fullItem);
if (license != null) {
String licenseText = null;
LicenseType licenseType = license.getLicenseType();
if (lService.isFreetext(licenseType)) {
licenseText = license.getFreetext();
} else if (!lService.isNoLicense(licenseType)) {
licenseText = license.getLicenseType().getName();
}
if (StringHelper.containsNonWhitespace(licenseText)) {
addMetadataField(label, licenseText, metadata);
}
}
}
use of org.olat.core.commons.services.license.LicenseService in project OpenOLAT by OpenOLAT.
the class ManifestMetadataBuilder method appendMetadataFrom.
/**
* This method will add new metadata to the current ones.
*
* @param item
* @param locale
*/
public void appendMetadataFrom(QuestionItem item, AssessmentItem assessmentItem, Locale locale) {
String lang = item.getLanguage();
if (!StringHelper.containsNonWhitespace(lang)) {
lang = locale.getLanguage();
}
// LOM : General
if (StringHelper.containsNonWhitespace(item.getTitle())) {
setTitle(item.getTitle(), lang);
}
if (StringHelper.containsNonWhitespace(item.getCoverage())) {
setCoverage(item.getCoverage(), lang);
}
if (StringHelper.containsNonWhitespace(item.getKeywords())) {
setGeneralKeywords(item.getKeywords(), lang);
}
if (StringHelper.containsNonWhitespace(item.getDescription())) {
setDescription(item.getDescription(), lang);
}
// LOM : Technical
setTechnicalFormat(ManifestBuilder.ASSESSMENTITEM_MIMETYPE);
// LOM : Educational
if (StringHelper.containsNonWhitespace(item.getEducationalContextLevel())) {
setEducationalContext(item.getEducationalContextLevel(), lang);
}
if (StringHelper.containsNonWhitespace(item.getEducationalLearningTime())) {
setEducationalLearningTime(item.getEducationalLearningTime());
}
if (item.getLanguage() != null) {
setLanguage(item.getLanguage(), lang);
}
// LOM : Lifecycle
if (StringHelper.containsNonWhitespace(item.getItemVersion())) {
setLifecycleVersion(item.getItemVersion());
}
// LOM : Rights
LicenseService lService = CoreSpringFactory.getImpl(LicenseService.class);
ResourceLicense license = lService.loadLicense(item);
if (license != null) {
String licenseText = null;
LicenseType licenseType = license.getLicenseType();
if (lService.isFreetext(licenseType)) {
licenseText = license.getFreetext();
} else if (!lService.isNoLicense(licenseType)) {
licenseText = license.getLicenseType().getName();
}
if (StringHelper.containsNonWhitespace(licenseText)) {
setLicense(licenseText);
}
setOpenOLATMetadataCreator(license.getLicensor());
}
// LOM : classification
if (StringHelper.containsNonWhitespace(item.getTaxonomicPath())) {
setClassificationTaxonomy(item.getTaxonomicPath(), lang);
}
// QTI 2.1
setQtiMetadataTool(item.getEditor(), null, item.getEditorVersion());
if (assessmentItem != null) {
List<Interaction> interactions = assessmentItem.getItemBody().findInteractions();
List<String> interactionNames = new ArrayList<>(interactions.size());
for (Interaction interaction : interactions) {
interactionNames.add(interaction.getQtiClassName());
}
setQtiMetadataInteractionTypes(interactionNames);
}
// OpenOLAT
if (item.getType() != null) {
setOpenOLATMetadataQuestionType(item.getType().getType());
} else {
setOpenOLATMetadataQuestionType(null);
}
setOpenOLATMetadataIdentifier(item.getIdentifier());
setOpenOLATMetadataDifficulty(item.getDifficulty());
setOpenOLATMetadataDiscriminationIndex(item.getDifferentiation());
setOpenOLATMetadataDistractors(item.getNumOfAnswerAlternatives());
setOpenOLATMetadataStandardDeviation(item.getStdevDifficulty());
setOpenOLATMetadataUsage(item.getUsage());
setOpenOLATMetadataAssessmentType(item.getAssessmentType());
setOpenOLATMetadataTopic(item.getTopic());
setOpenOLATMetadataAdditionalInformations(item.getAdditionalInformations());
}
use of org.olat.core.commons.services.license.LicenseService in project OpenOLAT by OpenOLAT.
the class RepositoryEntryImportExport method addLicenseInformations.
private void addLicenseInformations(RepositoryEntryImport imp, RepositoryEntry re) {
LicenseService licenseService = CoreSpringFactory.getImpl(LicenseService.class);
ResourceLicense license = licenseService.loadLicense(re.getOlatResource());
if (license != null) {
imp.setLicenseTypeKey(String.valueOf(license.getLicenseType().getKey()));
imp.setLicenseTypeName(license.getLicenseType().getName());
imp.setLicensor(license.getLicensor());
imp.setLicenseText(LicenseUIFactory.getLicenseText(license));
}
}
use of org.olat.core.commons.services.license.LicenseService in project OpenOLAT by OpenOLAT.
the class MetaInfoFactory method getOrCreateLicense.
/**
* Get the license of the MetaInfo or create a new default license:
*
* @param meta
* @param itentity the current user
* @return
*/
public License getOrCreateLicense(MetaInfo meta, Identity itentity) {
LicenseHandler licenseHandler = CoreSpringFactory.getImpl(FolderLicenseHandler.class);
LicenseService licenseService = CoreSpringFactory.getImpl(LicenseService.class);
License license = getLicense(meta);
if (license == null) {
license = licenseService.createDefaultLicense(licenseHandler, itentity);
}
return license;
}
use of org.olat.core.commons.services.license.LicenseService in project OpenOLAT by OpenOLAT.
the class MetaInfoFactory method getLicense.
/**
* Get the license of the MetaInfo
*
* @param meta
* @return the license or null if no license is stored in the MetaInfo
*/
public License getLicense(MetaInfo meta) {
LicenseService licenseService = CoreSpringFactory.getImpl(LicenseService.class);
License license = null;
boolean hasLicense = meta != null && StringHelper.containsNonWhitespace(meta.getLicenseTypeName());
if (hasLicense) {
String licenseTypeName = meta.getLicenseTypeName();
LicenseType licenseType = licenseService.loadLicenseTypeByName(licenseTypeName);
if (licenseType == null) {
licenseType = licenseService.createLicenseType(licenseTypeName);
licenseType.setText(meta.getLicenseText());
licenseService.saveLicenseType(licenseType);
}
license = licenseService.createLicense(licenseType);
license.setLicensor(meta.getLicensor());
if (licenseService.isFreetext(licenseType)) {
license.setFreetext(meta.getLicenseText());
}
}
return license;
}
Aggregations