You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2015/05/12 18:12:47 UTC

svn commit: r1678997 - in /openmeetings: branches/3.0.x/WebContent/src/base/hibernate/ branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/label/ branches/3.0.x/src/main/java/org/apache/openmeetings/remote/ branches/3.0.x/src/web/java/org/apache/...

Author: solomax
Date: Tue May 12 16:12:47 2015
New Revision: 1678997

URL: http://svn.apache.org/r1678997
Log:
[OPENMEETINGS-1205] Languages are loaded to the flash app as expected

Modified:
    openmeetings/branches/3.0.x/WebContent/src/base/hibernate/hibRtmpConnection.lzx
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/label/LabelDao.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/LanguageService.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/mail/template/AbstractTemplatePanel.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java
    openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/AbstractTemplatePanel.java

Modified: openmeetings/branches/3.0.x/WebContent/src/base/hibernate/hibRtmpConnection.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/WebContent/src/base/hibernate/hibRtmpConnection.lzx?rev=1678997&r1=1678996&r2=1678997&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/WebContent/src/base/hibernate/hibRtmpConnection.lzx (original)
+++ openmeetings/branches/3.0.x/WebContent/src/base/hibernate/hibRtmpConnection.lzx Tue May 12 16:12:47 2015
@@ -330,17 +330,16 @@
         </handler>  
     </netRemoteCallHib>    
     
