<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Logging Flex 2 and AS 3 apps with Firebug and ThunderBolt</title>
	<atom:link href="http://www.websector.de/blog/2007/04/21/logging-flex-2-and-as-3-apps-with-firebug-and-thunderbolt/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.websector.de/blog/2007/04/21/logging-flex-2-and-as-3-apps-with-firebug-and-thunderbolt/</link>
	<description>// Flex - AIR - Flash - JavaScript</description>
	<lastBuildDate>Mon, 30 Jan 2012 12:57:35 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: WS-Blog &#187; 10 tips and tricks using ThunderBolt AS3</title>
		<link>http://www.websector.de/blog/2007/04/21/logging-flex-2-and-as-3-apps-with-firebug-and-thunderbolt/comment-page-1/#comment-19203</link>
		<dc:creator>WS-Blog &#187; 10 tips and tricks using ThunderBolt AS3</dc:creator>
		<pubDate>Sun, 15 Jun 2008 16:15:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.websector.de/blog/2007/04/21/logging-flex-2-and-as-3-apps-with-firebug-and-thunderbolt/#comment-19203</guid>
		<description>[...] Almost one year ago I started to develop a small extension called ThunderBolt AS3 for logging ActionScript 3 applications using Firebug as simple as possible. Today its nice to see that the community uses and supports this extension as well. [...]</description>
		<content:encoded><![CDATA[<p>[...] Almost one year ago I started to develop a small extension called ThunderBolt AS3 for logging ActionScript 3 applications using Firebug as simple as possible. Today its nice to see that the community uses and supports this extension as well. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sectore</title>
		<link>http://www.websector.de/blog/2007/04/21/logging-flex-2-and-as-3-apps-with-firebug-and-thunderbolt/comment-page-1/#comment-1207</link>
		<dc:creator>sectore</dc:creator>
		<pubDate>Thu, 21 Jun 2007 10:24:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.websector.de/blog/2007/04/21/logging-flex-2-and-as-3-apps-with-firebug-and-thunderbolt/#comment-1207</guid>
		<description>Brain,

thanks for your hint - I&#039;ve updated the ThunderBolt AS3 package based on your comment ;-) 

Check it out:
http://www.websector.de/blog/2007/06/20/update-part-2-logging-flex-2-and-as3-applications-with-firebug-and-thunderbolt/</description>
		<content:encoded><![CDATA[<p>Brain,</p>
<p>thanks for your hint &#8211; I&#8217;ve updated the ThunderBolt AS3 package based on your comment <img src='http://www.websector.de/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  </p>
<p>Check it out:<br />
<a href="http://www.websector.de/blog/2007/06/20/update-part-2-logging-flex-2-and-as3-applications-with-firebug-and-thunderbolt/" rel="nofollow">http://www.websector.de/blog/2007/06/20/update-part-2-logging-flex-2-and-as3-applications-with-firebug-and-thunderbolt/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Lai</title>
		<link>http://www.websector.de/blog/2007/04/21/logging-flex-2-and-as-3-apps-with-firebug-and-thunderbolt/comment-page-1/#comment-848</link>
		<dc:creator>Brian Lai</dc:creator>
		<pubDate>Wed, 23 May 2007 00:53:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.websector.de/blog/2007/04/21/logging-flex-2-and-as-3-apps-with-firebug-and-thunderbolt/#comment-848</guid>
		<description>I factored function &quot;trace&quot; and made it look more like the Java way:

...
		public static function trace (msg: String = null, obj:Object = null): void
		{
			depth = 0;
			//
			// log description
			logLevel = (msg != null) ? Logger.getLogLevel(msg) : Logger.LOG;
			var txtMessage: String = (msg != null &amp;&amp; msg.length&gt;= 3) ? msg.slice(2) : &quot;&quot;;
			doTrace(logLevel, msg, obj);
		}
		
		private static function doTrace (level:String, msg:String, obj:Object):void {
			var logMsg: String = level.toUpperCase() + &quot;: &quot; + msg;
			ExternalInterface.call(&quot;console.&quot; + level, logMsg);
			//
			// log object
			if (obj) Logger.logProperties(obj);
		}
		
		public static function info (msg:String = null, obj:Object = null):void {
			depth = 0;
            doTrace(INFO, msg, obj);
		}
		
		public static function warn (msg:String = null, obj:Object = null):void {
			depth = 0;
            doTrace(WARN, msg, obj);
		}
		
		public static function log (msg:String = null, obj:Object = null):void {
			depth = 0;
            doTrace(LOG, msg, obj);
		}
		
		public static function error (msg:String = null, obj:Object = null):void {
			depth = 0;
            doTrace(ERROR, msg, obj);
		}
...

======================================================
Usage:

       Logger.info(message:String, object:Object);

       Logger.warn(message:String, object:Object);

       Logger.error(message:String, object:Object);

       Logger.log(message:String, object:Object);</description>
		<content:encoded><![CDATA[<p>I factored function &#8220;trace&#8221; and made it look more like the Java way:</p>
<p>&#8230;<br />
		public static function trace (msg: String = null, obj:Object = null): void<br />
		{<br />
			depth = 0;<br />
			//<br />
			// log description<br />
			logLevel = (msg != null) ? Logger.getLogLevel(msg) : Logger.LOG;<br />
			var txtMessage: String = (msg != null &amp;&amp; msg.length&gt;= 3) ? msg.slice(2) : &#8220;&#8221;;<br />
			doTrace(logLevel, msg, obj);<br />
		}</p>
<p>		private static function doTrace (level:String, msg:String, obj:Object):void {<br />
			var logMsg: String = level.toUpperCase() + &#8220;: &#8221; + msg;<br />
			ExternalInterface.call(&#8220;console.&#8221; + level, logMsg);<br />
			//<br />
			// log object<br />
			if (obj) Logger.logProperties(obj);<br />
		}</p>
<p>		public static function info (msg:String = null, obj:Object = null):void {<br />
			depth = 0;<br />
            doTrace(INFO, msg, obj);<br />
		}</p>
<p>		public static function warn (msg:String = null, obj:Object = null):void {<br />
			depth = 0;<br />
            doTrace(WARN, msg, obj);<br />
		}</p>
<p>		public static function log (msg:String = null, obj:Object = null):void {<br />
			depth = 0;<br />
            doTrace(LOG, msg, obj);<br />
		}</p>
<p>		public static function error (msg:String = null, obj:Object = null):void {<br />
			depth = 0;<br />
            doTrace(ERROR, msg, obj);<br />
		}<br />
&#8230;</p>
<p>======================================================<br />
Usage:</p>
<p>       Logger.info(message:String, object:Object);</p>
<p>       Logger.warn(message:String, object:Object);</p>
<p>       Logger.error(message:String, object:Object);</p>
<p>       Logger.log(message:String, object:Object);</p>
]]></content:encoded>
	</item>
</channel>
</rss>

