Revision: 4895
Author:
abhishek...@wishtreetech.com
Date: Fri Jun 27 11:30:49 2014 UTC
Log: Changes in JOGL,Scenegraph,User-list and AudioManager for Java8
problems
http://code.google.com/p/openwonderland/source/detail?r=4895
Modified:
/trunk/core/build-tools/build-scripts/core-build.xml
/trunk/core/ext/common/Scenario.jar
/trunk/core/ext/zip/linux/jogl.zip
/trunk/core/ext/zip/linux64/jogl.zip
/trunk/core/ext/zip/macosx/jogl.zip
/trunk/core/ext/zip/solaris/jogl.zip
/trunk/core/ext/zip/win32/jogl.zip
/trunk/core/ext/zip/win64/jogl.zip
/trunk/modules/tools/audio-manager/src/classes/org/jdesktop/wonderland/modules/audiomanager/client/AudioManagerClient.java
/trunk/modules/tools/user-list/src/classes/org/jdesktop/wonderland/modules/userlist/client/UserListClientPlugin.java
=======================================
--- /trunk/core/build-tools/build-scripts/core-build.xml Wed Jun 29
23:15:40 2011 UTC
+++ /trunk/core/build-tools/build-scripts/core-build.xml Fri Jun 27
11:30:49 2014 UTC
@@ -108,6 +108,10 @@
<fileset dir="${javasrc.dir}/"
includes="org/jdesktop/wonderland/client/**/*.jpg"/>
<fileset dir="${javasrc.dir}/"
includes="org/jdesktop/wonderland/client/**/*.dae"/>
<fileset dir="${javasrc.dir}/"
includes="org/jdesktop/wonderland/client/**/*.properties"/>
+ <manifest>
+ <attribute name="Permissions"
+ value="all-permissions"/>
+ </manifest>
</jar>
</target>
=======================================
--- /trunk/core/ext/common/Scenario.jar Wed Feb 11 21:12:23 2009 UTC
+++ /trunk/core/ext/common/Scenario.jar Fri Jun 27 11:30:49 2014 UTC
Binary file, no diff available.
=======================================
--- /trunk/core/ext/zip/linux/jogl.zip Thu Jul 18 13:37:08 2013 UTC
+++ /trunk/core/ext/zip/linux/jogl.zip Fri Jun 27 11:30:49 2014 UTC
File is too large to display a diff.
=======================================
--- /trunk/core/ext/zip/linux64/jogl.zip Thu Jul 18 13:37:08 2013 UTC
+++ /trunk/core/ext/zip/linux64/jogl.zip Fri Jun 27 11:30:49 2014 UTC
File is too large to display a diff.
=======================================
--- /trunk/core/ext/zip/macosx/jogl.zip Thu Jul 18 13:37:08 2013 UTC
+++ /trunk/core/ext/zip/macosx/jogl.zip Fri Jun 27 11:30:49 2014 UTC
File is too large to display a diff.
=======================================
--- /trunk/core/ext/zip/solaris/jogl.zip Thu Jul 18 13:37:08 2013 UTC
+++ /trunk/core/ext/zip/solaris/jogl.zip Fri Jun 27 11:30:49 2014 UTC
File is too large to display a diff.
=======================================
--- /trunk/core/ext/zip/win32/jogl.zip Thu Jul 18 13:37:08 2013 UTC
+++ /trunk/core/ext/zip/win32/jogl.zip Fri Jun 27 11:30:49 2014 UTC
File is too large to display a diff.
=======================================
--- /trunk/core/ext/zip/win64/jogl.zip Thu Jul 18 13:37:08 2013 UTC
+++ /trunk/core/ext/zip/win64/jogl.zip Fri Jun 27 11:30:49 2014 UTC
File is too large to display a diff.
=======================================
---
/trunk/modules/tools/audio-manager/src/classes/org/jdesktop/wonderland/modules/audiomanager/client/AudioManagerClient.java
Thu Jul 18 13:45:19 2013 UTC
+++
/trunk/modules/tools/audio-manager/src/classes/org/jdesktop/wonderland/modules/audiomanager/client/AudioManagerClient.java
Fri Jun 27 11:30:49 2014 UTC
@@ -512,28 +512,45 @@
logger.severe("TODO - Implement AudioManager.viewConfigured
for the case when the primary view cell disconnects");
} else {
//System.out.println("LOCAL AVATAR BOUNDS: " +
cell.getLocalBounds());
- CellID cellID = cell.getCellID();
+ final CellID cellID = cell.getCellID();
/*
* We require the PresenceManager so by the time we get here,
* our presenceInfo has to be available.
*/
presenceInfo = pm.getPresenceInfo(cellID);
-
+
/*
- * Now we have everything we need to create the presence
- * controls.
+ * Sometimes the presencemanager plugin loads after audio
manager plugin.
+ * So the audio manager fails to find presence manager and
can't connect client
+ * to voice bridge server.
+ * so create a thread which will wait untill presence manager
finish loading.
*/
- controls = new PresenceControls(this, session, pm,
presenceInfo);
+ final AudioManagerClient amClient = this;
+ new Thread(new Runnable() {
+
+ public void run() {
+ while(presenceInfo==null) {
+ presenceInfo = pm.getPresenceInfo(cellID);
+ }
+ logger.warning("Presence manamger is loaded.");
+ /*
+ * Now we have everything we need to create the presence
+ * controls.
+ */
+ controls = new PresenceControls(amClient, session, pm,
presenceInfo);
- logger.fine("[AudioManagerClient] view configured for cell " +
- cellID + " presence: " + presenceInfo + " from " + pm);
+ logger.fine("[AudioManagerClient] view configured for
cell " +
+ cellID + " presence: " + presenceInfo + "
from " + pm);
- connectSoftphone();
+ connectSoftphone();
- if (cell.getComponent(ProximityComponent.class) == null) {
- cell.addComponent(new ProximityComponent(cell));
- }
+ if (cell.getComponent(ProximityComponent.class) ==
null) {
+ cell.addComponent(new ProximityComponent(cell));
+ }
+ }
+ }).start();
+
}
}
=======================================
---
/trunk/modules/tools/user-list/src/classes/org/jdesktop/wonderland/modules/userlist/client/UserListClientPlugin.java
Thu May 31 05:11:44 2012 UTC
+++
/trunk/modules/tools/user-list/src/classes/org/jdesktop/wonderland/modules/userlist/client/UserListClientPlugin.java
Fri Jun 27 11:30:49 2014 UTC
@@ -17,14 +17,20 @@
*/
package org.jdesktop.wonderland.modules.userlist.client;
+import java.util.logging.Logger;
import org.jdesktop.wonderland.client.BaseClientPlugin;
+import org.jdesktop.wonderland.client.cell.Cell;
import org.jdesktop.wonderland.client.cell.view.LocalAvatar;
import
org.jdesktop.wonderland.client.cell.view.LocalAvatar.ViewCellConfiguredListener;
import org.jdesktop.wonderland.client.comms.CellClientSession;
import org.jdesktop.wonderland.client.comms.WonderlandSession;
+import org.jdesktop.wonderland.client.jme.ClientContextJME;
import org.jdesktop.wonderland.client.login.ServerSessionManager;
import org.jdesktop.wonderland.client.login.SessionLifecycleListener;
import org.jdesktop.wonderland.common.annotation.Plugin;
+import
org.jdesktop.wonderland.modules.presencemanager.client.PresenceManager;
+import
org.jdesktop.wonderland.modules.presencemanager.client.PresenceManagerFactory;
+import org.jdesktop.wonderland.modules.presencemanager.common.PresenceInfo;
/**
*
@@ -35,6 +41,7 @@
implements ViewCellConfiguredListener, SessionLifecycleListener
{
private ServerSessionManager session;
+ private static final Logger LOGGER =
Logger.getLogger(UserListClientPlugin.class.getName());
public UserListClientPlugin() {
}
@@ -64,9 +71,28 @@
}
public void viewConfigured(LocalAvatar localAvatar) {
- WonderlandUserList.INSTANCE.initialize();
- UserListPresenterManager.INSTANCE.intialize();
- UserListPresenterManager.INSTANCE.showActivePresenter();
+ /*
+ * Sometimes the presencemanager plugin loads after user list
plugin.
+ * So the user list fails to find presence manager and can't load
the user list panel.
+ * so create a thread which will wait untill presence manager
finish loadind.
+ */
+ new Thread(new Runnable() {
+
+ public void run() {
+ PresenceManager manager =
PresenceManagerFactory.getPresenceManager(session.getPrimarySession());
+ Cell cell =
ClientContextJME.getViewManager().getPrimaryViewCell();
+ PresenceInfo localPresenceInfo =
manager.getPresenceInfo(cell.getCellID());
+ while(localPresenceInfo==null) {
+ manager =
PresenceManagerFactory.getPresenceManager(session.getPrimarySession());
+ cell =
ClientContextJME.getViewManager().getPrimaryViewCell();
+ localPresenceInfo =
manager.getPresenceInfo(cell.getCellID());
+ }
+ LOGGER.warning("Presence manager is loaded.");
+ WonderlandUserList.INSTANCE.initialize();
+ UserListPresenterManager.INSTANCE.intialize();
+ UserListPresenterManager.INSTANCE.showActivePresenter();
+ }
+ }).start();
}
public void sessionCreated(WonderlandSession session) {