-    <netRemoteCallHib name="getLanguages" funcname="languageservice.getLanguages" 
-                      dataobject="languagesSet" >      
-        <handler name="ondata" args="value">
-            //The onResult-Handler will be called be the rtmpconnection
-            //Debug.write("getLanguages: ",value);
+	<netRemoteCallHib name="getLanguages" funcname="languageservice.getLanguages" dataobject="languagesSet" >
+		<handler name="ondata" args="value">
+			//The onResult-Handler will be called be the rtmpconnection
+			//if ($debug) Debug.write("getLanguages: ",value, languagesSet);
 			if (canvas.thishib.loaderVar != null) {
-            	canvas.thishib.loaderVar.setProgress();
-            }
-            parent.getDefaultLanguage.doCall();
-        </handler>  
-    </netRemoteCallHib>    
+				canvas.thishib.loaderVar.setProgress();
+			}
+			parent.getDefaultLanguage.doCall();
+		</handler>
+	</netRemoteCallHib>    
     
     <method name="setDefaultUserLanguage">
 	    <![CDATA[

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/label/LabelDao.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/label/LabelDao.java?rev=1678997&r1=1678996&r2=1678997&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/label/LabelDao.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/label/LabelDao.java Tue May 12 16:12:47 2015
@@ -77,18 +77,6 @@ public class LabelDao implements IDataPr
 	public static final ConcurrentHashMap<Locale, List<StringLabel>> labelCache = new ConcurrentHashMap<Locale, List<StringLabel>>();
 	public static final Set<String> keys = new HashSet<String>();
 
-	public List<Map<String, Object>> getLanguages() {
-		List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
-		for (Map.Entry<Long, Locale> e : languages.entrySet()) {
-			Map<String, Object> map = new HashMap<String, Object>();
-			map.put("language_id", e.getKey());
-			map.put("code", e.getValue().toLanguageTag());
-			map.put("name", e.getValue().getDisplayName(Locale.ENGLISH));
-			result.add(map);
-		}
-		return result;
-	}
-	
 	private static void storeLanguages() throws Exception {
 		Document d = XmlExport.createDocument();
 		Element r = XmlExport.createRoot(d, "language");

Modified: openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/LanguageService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/LanguageService.java?rev=1678997&r1=1678996&r2=1678997&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/LanguageService.java (original)
+++ openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/remote/LanguageService.java Tue May 12 16:12:47 2015
@@ -20,7 +20,10 @@ package org.apache.openmeetings.remote;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAUT_LANG_KEY;
 
+import java.io.Serializable;
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Locale;
 import java.util.Map;
 
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
@@ -41,8 +44,12 @@ public class LanguageService {
 	/**
 	 * @return - List of all available Languages
 	 */
-	public List<Map<String, Object>> getLanguages() {
-		return labelDao.getLanguages();
+	public List<Language> getLanguages() {
+		List<Language> result = new ArrayList<Language>();
+		for (Map.Entry<Long, Locale> e : LabelDao.languages.entrySet()) {
+			result.add(new Language(e.getKey(), e.getValue().toLanguageTag(), e.getValue().getDisplayName(Locale.ENGLISH)));
+		}
+		return result;
 	}
 
 	public Integer getDefaultLanguage() {
@@ -60,4 +67,19 @@ public class LanguageService {
 	public List<Map<String, Object>> getLanguageByIdAndMax(int language_id, int start, int count) {
 		return labelDao.getStrings((long)language_id, start, count);
 	}
+
+	public static class Language implements Serializable {
+		private static final long serialVersionUID = 1L;
+		public long language_id;
+		public String code;
+		public String name;
+		
+		public Language() {}
+		
+		public Language(long language_id, String code, String name) {
+			this.language_id = language_id;
+			this.code = code;
+			this.name = name;
+		}
+	}
 }

Modified: openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/mail/template/AbstractTemplatePanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/mail/template/AbstractTemplatePanel.java?rev=1678997&r1=1678996&r2=1678997&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/mail/template/AbstractTemplatePanel.java (original)
+++ openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/mail/template/AbstractTemplatePanel.java Tue May 12 16:12:47 2015
@@ -91,14 +91,19 @@ public abstract class AbstractTemplatePa
 	}
 	
 	public static void ensureApplication(long langId) {
-		if (!Application.exists()) {
-			Application a = (Application)Application.get(Application.getAppName());
+		Application a = null;
+		if (Application.exists()) {
+			a = Application.get();
+		} else {
+			a = (Application)Application.get(Application.getAppName());
 			ThreadContext.setApplication(a);
-			
+		}
+		if (ThreadContext.getRequestCycle() == null) {
 			ServletWebRequest req = new ServletWebRequest(new MockHttpServletRequest(a, new MockHttpSession(a.getServletContext()), a.getServletContext()), "");
 			RequestCycleContext rctx = new RequestCycleContext(req, new MockWebResponse(), a.getRootRequestMapper(), a.getExceptionMapperProvider().get()); 
 			ThreadContext.setRequestCycle(new RequestCycle(rctx));
-			
+		}
+		if (ThreadContext.getSession() == null) {
 			WebSession s = WebSession.get();
 			s.setLanguage(langId);
 			ThreadContext.setSession(s);

Modified: openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java?rev=1678997&r1=1678996&r2=1678997&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java Tue May 12 16:12:47 2015
@@ -80,18 +80,6 @@ public class LabelDao implements IDataPr
 	public static final Set<String> keys = new HashSet<String>();
 	private static Class<?> APP = null;
 
-	public List<Map<String, Object>> getLanguages() {
-		List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
-		for (Map.Entry<Long, Locale> e : languages.entrySet()) {
-			Map<String, Object> map = new HashMap<String, Object>();
-			map.put("language_id", e.getKey());
-			map.put("code", e.getValue().toLanguageTag());
-			map.put("name", e.getValue().getDisplayName(Locale.ENGLISH));
-			result.add(map);
-		}
-		return result;
-	}
-	
 	private static void storeLanguages() throws Exception {
 		Document d = XmlExport.createDocument();
 		Element r = XmlExport.createRoot(d, "language");

Modified: openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/AbstractTemplatePanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/AbstractTemplatePanel.java?rev=1678997&r1=1678996&r2=1678997&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/AbstractTemplatePanel.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/AbstractTemplatePanel.java Tue May 12 16:12:47 2015
@@ -109,18 +109,23 @@ public abstract class AbstractTemplatePa
 	}
 	
 	public static void ensureApplication(long langId) {
-		if (!Application.exists()) {
+		IApplication a = null;
+		if (Application.exists()) {
+			a = (IApplication)Application.get();
+		} else {
 			Application app = Application.get(wicketApplicationName);
 			ThreadContext.setApplication(app);
-			IApplication a = (IApplication)app;
-			
-			ServletWebRequest req = new ServletWebRequest(new MockHttpServletRequest(app, new MockHttpSession(a.getServletContext()), a.getServletContext()), "");
+			a = (IApplication)Application.get(wicketApplicationName);
+		}
+		if (ThreadContext.getRequestCycle() == null) {
+			ServletWebRequest req = new ServletWebRequest(new MockHttpServletRequest((Application)a, new MockHttpSession(a.getServletContext()), a.getServletContext()), "");
 			RequestCycleContext rctx = new RequestCycleContext(req, new MockWebResponse(), a.getRootRequestMapper(), a.getExceptionMapperProvider().get()); 
 			ThreadContext.setRequestCycle(new RequestCycle(rctx));
-			
-			WebSession session = WebSession.get();
-			((IWebSession)session).setLanguage(langId);
-			ThreadContext.setSession(session);
+		}
+		if (ThreadContext.getSession() == null) {
+			WebSession s = WebSession.get();
+			((IWebSession)s).setLanguage(langId);
+			ThreadContext.setSession(s);
 		}
 	}
 }