From ceeb02797c5ae750f1b37addc68f6cc45111cf18 Mon Sep 17 00:00:00 2001 From: srosse <none@none> Date: Tue, 9 Sep 2014 09:35:44 +0200 Subject: [PATCH] OO-1184: cache the named group (it's always the same 9 ones), load the extensions right after startup --- .../org/olat/basesecurity/BaseSecurityManager.java | 1 + .../java/org/olat/core/servlets/OpenOLATServlet.java | 4 ++++ .../java/org/olat/core/util/i18n/I18nManager.java | 4 ++-- .../ui/courselayout/_spring/courseLayoutContext.xml | 12 ++++++------ 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/olat/basesecurity/BaseSecurityManager.java b/src/main/java/org/olat/basesecurity/BaseSecurityManager.java index f8ea85b4355..d747aa1f9b1 100644 --- a/src/main/java/org/olat/basesecurity/BaseSecurityManager.java +++ b/src/main/java/org/olat/basesecurity/BaseSecurityManager.java @@ -858,6 +858,7 @@ public class BaseSecurityManager extends BasicManager implements BaseSecurity { List<SecurityGroup> group = this.dbInstance.getCurrentEntityManager() .createQuery(sb.toString(), SecurityGroup.class) .setParameter("groupName", securityGroupName) + .setHint("org.hibernate.cacheable", Boolean.TRUE) .getResultList(); int size = group.size(); diff --git a/src/main/java/org/olat/core/servlets/OpenOLATServlet.java b/src/main/java/org/olat/core/servlets/OpenOLATServlet.java index dd475c93817..3952b2cca92 100644 --- a/src/main/java/org/olat/core/servlets/OpenOLATServlet.java +++ b/src/main/java/org/olat/core/servlets/OpenOLATServlet.java @@ -38,6 +38,7 @@ import org.olat.core.dispatcher.Dispatcher; import org.olat.core.dispatcher.DispatcherModule; import org.olat.core.dispatcher.mapper.GlobalMapperRegistry; import org.olat.core.dispatcher.mapper.MapperDispatcher; +import org.olat.core.extensions.ExtManager; import org.olat.core.helpers.Settings; import org.olat.core.logging.OLog; import org.olat.core.logging.Tracing; @@ -116,6 +117,9 @@ public class OpenOLATServlet extends HttpServlet { legacyContext += "/"; } } + + //preload extensions + ExtManager.getInstance().getExtensions(); } @Override diff --git a/src/main/java/org/olat/core/util/i18n/I18nManager.java b/src/main/java/org/olat/core/util/i18n/I18nManager.java index 55329dc3874..91d65df5560 100644 --- a/src/main/java/org/olat/core/util/i18n/I18nManager.java +++ b/src/main/java/org/olat/core/util/i18n/I18nManager.java @@ -824,11 +824,11 @@ public class I18nManager extends BasicManager { } // // 2) Try to load from classpath - String fileName = (locale == null ? METADATA_FILENAME : buildI18nFilename(locale)); - String relPath = bundleName.replace('.', '/') + "/" + I18N_DIRNAME + "/" + fileName; // No "/" at the beginning of the resource! since the // resource will not be found within jars if (is == null) { + String fileName = (locale == null ? METADATA_FILENAME : buildI18nFilename(locale)); + String relPath = bundleName.replace('.', '/') + "/" + I18N_DIRNAME + "/" + fileName; ClassLoader classLoader = this.getClass().getClassLoader(); is = classLoader.getResourceAsStream(relPath); if (logDebug && is != null) logDebug("loading LocalStrings from classpath relpath::" + relPath, null); diff --git a/src/main/java/org/olat/course/config/ui/courselayout/_spring/courseLayoutContext.xml b/src/main/java/org/olat/course/config/ui/courselayout/_spring/courseLayoutContext.xml index 7d37b4a9a75..4b1b211d364 100644 --- a/src/main/java/org/olat/course/config/ui/courselayout/_spring/courseLayoutContext.xml +++ b/src/main/java/org/olat/course/config/ui/courselayout/_spring/courseLayoutContext.xml @@ -3,7 +3,7 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans - http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> + http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="courseLayoutHelper" class="org.olat.course.config.ui.courselayout.CourseLayoutHelper" depends-on="courseModule"> <property name="logoMaxHeight" value="100"/> @@ -16,11 +16,11 @@ <bean id="courseConfigManager" class="org.olat.course.config.ui.courselayout.CustomConfigManager" depends-on="courseModule"> <property name="availableLayoutElements"> <list> - <bean class="org.olat.course.config.ui.courselayout.elements.TextLE" lazy-init="true"/> - <bean class="org.olat.course.config.ui.courselayout.elements.HeaderLE" lazy-init="true"/> - <bean class="org.olat.course.config.ui.courselayout.elements.LinkLE" lazy-init="true"/> - <bean class="org.olat.course.config.ui.courselayout.elements.MenuLE" lazy-init="true"/> - <bean class="org.olat.course.config.ui.courselayout.elements.ToolboxLE" lazy-init="true"/> + <bean class="org.olat.course.config.ui.courselayout.elements.TextLE" /> + <bean class="org.olat.course.config.ui.courselayout.elements.HeaderLE" /> + <bean class="org.olat.course.config.ui.courselayout.elements.LinkLE" /> + <bean class="org.olat.course.config.ui.courselayout.elements.MenuLE" /> + <bean class="org.olat.course.config.ui.courselayout.elements.ToolboxLE" /> </list> </property> <property name="availableLayoutAttributes"> -- GitLab