Author: solomax
Date: Tue Jun 26 06:38:42 2012
New Revision: 1353827

URL: http://svn.apache.org/viewvc?rev=1353827&view=rev
Log:
Client string cache is modified to use associative array (implemented on Object 
basis to avoid having huge empty array in case of custom strings).

Modified:
    incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/functions.lzx
    
incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/hibernate/hibRtmpConnection.lzx
    
incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/base/functions.lzx
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/conference/session/RoomClient.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/basic/Fieldmanagment.java

Modified: 
incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/functions.lzx
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/functions.lzx?rev=1353827&r1=1353826&r2=1353827&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/functions.lzx 
(original)
+++ incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/functions.lzx 
Tue Jun 26 06:38:42 2012
@@ -28,7 +28,7 @@ var labelObj;
 var tempActionForNavi = '';
 
 // Load Labels from List
-var labels = new Array();
+var labels = new Object();
 
 String.prototype.startsWith = function(prefix) {
     return (this.indexOf(prefix) === 0);
@@ -81,33 +81,19 @@ function disableCurrentMouseWheelObject(
 
 function setLabelObjectByHundred(no,obj){
     canvas.sendViaLocalConnection(canvas.rtmp_lc_name, 
"hibAdapter_setLabelObjectByHundred", [no, obj]); 
-    // if($debug) Debug.write("FUNC/setLabelObjectByHundred");
-    if(no!=0) no = Math.floor(no/100);
-    //Debug.write("SetLabelObject: ",no,obj);
-    labels[no] = obj;
+       for (var i = 0; i < obj.length; ++i) {
+           labels["id" + obj[i].id] = obj[i].value;
+       }
 }
 
 function getLabelTag(labelid){
-    //if($debug) Debug.write("FUNC/getLabelTag",labelid);
-    var no = Math.floor(labelid/100);
-    return getLabelTagByNo(no,labelid);
-}
-
-function getLabelTagByNo(no,labelid){
-    var labeltag = "";
-    var l = labels[no]
-    //if ($debug) Debug.write("Search label tag in: ",labelid,labels[no]);
-    for (var eg=0;eg<=l.length;eg++){
-        if (l[eg].id==labelid){
-            // if($debug) 
Debug.write("FUNC/getLabelTagByNo",no,labelid,l[eg].value);
-            if($debug) {
-               return l[eg].value+" ["+labelid+"]";
-            } else {
-                return l[eg].value;
-            }
-        }
-    }
-    return "Error Missing ["+labelid+"]";
+       var l = labels["id" + labelid];
+       if (l) {
+               if ($debug) l += " [" + labelid + "]";
+       } else {
+               l = "Error Missing [" + labelid + "]";
+       }
+    return l;
 }
 
 function quicklink(action){

Modified: 
incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/hibernate/hibRtmpConnection.lzx
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/hibernate/hibRtmpConnection.lzx?rev=1353827&r1=1353826&r2=1353827&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/hibernate/hibRtmpConnection.lzx
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/WebContent/src/base/hibernate/hibRtmpConnection.lzx
 Tue Jun 26 06:38:42 2012
@@ -521,8 +521,8 @@
         
     <netRemoteCallHib name="getLanguageByIdAndMax" 
funcname="languageservice.getLanguageByIdAndMax" >
         <attribute name="start" value="0" type="number" />
-        <attribute name="step" value="100" type="number" /> 
-        <attribute name="max" value="1300" type="number" />    
+        <attribute name="step" value="100" type="number" />
+        <attribute name="max" value="1500" type="number" />
         <netparam><method name="getValue">return 
parent.parent.userlang;</method></netparam> 
         <netparam><method name="getValue">return 
parent.start;</method></netparam> 
         <netparam><method name="getValue">return 
parent.step;</method></netparam> 

Modified: 
incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/base/functions.lzx
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/base/functions.lzx?rev=1353827&r1=1353826&r2=1353827&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/base/functions.lzx 
(original)
+++ 
incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/base/functions.lzx 
Tue Jun 26 06:38:42 2012
@@ -34,40 +34,26 @@ Issue353. 2008.3.28 H.kuze(minamotonoaso
 <![CDATA[
 
 // Load Labels from List
-var labels = new Array();
+var labels = new Object();
 
 String.prototype.startsWith = function(prefix) {
     return (this.indexOf(prefix) === 0);
 };     
 
-function setLabelObjectByHundred(no,obj){
-    // if($debug) Debug.write("FUNC/setLabelObjectByHundred");
-    if(no!=0) no = Math.floor(no/100);
-    //Debug.write("SetLabelObject: ",no,obj);
-    labels[no] = obj;
+function setLabelObjectByHundred(no, obj){
+       for (var i = 0; i < obj.length; ++i) {
+           labels["id" + obj[i].id] = obj[i].value;
+       }
 }
 
 function getLabelTag(labelid){
-    //if($debug) Debug.write("FUNC/getLabelTag",labelid);
-    var no = Math.floor(labelid/100);
-    return getLabelTagByNo(no,labelid);
-}
-
-function getLabelTagByNo(no,labelid){
-    var labeltag = "";
-    var l = labels[no]
-    //if ($debug) Debug.write("Search label tag in: ",labelid,labels[no]);
-    for (var eg=0;eg<=l.length;eg++){
-        if (l[eg].id==labelid){
-            // if($debug) 
Debug.write("FUNC/getLabelTagByNo",no,labelid,l[eg].value);
-            if($debug) {
-               return l[eg].value+" ["+labelid+"]";
-            } else {
-                return l[eg].value;
-            }
-        }
-    }
-    return "Error Missing ["+labelid+"]";
+       var l = labels["id" + labelid];
+       if (l) {
+               if ($debug) l += " [" + labelid + "]";
+       } else {
+               l = "Error Missing [" + labelid + "]";
+       }
+    return l;
 }
 
 ]]>

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/conference/session/RoomClient.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/conference/session/RoomClient.java?rev=1353827&r1=1353826&r2=1353827&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/conference/session/RoomClient.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/conference/session/RoomClient.java
 Tue Jun 26 06:38:42 2012
@@ -163,6 +163,7 @@ public class RoomClient implements Seria
        boolean startRecording = false;
        boolean startStreaming = false;
        private boolean screenPublishStarted = false;
+       private boolean streamPublishStarted = false;
        
        /*
         * Indicates if this User is broadcasting his stream at all
@@ -593,6 +594,14 @@ public class RoomClient implements Seria
                this.isAVClient = isAVClient;
        }
 
+       public boolean isStreamPublishStarted() {
+               return streamPublishStarted;
+       }
+
+       public void setStreamPublishStarted(boolean streamPublishStarted) {
+               this.streamPublishStarted = streamPublishStarted;
+       }
+
        /**
         * To improve our trace log
         */

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/basic/Fieldmanagment.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/basic/Fieldmanagment.java?rev=1353827&r1=1353826&r2=1353827&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/basic/Fieldmanagment.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/basic/Fieldmanagment.java
 Tue Jun 26 06:38:42 2012
@@ -192,21 +192,21 @@ public class Fieldmanagment {
                        int start, int max) {
                try {
 
-                       String sql = "select f from Fieldlanguagesvalues as f "
-                                       + "WHERE f.language_id = :language_id "
-                                       + "AND f.fieldvalues_id >= :start AND 
f.fieldvalues_id <  :max";
+                       String sql = "select f.fieldvalues.fieldvalues_id, 
f.value from Fieldlanguagesvalues as f "
+                                       + "WHERE f.language_id = :language_id ";
 
-                       TypedQuery<Fieldlanguagesvalues> query = 
em.createQuery(sql, Fieldlanguagesvalues.class);
+                       TypedQuery<Object> query = em.createQuery(sql, 
Object.class);
                        query.setParameter("language_id", language_id);
-                       query.setParameter("start", new Long(start));
-                       query.setParameter("max", new Long(start + max));
+                       query.setFirstResult(start);
+                       query.setMaxResults(max);
 
                        String appName = cfgManagement.getAppName();
                        List<Map<String, Object>> returnList = new 
LinkedList<Map<String, Object>>();
-                       for (Fieldlanguagesvalues fl : query.getResultList()) {
+                       for (Object fl : query.getResultList()) {
                                Map<String, Object> map = new HashMap<String, 
Object>();
-                               map.put("id", 
fl.getFieldvalues().getFieldvalues_id());
-                               map.put("value", performReplace(fl.getValue(), 
appName));
+                               Object[] row = (Object[])fl;
+                               map.put("id", (Long)row[0]);
+                               map.put("value", performReplace((String)row[1], 
appName));
                                returnList.add(map);
                        }
                        FieldLanguage fieldLanguage = fieldLanguageDaoImpl


Reply via email to