libbluray | branch: master | hpi1 <[email protected]> | Thu Apr 11 21:03:52 2013 +0300| [e3d948148f62f07d92b9a8cafed25e6e9f7938ee] | committer: hpi1
Moved xlet thread group to BDJXletContext > http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=e3d948148f62f07d92b9a8cafed25e6e9f7938ee --- src/libbluray/bdj/java/org/videolan/BDJAppProxy.java | 8 ++------ src/libbluray/bdj/java/org/videolan/BDJXletContext.java | 10 ++++++++++ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/libbluray/bdj/java/org/videolan/BDJAppProxy.java b/src/libbluray/bdj/java/org/videolan/BDJAppProxy.java index 63b2716..3ca8a6c 100644 --- a/src/libbluray/bdj/java/org/videolan/BDJAppProxy.java +++ b/src/libbluray/bdj/java/org/videolan/BDJAppProxy.java @@ -33,10 +33,7 @@ public class BDJAppProxy implements DVBJProxy, Runnable { public BDJAppProxy(BDJXletContext context) { this.context = context; state = NOT_LOADED; - threadGroup = new BDJThreadGroup((String)context.getXletProperty("dvb.org.id") + "." + - (String)context.getXletProperty("dvb.app.id"), - context); - thread = new Thread(threadGroup, this); + thread = new Thread(context.getThreadGroup(), this); thread.setDaemon(true); thread.start(); @@ -237,7 +234,7 @@ public class BDJAppProxy implements DVBJProxy, Runnable { if ((state != NOT_LOADED) && (state != LOADED)) { try { xlet.destroyXlet(force); - for (int i = 0; (i < 50) && (threadGroup.activeCount() > 1); i++) + for (int i = 0; (i < 50) && (context.getThreadGroup().activeCount() > 1); i++) Thread.sleep(20L); String persistent = System.getProperty("dvb.persistent.root") + File.separator + (String)context.getXletProperty("dvb.org.id") + File.separator + @@ -357,7 +354,6 @@ public class BDJAppProxy implements DVBJProxy, Runnable { private int state; private LinkedList listeners = new LinkedList(); private LinkedList cmds = new LinkedList(); - private BDJThreadGroup threadGroup; private Thread thread; private class AppCommand { diff --git a/src/libbluray/bdj/java/org/videolan/BDJXletContext.java b/src/libbluray/bdj/java/org/videolan/BDJXletContext.java index 952c785..da98998 100644 --- a/src/libbluray/bdj/java/org/videolan/BDJXletContext.java +++ b/src/libbluray/bdj/java/org/videolan/BDJXletContext.java @@ -42,6 +42,11 @@ public class BDJXletContext implements javax.tv.xlet.XletContext, javax.microedi entry.getClassPathExt(), entry.getInitialClass()); this.container = container; + + this.threadGroup = new BDJThreadGroup(Integer.toHexString(appid.getOID()) + "." + + Integer.toHexString(appid.getAID()) + "." + + entry.getInitialClass(), + this); } public Object getXletProperty(String key) { @@ -83,6 +88,10 @@ public class BDJXletContext implements javax.tv.xlet.XletContext, javax.microedi return loader; } + public BDJThreadGroup getThreadGroup() { + return threadGroup; + } + protected void setEventQueue(EventQueue eq) { eventQueue = eq; } @@ -148,4 +157,5 @@ public class BDJXletContext implements javax.tv.xlet.XletContext, javax.microedi private Container container; private EventQueue eventQueue = null; private HSceneFactory sceneFactory = null; + private BDJThreadGroup threadGroup = null; } _______________________________________________ libbluray-devel mailing list [email protected] http://mailman.videolan.org/listinfo/libbluray-devel
