use of org.olat.core.dispatcher.mapper.Mapper in project openolat by klemens.
the class EdubaseViewerController method createMapperUri.
private String createMapperUri(UserRequest ureq) {
String launchUrl = edubaseManager.getLtiLaunchUrl(bookSection);
String baseUrl = edubaseModule.getLtiBaseUrl();
String oauthConsumerKey = edubaseModule.getOauthKey();
String oauthSecret = edubaseModule.getOauthSecret();
LTIContext context = new EdubaseContext(ureq.getUserSession().getIdentityEnvironment(), bookSection.getPageTo());
Map<String, String> unsignedProps = ltiManager.forgeLTIProperties(getIdentity(), getLocale(), context, true, true, false);
Mapper contentMapper = new PostDataMapper(unsignedProps, launchUrl, baseUrl, oauthConsumerKey, oauthSecret, false);
String mapperUri = registerMapper(ureq, contentMapper);
mapperUri = mapperUri + "/";
return mapperUri;
}
use of org.olat.core.dispatcher.mapper.Mapper in project openolat by klemens.
the class MapperServiceImpl method getMapperById.
@Override
public Mapper getMapperById(UserSession session, String id) {
if (!StringHelper.containsNonWhitespace(id)) {
return null;
}
int index = id.indexOf(DispatcherModule.PATH_MAPPED);
if (index >= 0) {
id = id.substring(index + DispatcherModule.PATH_MAPPED.length(), id.length());
}
MapperKey mapperKey = new MapperKey(session, id);
Mapper mapper = mapperKeyToMapper.get(mapperKey);
if (mapper == null) {
mapper = (Mapper) mapperCache.get(id);
if (mapper == null) {
mapper = mapperDao.retrieveMapperById(id);
if (mapper != null) {
mapperCache.put(id, (Serializable) mapper);
}
}
}
return mapper;
}
use of org.olat.core.dispatcher.mapper.Mapper in project openolat by klemens.
the class MapperDAO method retrieveMapperById.
public Mapper retrieveMapperById(String mapperId) {
List<PersistedMapper> mappers = dbInstance.getCurrentEntityManager().createNamedQuery("loadMapperByKey", PersistedMapper.class).setParameter("mapperId", mapperId).getResultList();
PersistedMapper pm = mappers.isEmpty() ? null : mappers.get(0);
if (pm != null && StringHelper.containsNonWhitespace(pm.getXmlConfiguration())) {
String configuration = pm.getXmlConfiguration();
Object obj = XStreamHelper.createXStreamInstance().fromXML(configuration);
if (obj instanceof Mapper) {
return (Mapper) obj;
}
}
return null;
}
use of org.olat.core.dispatcher.mapper.Mapper in project openolat by klemens.
the class TextBoxListComponent method setMapper.
/**
* registers a OpenOLAT Mapper for this textBoxListComponent
*
* @param ureq
*/
private void setMapper(UserRequest ureq) {
Mapper mapper = new Mapper() {
public MediaResource handle(String relPath, HttpServletRequest request) {
String lastInput = request.getParameter("term");
if (lastInput != null && lastInput.length() > 2) {
Map<String, String> autoCContLoc = new HashMap<String, String>();
provider.getAutoCompleteContent(lastInput, autoCContLoc);
setAutoCompleteContent(autoCContLoc);
}
JSONArray jsonResult = getAutoCompleteJSON();
return new JSONMediaResource(jsonResult, "UTF-8");
}
};
mapperKey = CoreSpringFactory.getImpl(MapperService.class).register(ureq.getUserSession(), mapper);
}
use of org.olat.core.dispatcher.mapper.Mapper in project openolat by klemens.
the class LTIRunController method doBasicLTI.
private void doBasicLTI(UserRequest ureq, VelocityContainer container) {
String url = getUrl();
container.contextPut("url", url == null ? "" : url);
String oauth_consumer_key = (String) config.get(LTIConfigForm.CONFIGKEY_KEY);
String oauth_secret = (String) config.get(LTIConfigForm.CONFIGKEY_PASS);
String debug = (String) config.get(LTIConfigForm.CONFIG_KEY_DEBUG);
String serverUri = Settings.createServerURI();
String sourcedId = courseEnv.getCourseResourceableId() + "_" + courseNode.getIdent() + "_" + getIdentity().getKey();
container.contextPut("sourcedId", sourcedId);
OLATResource courseResource = courseEnv.getCourseGroupManager().getCourseResource();
Mapper talkbackMapper = new TalkBackMapper(getLocale(), getWindowControl().getWindowBackOffice().getWindow().getGuiTheme().getBaseURI());
String backMapperUrl = registerCacheableMapper(ureq, sourcedId + "_talkback", talkbackMapper);
String backMapperUri = serverUri + backMapperUrl + "/";
Mapper outcomeMapper = new CourseNodeOutcomeMapper(getIdentity(), courseResource, courseNode.getIdent(), oauth_consumer_key, oauth_secret, sourcedId);
String outcomeMapperUrl = registerCacheableMapper(ureq, sourcedId, outcomeMapper, LTIManager.EXPIRATION_TIME);
String outcomeMapperUri = serverUri + outcomeMapperUrl + "/";
boolean sendname = config.getBooleanSafe(LTIConfigForm.CONFIG_KEY_SENDNAME, false);
boolean sendmail = config.getBooleanSafe(LTIConfigForm.CONFIG_KEY_SENDEMAIL, false);
String ltiRoles = getLTIRoles();
String target = config.getStringValue(BasicLTICourseNode.CONFIG_DISPLAY);
String width = config.getStringValue(BasicLTICourseNode.CONFIG_WIDTH);
String height = config.getStringValue(BasicLTICourseNode.CONFIG_HEIGHT);
String custom = (String) config.get(LTIConfigForm.CONFIG_KEY_CUSTOM);
container.contextPut("height", height);
container.contextPut("width", width);
LTIContext context = new LTICourseNodeContext(courseEnv, courseNode, ltiRoles, sourcedId, backMapperUri, outcomeMapperUri, custom, target, width, height);
Map<String, String> unsignedProps = ltiManager.forgeLTIProperties(getIdentity(), getLocale(), context, sendname, sendmail, true);
Mapper contentMapper = new PostDataMapper(unsignedProps, url, oauth_consumer_key, oauth_secret, "true".equals(debug));
String mapperUri = registerMapper(ureq, contentMapper);
container.contextPut("mapperUri", mapperUri + "/");
}
Aggregations