home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mobiclic 136
/
MOBICLIC136.ISO
/
pc
/
DATA
/
HOTE
/
libs
/
amfphp
/
amfphp.swf
/
scripts
/
__Packages
/
mx
/
remoting
/
Operation.as
< prev
next >
Wrap
Text File
|
2011-07-20
|
2KB
|
78 lines
class mx.remoting.Operation
{
function Operation(methodName, parent)
{
var _loc1_ = this;
_loc1_.__service = parent;
_loc1_.__responder = parent.responder;
_loc1_.__methodName = methodName;
_loc1_.__invokationName = _loc1_.__service.__get__name() + "." + methodName;
_loc1_.__request = new Object();
_loc1_.__arguments = new Array();
}
function createThenSend(Void)
{
this.createArguments();
return this.send();
}
function send(Void)
{
var _loc1_ = this;
_loc1_.__service.log.logInfo("Invoking " + _loc1_.__methodName + " on " + _loc1_.__service.__get__name());
var _loc3_ = new mx.remoting.PendingCall(_loc1_.__service,_loc1_.__methodName);
_loc3_.__set__responder(_loc1_.__responder);
var _loc2_ = null;
if(_loc1_.__arguments == null)
{
_loc2_ = new Array();
}
else
{
_loc2_ = _loc1_.__arguments.concat();
}
_loc1_.__invokationName = _loc1_.__service.__get__name() + "." + _loc1_.__methodName;
_loc2_.unshift(_loc1_.__invokationName,_loc3_);
_loc1_.__service.connection.call.apply(_loc1_.__service.__get__connection(),_loc2_);
return _loc3_;
}
function invoke(a)
{
this.__arguments = a;
}
function get responder()
{
return this.__responder;
}
function set responder(r)
{
this.__responder = r;
}
function get request()
{
return this.__request;
}
function set request(r)
{
this.__request = r;
}
function get name()
{
return this.__methodName;
}
function createArguments()
{
var _loc1_ = this;
if(_loc1_.__request != null)
{
_loc1_.__arguments = new Array();
for(var _loc2_ in _loc1_.__request)
{
if(_loc2_ != "arguments")
{
_loc1_.__arguments.unshift(_loc1_.__request[_loc2_]);
}
}
}
}
}