home *** CD-ROM | disk | FTP | other *** search
/ Computer Active 2010 August / CA08.iso / Multimedija / shufflr.air / ShufflrClient.swf / scripts / mx / logging / AbstractTarget.as next >
Encoding:
Text File  |  2010-06-23  |  3.3 KB  |  134 lines

  1. package mx.logging
  2. {
  3.    import mx.core.IMXMLObject;
  4.    import mx.core.mx_internal;
  5.    import mx.logging.errors.InvalidFilterError;
  6.    import mx.resources.IResourceManager;
  7.    import mx.resources.ResourceManager;
  8.    import mx.utils.UIDUtil;
  9.    
  10.    use namespace mx_internal;
  11.    
  12.    public class AbstractTarget implements ILoggingTarget, IMXMLObject
  13.    {
  14.       mx_internal static const VERSION:String = "3.5.0.12683";
  15.       
  16.       private var _level:int = 0;
  17.       
  18.       private var _loggerCount:uint = 0;
  19.       
  20.       private var _id:String;
  21.       
  22.       private var _filters:Array = ["*"];
  23.       
  24.       private var resourceManager:IResourceManager = ResourceManager.getInstance();
  25.       
  26.       public function AbstractTarget()
  27.       {
  28.          super();
  29.          _id = UIDUtil.createUID();
  30.       }
  31.       
  32.       public function get level() : int
  33.       {
  34.          return _level;
  35.       }
  36.       
  37.       public function set level(param1:int) : void
  38.       {
  39.          Log.removeTarget(this);
  40.          _level = param1;
  41.          Log.addTarget(this);
  42.       }
  43.       
  44.       public function logEvent(param1:LogEvent) : void
  45.       {
  46.       }
  47.       
  48.       public function addLogger(param1:ILogger) : void
  49.       {
  50.          if(param1)
  51.          {
  52.             ++_loggerCount;
  53.             param1.addEventListener(LogEvent.LOG,logHandler);
  54.          }
  55.       }
  56.       
  57.       public function initialized(param1:Object, param2:String) : void
  58.       {
  59.          _id = param2;
  60.          Log.addTarget(this);
  61.       }
  62.       
  63.       public function get id() : String
  64.       {
  65.          return _id;
  66.       }
  67.       
  68.       private function logHandler(param1:LogEvent) : void
  69.       {
  70.          if(param1.level >= level)
  71.          {
  72.             logEvent(param1);
  73.          }
  74.       }
  75.       
  76.       public function removeLogger(param1:ILogger) : void
  77.       {
  78.          if(param1)
  79.          {
  80.             --_loggerCount;
  81.             param1.removeEventListener(LogEvent.LOG,logHandler);
  82.          }
  83.       }
  84.       
  85.       public function set filters(param1:Array) : void
  86.       {
  87.          var _loc2_:String = null;
  88.          var _loc3_:int = 0;
  89.          var _loc4_:String = null;
  90.          var _loc5_:uint = 0;
  91.          if(Boolean(param1) && param1.length > 0)
  92.          {
  93.             _loc5_ = 0;
  94.             while(_loc5_ < param1.length)
  95.             {
  96.                _loc2_ = param1[_loc5_];
  97.                if(Log.hasIllegalCharacters(_loc2_))
  98.                {
  99.                   _loc4_ = resourceManager.getString("logging","charsInvalid",[_loc2_]);
  100.                   throw new InvalidFilterError(_loc4_);
  101.                }
  102.                _loc3_ = int(_loc2_.indexOf("*"));
  103.                if(_loc3_ >= 0 && _loc3_ != _loc2_.length - 1)
  104.                {
  105.                   _loc4_ = resourceManager.getString("logging","charPlacement",[_loc2_]);
  106.                   throw new InvalidFilterError(_loc4_);
  107.                }
  108.                _loc5_++;
  109.             }
  110.          }
  111.          else
  112.          {
  113.             param1 = ["*"];
  114.          }
  115.          if(_loggerCount > 0)
  116.          {
  117.             Log.removeTarget(this);
  118.             _filters = param1;
  119.             Log.addTarget(this);
  120.          }
  121.          else
  122.          {
  123.             _filters = param1;
  124.          }
  125.       }
  126.       
  127.       public function get filters() : Array
  128.       {
  129.          return _filters;
  130.       }
  131.    }
  132. }
  133.  
  134.