No Marc, lo siento. Es una clase que forma parte de mi classPath --todas las clases del classPath son as2-- y bueno, realmente enviaba el mail a petici�n expresa de Joseba (mi servidor de correo enviaba unos headers extra�os) y por dar contenido a la lista he metido esta clase, que pienso que podr�a ser interesante.
-----Mensaje original----- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] En nombre de Marc el XrV Enviado el: martes, 18 de noviembre de 2003 12:15 Para: [EMAIL PROTECTED] Asunto: Re: [ASNativos] Logger (as2) est� muy interesante, tienes la versi�n as1(mx) ? asias ---------- Original Message ----------- From: "Manuel de la Higuera" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tue, 18 Nov 2003 12:00:14 +0100 Subject: [ASNativos] Logger (as2) > Hola a todos: > He hecho una clase para loggear procesos en AS2 que puede resultar de > inter�s. Est� sin documentar --lo siento, soy as�-- pero no es dif�cil > ver el funcionamiento a partir del c�digo. > > Ej: > import as.util.Logger; > Logger.addItem("Esto es item del log"); > Logger.addItem("Esto es un item del tipo 'prueba'","prueba"); > Logger.addItem("Otro �tem de prueba","prueba"); Logger.traceAll(); > /* trace > [main] Esto es item del log > [prueba] Esto es un item del tipo 'prueba' > [prueba] Otro �tem de prueba > */ > > Logger.traceLast(5,"prueba"); > /* trace > [prueba] Esto es un item del tipo 'prueba' > [prueba] Otro �tem de prueba > */ > > Y el c�digo: > > --- 8< ---- > class as.util.Logger { > static private var $logs,$nameTypes,$outputArray:Array; > static private var $types:Object; > static private var $main:String = "main"; > static private var $leftDeco:String = "["; > static private var $rightDeco:String = "]"; > static private var $assignType:Number = 0; > > static public function addItem(log:String,type:String):Void { > var obj:Object = new Object(); > obj.type = $getType(type); > obj.log = log; > $getInstance().push(obj); > } > > static public function traceAll(type:String):Void { > $initOutput(); > if (type != undefined) var idType:Number = $getType(type); > for (var i=0; i<$getInstance().length; i++) { > if ($isType(i,idType) || idType == undefined) { > $outputArray.push($getOutput(i)); > } > } > $output(); > } > > static public function traceLast(num:Number,type:String):Void { > $initOutput(); > if (type != undefined) var idType:Number = $getType(type); > var currentItem:Number = $getInstance().length-1; > var i:Number = 0; > while (i < num && currentItem >= 0) { > if ($isType(currentItem,idType) || idType == undefined) { > $outputArray.push($getOutput(currentItem)); > i++; > } > currentItem--; > } > $outputArray.reverse(); > $output(); > } > > static private function $getInstance():Array { > if ($logs == undefined) { > $logs = new Array; > } > return $logs; > } > > static private function $initOutput():Void { > $outputArray = new Array(); > } > > static private function $output() { > for (var i=0; i<$outputArray.length; i++) { > trace($outputArray[i]); > } > } > > static private function $getType(type:String):Number { > if ($types == undefined) $types = new Object(); > if ($nameTypes == undefined) $nameTypes = new Array(); > if ($types[type] == undefined) { > $types[type] = ($assignType++); > $nameTypes.push(type); > } > return $types[type]; > } > > static private function $getTypeName(index:Number):String { > var tmpType = $nameTypes[$getInstance()[index].type]; > if (tmpType == undefined) { > return $formatTypename($main); > }else{ > return $formatTypename(tmpType); > } > } > > static private function $getMsg(index:Number):String { > return $getInstance()[index].log; > } > > static private function $formatTypename(msg:String):String { > return ($leftDeco + msg + $rightDeco); > } > > static private function $formatMsg(msg:String):String { > return (msg); > } > > static private function $getOutput(index:Number):String { > return $getTypeName(index) + " " + $getMsg(index); > } > > static private function $isType(index:Number,typeNum:Number) > :Boolean { return ($getInstance()[index].type == typeNum); } } > --- 8< ---- > > <!------------------------------- > Lista ASNativos: > subscripciones/desubscripciones http://www.sidedev.net/asnativos > --------------------------------> ------- End of Original Message ------- <!------------------------------- Lista ASNativos: subscripciones/desubscripciones http://www.sidedev.net/asnativos --------------------------------> <!------------------------------- Lista ASNativos: subscripciones/desubscripciones http://www.sidedev.net/asnativos -------------------------------->
