Revision: 4599
Author: solomax666
Date: Sun Nov 20 09:05:19 2011
Log: Config value is cached to avoid multiple DB quering
http://code.google.com/p/openmeetings/source/detail?r=4599
Modified:
/trunk/singlewebapp/src/app/org/openmeetings/app/data/basic/Configurationmanagement.java
/trunk/singlewebapp/src/app/org/openmeetings/app/remote/red5/ScopeApplicationAdapter.java
=======================================
---
/trunk/singlewebapp/src/app/org/openmeetings/app/data/basic/Configurationmanagement.java
Wed Nov 16 06:36:51 2011
+++
/trunk/singlewebapp/src/app/org/openmeetings/app/data/basic/Configurationmanagement.java
Sun Nov 20 09:05:19 2011
@@ -1,7 +1,6 @@
package org.openmeetings.app.data.basic;
import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
import java.util.Date;
import java.util.LinkedHashMap;
import java.util.List;
@@ -285,6 +284,11 @@
conf = em.merge(conf);
}
}
+ if ("crypt_ClassName".equals(conf.getConf_key())) {
+ ScopeApplicationAdapter.configKeyCryptClassName
= conf.getConf_value();
+ } else if
("show.whiteboard.draw.status".equals(conf.getConf_key())) {
+ ScopeApplicationAdapter.whiteboardDrawStatus
= "1".equals(conf.getConf_value());
+ }
return conf.getConfiguration_id();
} catch (Exception ex2) {
log.error("[updateConfByUID]: ", ex2);
=======================================
---
/trunk/singlewebapp/src/app/org/openmeetings/app/remote/red5/ScopeApplicationAdapter.java
Sun Nov 20 04:40:30 2011
+++
/trunk/singlewebapp/src/app/org/openmeetings/app/remote/red5/ScopeApplicationAdapter.java
Sun Nov 20 09:05:19 2011
@@ -99,9 +99,9 @@
public static String profilesPrefix = "profile_";
public static String configKeyCryptClassName = null;
-
+ public static Boolean whiteboardDrawStatus = null;
+
private static long broadCastCounter = 0;
-
public static boolean initComplete = false;
public synchronized void resultReceived(IPendingServiceCall arg0) {
@@ -2501,10 +2501,7 @@
whiteboardObj);
}
- Configuration conf = cfgManagement.getConfKey(3,
- "show.whiteboard.draw.status");
- boolean showDrawStatus = conf != null
- && "1".equals(conf.getConf_value());
+ boolean showDrawStatus = getWhiteboardDrawStatus();
// Notify all Clients of that Scope (Room)
Collection<Set<IConnection>> conCollection =
current.getScope()
@@ -2631,10 +2628,7 @@
sendObject.put("id", whiteboardId);
sendObject.put("param", whiteboardObjParam);
- Configuration conf = cfgManagement.getConfKey(3,
- "show.whiteboard.draw.status");
- boolean showDrawStatus = conf != null
- && "1".equals(conf.getConf_value());
+ boolean showDrawStatus = getWhiteboardDrawStatus();
// Notify all Clients of that Scope (Room)
Collection<Set<IConnection>> conCollection =
current.getScope()
@@ -3895,8 +3889,15 @@
return roomClientList;
}
+ private boolean getWhiteboardDrawStatus() {
+ if (ScopeApplicationAdapter.whiteboardDrawStatus == null) {
+ String drawStatus =
cfgManagement.getConfValue("show.whiteboard.draw.status",
String.class, "0");
+ ScopeApplicationAdapter.whiteboardDrawStatus =
"1".equals(drawStatus);
+ }
+ return ScopeApplicationAdapter.whiteboardDrawStatus;
+ }
+
public String getCryptKey() {
- // public String getCryptKey() {
try {
if (ScopeApplicationAdapter.configKeyCryptClassName ==
null) {
--
You received this message because you are subscribed to the Google Groups
"OpenMeetings developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/openmeetings-dev?hl=en.