home *** CD-ROM | disk | FTP | other *** search
/ Mobiclic 136 / MOBICLIC136.ISO / pc / DATA / HOTE / libs / amfphp / amfphp.swf / scripts / __Packages / mx / remoting / Service.as < prev   
Text File  |  2011-07-20  |  2KB  |  86 lines

  1. class mx.remoting.Service extends Object
  2. {
  3.    static var version = "1.2.0.124";
  4.    var _allowRes = false;
  5.    function Service(gatewayURI, logger, serviceName, conn, resp)
  6.    {
  7.       var _loc1_ = this;
  8.       var _loc2_ = conn;
  9.       var _loc3_ = gatewayURI;
  10.       super();
  11.       _loc1_.log = logger;
  12.       _loc1_.log.logInfo("Creating Service for " + serviceName,mx.services.Log.VERBOSE);
  13.       if(_loc3_ == "" && _loc2_ == null)
  14.       {
  15.          _loc3_ = mx.remoting.NetServices.gatewayUrl;
  16.       }
  17.       _loc3_ = mx.remoting.NetServices.getHttpUrl(_loc3_);
  18.       if(_loc2_ == null)
  19.       {
  20.          _loc2_ = mx.remoting.NetServices.getConnection(_loc3_);
  21.          if(_loc2_ == null)
  22.          {
  23.             _loc1_.log.logInfo("Creating gateway connection for " + _loc3_,mx.services.Log.VERBOSE);
  24.             _loc2_ = mx.remoting.NetServices.createGatewayConnection(_loc3_,logger);
  25.          }
  26.       }
  27.       _loc1_.__conn = _loc2_;
  28.       _loc2_.updateConfig();
  29.       _loc1_._allowRes = true;
  30.       _loc1_.__serviceName = serviceName;
  31.       _loc1_.__responder = resp;
  32.       _loc1_.log.logInfo("Successfully created Service",mx.services.Log.VERBOSE);
  33.    }
  34.    function get connection()
  35.    {
  36.       return this.__conn;
  37.    }
  38.    function __resolve(methodName)
  39.    {
  40.       var _loc2_ = this;
  41.       if(_loc2_._allowRes)
  42.       {
  43.          var _loc1_ = _loc2_.__makeOpFunc(methodName);
  44.          _loc2_[methodName] = _loc1_;
  45.          return _loc1_;
  46.       }
  47.       return null;
  48.    }
  49.    function __makeOpFunc(name)
  50.    {
  51.       var op = new mx.remoting.Operation(name,this);
  52.       var _loc1_ = function()
  53.       {
  54.          op.invoke(arguments);
  55.          return op.send();
  56.       };
  57.       _loc1_.send = function()
  58.       {
  59.          return op.createThenSend();
  60.       };
  61.       _loc1_.setResponder = function(resp)
  62.       {
  63.          op.responder = resp;
  64.       };
  65.       _loc1_.getRequest = function()
  66.       {
  67.          return op.request;
  68.       };
  69.       _loc1_.setRequest = function(val)
  70.       {
  71.          op.request = val;
  72.       };
  73.       _loc1_.addProperty("request",_loc1_.getRequest,_loc1_.setRequest);
  74.       _loc1_.operation = op;
  75.       return _loc1_;
  76.    }
  77.    function get name()
  78.    {
  79.       return this.__serviceName;
  80.    }
  81.    function get responder()
  82.    {
  83.       return this.__responder;
  84.    }
  85. }
  86.