bigbluebutton-Github/bigbluebutton-client/src/PresentModule.mxml

106 lines
3.2 KiB
XML
Executable File

<?xml version="1.0" encoding="utf-8"?>
<!--
BigBlueButton open source conferencing system - http://www.bigbluebutton.org/
Copyright (c) 2012 BigBlueButton Inc. and by respective authors (see below).
This program is free software; you can redistribute it and/or modify it under the
terms of the GNU Lesser General Public License as published by the Free Software
Foundation; either version 3.0 of the License, or (at your option) any later
version.
BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along
with BigBlueButton; if not, see <http://www.gnu.org/licenses/>.
-->
<mx:Module xmlns:mx="http://www.adobe.com/2006/mxml"
implements="org.bigbluebutton.common.IBigBlueButtonModule"
creationComplete="onCreationComplete()" xmlns:maps="org.bigbluebutton.modules.present.maps.*">
<mx:Script>
<![CDATA[
import com.asfusion.mate.events.Dispatcher;
import mx.controls.Alert;
import org.bigbluebutton.common.LogUtil;
import org.bigbluebutton.modules.present.events.PresentModuleEvent;
import org.bigbluebutton.modules.present.maps.PresentEventMap;
private var globalDispatcher:Dispatcher = new Dispatcher();
private var _moduleName:String = "Presentation";
private var _attributes:Object;
private function onCreationComplete():void{
}
public function get moduleName():String{
return _moduleName;
}
public function get uri():String{
if (_attributes.mode == "PLAYBACK")
return _attributes.uri + "/" + _attributes.playbackRoom;
return _attributes.uri + "/" + _attributes.room;
}
public function get username():String{
return _attributes.username;
}
public function get connection():NetConnection{
return _attributes.connection;
}
public function get mode():String{
if (_attributes.mode == null){
_attributes.mode = "LIVE";
LogUtil.debug("Setting Present mode: " + _attributes.mode);
}
LogUtil.debug("Present mode: " + _attributes.mode);
return _attributes.mode;
}
public function get userid():Number{
return _attributes.userid as Number;
}
public function get role():String{
return _attributes.userrole as String;
}
public function start(attributes:Object):void{
LogUtil.debug("present attr: " + attributes.username);
_attributes = attributes;
var e:PresentModuleEvent = new PresentModuleEvent(PresentModuleEvent.START_MODULE);
e.data = attributes;
globalDispatcher.dispatchEvent(e);
}
public function stop():void{
var e:PresentModuleEvent = new PresentModuleEvent(PresentModuleEvent.STOP_MODULE);
globalDispatcher.dispatchEvent(e);
}
public function getRoom():String{
return _attributes.room;
}
public function getRed5ServerUri():String{
return _attributes.uri;
}
]]>
</mx:Script>
<maps:PresentEventMap id="eventMap" />
</mx:Module>