package org.red5.server.so;
import org.red5.server.adapter.MultiThreadedApplicationAdapter;
import org.red5.server.api.IClient;
import org.red5.server.api.IConnection;
import org.red5.server.api.scope.IScope;
import org.red5.server.api.so.ISharedObject;
public class SOApplication extends MultiThreadedApplicationAdapter {
private String persistentSO = "persistentSO";
/* (non-Javadoc)
* @see org.red5.server.adapter.MultiThreadedApplicationAdapter#appStart(org.red5.server.api.scope.IScope)
*/
@SuppressWarnings("unused")
@Override
public boolean appStart(IScope app) {
// create persistent SO
createSharedObject(app, persistentSO, true);
// get the SO
ISharedObject sharedObject = getSharedObject(app, persistentSO, true);
//
return super.appStart(app);
}
/* (non-Javadoc)
* @see org.red5.server.adapter.MultiThreadedApplicationAdapter#appStop(org.red5.server.api.scope.IScope)
*/
@Override
public void appStop(IScope app) {
// TODO Auto-generated method stub
super.appStop(app);
}
/* (non-Javadoc)
* @see org.red5.server.adapter.MultiThreadedApplicationAdapter#roomStart(org.red5.server.api.scope.IScope)
*/
@Override
public boolean roomStart(IScope room) {
getSharedObject(scope, "persistentSO", true);
return super.roomStart(room);
}
/* (non-Javadoc)
* @see org.red5.server.adapter.MultiThreadedApplicationAdapter#roomStop(org.red5.server.api.scope.IScope)
*/
@Override
public void roomStop(IScope room) {
// TODO Auto-generated method stub
super.roomStop(room);
}
/* (non-Javadoc)
* @see org.red5.server.adapter.MultiThreadedApplicationAdapter#appConnect(org.red5.server.api.IConnection, java.lang.Object[])
*/
@Override
public boolean appConnect(IConnection conn, Object[] params) {
// TODO Auto-generated method stub
return super.appConnect(conn, params);
}
/* (non-Javadoc)
* @see org.red5.server.adapter.MultiThreadedApplicationAdapter#roomConnect(org.red5.server.api.IConnection, java.lang.Object[])
*/
@Override
public boolean roomConnect(IConnection conn, Object[] params) {
// TODO Auto-generated method stub
return super.roomConnect(conn, params);
}
/* (non-Javadoc)
* @see org.red5.server.adapter.MultiThreadedApplicationAdapter#appDisconnect(org.red5.server.api.IConnection)
*/
@Override
public void appDisconnect(IConnection conn) {
// TODO Auto-generated method stub
super.appDisconnect(conn);
}
/* (non-Javadoc)
* @see org.red5.server.adapter.MultiThreadedApplicationAdapter#roomDisconnect(org.red5.server.api.IConnection)
*/
@Override
public void roomDisconnect(IConnection conn) {
// TODO Auto-generated method stub
super.roomDisconnect(conn);
}
/* (non-Javadoc)
* @see org.red5.server.adapter.MultiThreadedApplicationAdapter#roomJoin(org.red5.server.api.IClient, org.red5.server.api.scope.IScope)
*/
@Override
public boolean roomJoin(IClient client, IScope room) {
// TODO Auto-generated method stub
return super.roomJoin(client, room);
}
/* (non-Javadoc)
* @see org.red5.server.adapter.MultiThreadedApplicationAdapter#roomLeave(org.red5.server.api.IClient, org.red5.server.api.scope.IScope)
*/
@Override
public void roomLeave(IClient client, IScope room) {
// TODO Auto-generated method stub
super.roomLeave(client, room);
}
}