I've been exploring shared objects in Red5 and found some of the
following observations.
1, It seems like that the onSharedObjectClear listener in
ISharedObjectListener is broken. When I used the clear() function on
the shared object, it does not call the listener function although the
shared object is actually cleared
public void onSharedObjectClear(ISharedObjectBase so){
log.info("[onSharedObjectClear] The shared object "+
((ISharedObject)so).getName() + "has been cleared" );
}
2, The API Docs say that
clearSharedObjects(IScope scope, String name)
Deletes persistent shared objects specified by name and clears all
properties from active shared objects (persistent and nonpersistent).
When I try this one a persistent shared object, it does not delete it
from the persistence folder.
3, I can create shared object on server by using the the code on the client:
so = SharedObject.getRemote( "SOtest", nc.uri, false);
however, when I try to connect to a persistent shared object already
created on the server, I get this error:
[java] [ERROR] 14297 pool-1-thread-5:( org.red5.server.net.rtmp.BaseRTMPHan
dler.error ) Exception
[java] java.lang.NullPointerException
[java] at org.red5.server.net.rtmp.RTMPHandler.onSharedObject(RTMPHandl
er.java:444)
[java] at org.red5.server.net.rtmp.BaseRTMPHandler.messageReceived(Base
RTMPHandler.java:160)
[java] at org.red5.server.net.rtmp.RTMPMinaIoHandler.messageReceived(RT
MPMinaIoHandler.java:117)
[java] at org.apache.mina.common.support.AbstractIoFilterChain$2.messag
eReceived(AbstractIoFilterChain.java:189)
[java] at org.apache.mina.common.support.AbstractIoFilterChain.callNext
MessageReceived(AbstractIoFilterChain.java:502)
[java] at org.apache.mina.common.support.AbstractIoFilterChain.access$1
000(AbstractIoFilterChain.java:52)
[java] at org.apache.mina.common.support.AbstractIoFilterChain$EntryImp
l$1.messageReceived(AbstractIoFilterChain.java:777)
[java] at org.red5.io.filter.ExecutorFilter.processEvent(ExecutorFilter
.java:231)
[java] at org.red5.io.filter.ExecutorFilter$ProcessEventsRunnable.run(E
xecutorFilter.java:280)
[java] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Thread
PoolExecutor.java:650)
[java] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPool
Executor.java:675)
[java] at java.lang.Thread.run(Thread.java:595)
[java] [ERROR] 14297 pool-1-thread-5:( org.red5.server.net.rtmp.BaseRTMPHan
dler.error ) Exception
[java] java.lang.NullPointerException
[java] at org.red5.server.net.rtmp.RTMPHandler.onSharedObject(RTMPHandl
er.java:444)
[java] at org.red5.server.net.rtmp.BaseRTMPHandler.messageReceived(Base
RTMPHandler.java:160)
[java] at org.red5.server.net.rtmp.RTMPMinaIoHandler.messageReceived(RT
MPMinaIoHandler.java:117)
[java] at org.apache.mina.common.support.AbstractIoFilterChain$2.messag
eReceived(AbstractIoFilterChain.java:189)
[java] at org.apache.mina.common.support.AbstractIoFilterChain.callNext
MessageReceived(AbstractIoFilterChain.java:502)
[java] at org.apache.mina.common.support.AbstractIoFilterChain.access$1
000(AbstractIoFilterChain.java:52)
[java] at org.apache.mina.common.support.AbstractIoFilterChain$EntryImp
l$1.messageReceived(AbstractIoFilterChain.java:777)
[java] at org.red5.io.filter.ExecutorFilter.processEvent(ExecutorFilter
.java:231)
[java] at org.red5.io.filter.ExecutorFilter$ProcessEventsRunnable.run(E
xecutorFilter.java:280)
[java] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Thread
PoolExecutor.java:650)
[java] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPool
Executor.java:675)
[java] at java.lang.Thread.run(Thread.java:595)
4, When I create a non-persistent shard object from client which
already exist on the server. It creates another shared object with the
same name instead of using the samed shared object that already exist
on the server.
_______________________________________________
Red5 mailing list
[email protected]
http://osflash.org/mailman/listinfo/red5_osflash.org