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 >
Text File  |  2011-07-20  |  2KB  |  78 lines

  1. class mx.remoting.Operation
  2. {
  3.    function Operation(methodName, parent)
  4.    {
  5.       var _loc1_ = this;
  6.       _loc1_.__service = parent;
  7.       _loc1_.__responder = parent.responder;
  8.       _loc1_.__methodName = methodName;
  9.       _loc1_.__invokationName = _loc1_.__service.__get__name() + "." + methodName;
  10.       _loc1_.__request = new Object();
  11.       _loc1_.__arguments = new Array();
  12.    }
  13.    function createThenSend(Void)
  14.    {
  15.       this.createArguments();
  16.       return this.send();
  17.    }
  18.    function send(Void)
  19.    {
  20.       var _loc1_ = this;
  21.       _loc1_.__service.log.logInfo("Invoking " + _loc1_.__methodName + " on " + _loc1_.__service.__get__name());
  22.       var _loc3_ = new mx.remoting.PendingCall(_loc1_.__service,_loc1_.__methodName);
  23.       _loc3_.__set__responder(_loc1_.__responder);
  24.       var _loc2_ = null;
  25.       if(_loc1_.__arguments == null)
  26.       {
  27.          _loc2_ = new Array();
  28.       }
  29.       else
  30.       {
  31.          _loc2_ = _loc1_.__arguments.concat();
  32.       }
  33.       _loc1_.__invokationName = _loc1_.__service.__get__name() + "." + _loc1_.__methodName;
  34.       _loc2_.unshift(_loc1_.__invokationName,_loc3_);
  35.       _loc1_.__service.connection.call.apply(_loc1_.__service.__get__connection(),_loc2_);
  36.       return _loc3_;
  37.    }
  38.    function invoke(a)
  39.    {
  40.       this.__arguments = a;
  41.    }
  42.    function get responder()
  43.    {
  44.       return this.__responder;
  45.    }
  46.    function set responder(r)
  47.    {
  48.       this.__responder = r;
  49.    }
  50.    function get request()
  51.    {
  52.       return this.__request;
  53.    }
  54.    function set request(r)
  55.    {
  56.       this.__request = r;
  57.    }
  58.    function get name()
  59.    {
  60.       return this.__methodName;
  61.    }
  62.    function createArguments()
  63.    {
  64.       var _loc1_ = this;
  65.       if(_loc1_.__request != null)
  66.       {
  67.          _loc1_.__arguments = new Array();
  68.          for(var _loc2_ in _loc1_.__request)
  69.          {
  70.             if(_loc2_ != "arguments")
  71.             {
  72.                _loc1_.__arguments.unshift(_loc1_.__request[_loc2_]);
  73.             }
  74.          }
  75.       }
  76.    }
  77. }
  78.