Thanks for the explanation Alex, much more clear now :) El vie., 5 oct. 2018 a las 0:32, Alex Harui (<aha...@adobe.com.invalid>) escribió:
> It does not work yet. That's what I'm working on now. > > Most of the simpler, fundamental UI widgets have lots of flash > dependencies so it was better to produce a new platform-independent > implementation in Basic and re-use those beads in the migration set. As we > find out what APIs folks need that Basic doesn't have, we will be busy > creating new implementation code in Basic and using it in emulations. The > emulations of these components copy in as little code from Flex as possible > to avoid bringing in Flash-dependent code, then we fill in the > implementations as needed. > > But some large chunks of code, like container layout actually had > relatively few Flash dependencies so it and aren't very browser dependent > either. Container layout does not use CSS since percentWidth/Height in > Flex did not conform to CSS width %. So I was able to copy in lots of code > from Flex, change a few places and get it to run in I think fewer days than > starting from as little code as possible and working upward. > > My bet is that the same is true for RemoteObject. In copying the code and > making the required changes, I think it will really boil down to an > emulation of NetConnection which will call into the existing Royale AMF > code. And if I'm right, lots of other RemoteObject features might just > start to work. Consumer, Producer, ChannelSets, Operations, AsyncToken and > more were all copied over and now compile and don't really depend on Flash, > just Result and Fault events from NetConnection. > > I think the same is true for ResourceManager, although I need the compiler > to handle bundles in some way for JS. > > And I think the same is true for Charts. There are Basic Charts, but not > as many as in Flex and instead of working from little code upward for > Charts, I want to try copying all of Flex Charts. I think Charts will boil > down to drawing on Graphics. > > Hope that makes it more clear, > -Alex > > On 10/4/18, 3:19 PM, "Carlos Rovira" <carlosrov...@apache.org> wrote: > > Hi Alex, > > full compile of this classes means as well that works? This kind of > code > since is about 80% not flash dependent, could be working? Just curious > > thanks > > Carlos > > > > El jue., 4 oct. 2018 a las 20:51, <aha...@apache.org> escribió: > > > This is an automated email from the ASF dual-hosted git repository. > > > > aharui pushed a commit to branch develop > > in repository > https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitbox.apache.org%2Frepos%2Fasf%2Froyale-asjs.git&data=02%7C01%7Caharui%40adobe.com%7Cf808264cf16a47daae8708d62a476d95%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636742883608520259&sdata=sHQ3FYHCJbXwLPCk6nPg3uq4HfYYyVBV89a2CRREMoE%3D&reserved=0 > > > > > > The following commit(s) were added to refs/heads/develop by this > push: > > new 16e9336 clean compile of 'full' Flex mx:RemoteObject > > 16e9336 is described below > > > > commit 16e9336a55cfaca4c042a9e33949d1eef32b309b > > Author: Alex Harui <aha...@apache.org> > > AuthorDate: Thu Oct 4 11:51:17 2018 -0700 > > > > clean compile of 'full' Flex mx:RemoteObject > > --- > > .../src/main/resources/mx-royale-manifest.xml | 2 + > > .../MXRoyale/src/main/royale/MXRoyaleClasses.as | 1 - > > .../LogEventLevel.as => core/IMXMLObject.as} | 34 +- > > .../IllegalOperationError.as} | 68 +- > > .../events/{IOErrorEvent.as => AsyncErrorEvent.as} | 12 +- > > .../mx/events/{IOErrorEvent.as => ErrorEvent.as} | 16 +- > > .../src/main/royale/mx/events/IOErrorEvent.as | 2 +- > > .../events/{IOErrorEvent.as => NetStatusEvent.as} | 14 +- > > .../main/royale/mx/events/SecurityErrorEvent.as | 2 +- > > .../MXRoyale/src/main/royale/mx/logging/ILogger.as | 303 +- > > .../src/main/royale/mx/logging/ILoggingTarget.as | 166 + > > .../MXRoyale/src/main/royale/mx/logging/Log.as | 96 +- > > .../src/main/royale/mx/logging/LogEvent.as | 230 ++ > > .../src/main/royale/mx/logging/LogEventLevel.as | 64 +- > > .../src/main/royale/mx/logging/LogLogger.as | 258 ++ > > .../InvalidCategoryError.as} | 58 +- > > .../main/royale/mx/messaging/AbstractConsumer.as | 997 +++++ > > .../main/royale/mx/messaging/AbstractProducer.as | 760 ++++ > > .../src/main/royale/mx/messaging/Channel.as | 1743 ++++++++ > > .../src/main/royale/mx/messaging/ChannelSet.as | 4312 > > ++++++++++---------- > > .../src/main/royale/mx/messaging/Consumer.as | 273 ++ > > .../mx/messaging/ConsumerMessageDispatcher.as | 326 ++ > > .../src/main/royale/mx/messaging/MessageAgent.as | 1391 +++++++ > > .../main/royale/mx/messaging/MessageResponder.as | 386 ++ > > .../src/main/royale/mx/messaging/Producer.as | 214 + > > .../src/main/royale/mx/messaging/RoyaleClient.as | 167 + > > .../royale/mx/messaging/channels/AMFChannel.as | 123 +- > > .../mx/messaging/channels/NetConnectionChannel.as | 764 ++++ > > .../royale/mx/messaging/channels/PollingChannel.as | 991 +++++ > > .../mx/messaging/channels/SecureAMFChannel.as | 80 + > > .../main/royale/mx/messaging/config/ConfigMap.as | 339 ++ > > .../royale/mx/messaging/config/LoaderConfig.as | 174 + > > .../royale/mx/messaging/config/ServerConfig.as | 768 ++++ > > .../errors/ArgumentError.as} | 57 +- > > .../errors/ChannelError.as} | 32 +- > > .../errors/InvalidChannelError.as} | 45 +- > > .../mx/messaging/errors/InvalidDestinationError.as | 68 + > > .../errors/MessagingError.as} | 57 +- > > .../errors/NoChannelAvailableError.as} | 42 +- > > .../royale/mx/messaging/events/ChannelEvent.as | 325 ++ > > .../mx/messaging/events/ChannelFaultEvent.as | 328 ++ > > .../royale/mx/messaging/events/MessageAckEvent.as | 238 ++ > > .../royale/mx/messaging/events/MessageEvent.as | 255 ++ > > .../mx/messaging/events/MessageFaultEvent.as | 309 ++ > > .../mx/messaging/messages/AbstractMessage.as | 757 ++++ > > .../mx/messaging/messages/AcknowledgeMessage.as | 139 + > > .../mx/messaging/messages/AcknowledgeMessageExt.as | 74 + > > .../royale/mx/messaging/messages/AsyncMessage.as | 254 ++ > > .../mx/messaging/messages/AsyncMessageExt.as | 79 + > > .../royale/mx/messaging/messages/CommandMessage.as | 567 +++ > > .../mx/messaging/messages/CommandMessageExt.as | 79 + > > .../royale/mx/messaging/messages/ErrorMessage.as | 173 + > > .../messages/ISmallMessage.as} | 43 +- > > .../messaging/messages/MessagePerformanceInfo.as | 282 ++ > > .../messaging/messages/MessagePerformanceUtils.as | 553 +++ > > .../mx/messaging/messages/RemotingMessage.as | 95 + > > .../src/main/royale/mx/net/NetConnection.as | 130 + > > .../LogEventLevel.as => net/ObjectEncoding.as} | 57 +- > > .../{logging/LogEventLevel.as => net/Responder.as} | 51 +- > > .../src/main/royale/mx/netmon/NetworkMonitor.as | 275 ++ > > .../src/main/royale/mx/rpc/AbstractInvoker.as | 540 +++ > > .../src/main/royale/mx/rpc/AbstractOperation.as | 278 ++ > > .../src/main/royale/mx/rpc/AbstractService.as | 706 ++++ > > .../MXRoyale/src/main/royale/mx/rpc/ActiveCalls.as | 95 + > > .../src/main/royale/mx/rpc/AsyncDispatcher.as | 71 + > > .../src/main/royale/mx/rpc/AsyncRequest.as | 181 + > > .../MXRoyale/src/main/royale/mx/rpc/Fault.as | 28 +- > > .../LogEventLevel.as => rpc/IResponder.as} | 50 +- > > .../MXRoyale/src/main/royale/mx/rpc/Responder.as | 181 +- > > .../events/AbstractEvent.as} | 63 +- > > .../src/main/royale/mx/rpc/events/FaultEvent.as | 549 ++- > > .../src/main/royale/mx/rpc/events/InvokeEvent.as | 27 +- > > .../src/main/royale/mx/rpc/events/ResultEvent.as | 512 ++- > > .../src/main/royale/mx/rpc/mxml/Concurrency.as | 71 + > > .../src/main/royale/mx/rpc/mxml/IMXMLSupport.as | 83 + > > .../src/main/royale/mx/rpc/remoting/Operation.as | 345 ++ > > .../main/royale/mx/rpc/remoting/RemoteObject.as | 692 ++-- > > .../main/royale/mx/rpc/remoting/mxml/Operation.as | 95 + > > .../royale/mx/rpc/remoting/mxml/RemoteObject.as | 424 +- > > .../src/main/royale/mx/utils/Base64Encoder.as | 7 +- > > .../src/main/royale/mx/utils/RPCObjectUtil.as | 790 ++++ > > .../src/main/royale/mx/utils/RPCStringUtil.as | 152 + > > .../src/main/royale/mx/utils/RPCUIDUtil.as | 131 + > > .../MXRoyale/src/main/royale/mx/utils/URLUtil.as | 1544 +++---- > > 84 files changed, 23661 insertions(+), 4452 deletions(-) > > > > diff --git > > > a/frameworks/projects/MXRoyale/src/main/resources/mx-royale-manifest.xml > > > b/frameworks/projects/MXRoyale/src/main/resources/mx-royale-manifest.xml > > index 8ee5b7e..c90ce35 100644 > > --- > > > a/frameworks/projects/MXRoyale/src/main/resources/mx-royale-manifest.xml > > +++ > > > b/frameworks/projects/MXRoyale/src/main/resources/mx-royale-manifest.xml > > @@ -140,8 +140,10 @@ > > <component id="AdvancedDataGridItemRenderer" > > > class="mx.controls.advancedDataGridClasses.AdvancedDataGridItemRenderer" /> > > <component id="LineSeries" > class="mx.charts.series.LineSeries" /> > > <component id="Tree" class="mx.controls.Tree"/> > > + > > <component id="AMFChannel" > > class="mx.messaging.channels.AMFChannel" /> > > <component id="ChannelSet" class="mx.messaging.ChannelSet" /> > > + > > <component id="ListCollectionView" > > class="mx.collections.ListCollectionView"/> > > <component id="ArrayCollection" > > class="mx.collections.ArrayCollection"/> > > <component id="Alert" class="mx.controls.Alert" /> > > diff --git > > a/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as > > b/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as > > index a4ea11c..e5acdb1 100644 > > --- a/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as > > +++ b/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as > > @@ -67,7 +67,6 @@ internal class MXRoyaleClasses > > import mx.core.ClassFactory; ClassFactory; > > import mx.effects.Tween; Tween; > > import mx.system.ApplicationDomain; ApplicationDomain; > > - import mx.rpc.remoting.RemoteObject; > mx.rpc.remoting.RemoteObject; > > import mx.rpc.http.HTTPService; mx.rpc.http.HTTPService; > > import mx.controls.treeClasses.ITreeDataDescriptor; > > ITreeDataDescriptor; > > import mx.controls.treeClasses.TreeListData; TreeListData; > > diff --git > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEventLevel.as > > b/frameworks/projects/MXRoyale/src/main/royale/mx/core/IMXMLObject.as > > similarity index 62% > > copy from > > > frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEventLevel.as > > copy to > frameworks/projects/MXRoyale/src/main/royale/mx/core/IMXMLObject.as > > index 070d24b..9b6ec90 100644 > > --- > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEventLevel.as > > +++ > b/frameworks/projects/MXRoyale/src/main/royale/mx/core/IMXMLObject.as > > @@ -17,39 +17,45 @@ > > // > > > > > //////////////////////////////////////////////////////////////////////////////// > > > > -package mx.logging > > +package mx.core > > { > > - > > + > > /** > > - * Static class containing constants for use in the > <code>level</code> > > - * property. > > + * The IMXMLObject interface defines the APIs that a non-visual > component > > + * must implement in order to work properly with the MXML compiler. > > + * Currently, the only supported method is the > <code>initialized()</code> > > + * method. > > * > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion Flex 3 > > */ > > -public final class LogEventLevel > > +public interface IMXMLObject > > { > > -/* include "../core/Version.as"; > > - */ > > > > > //-------------------------------------------------------------------------- > > // > > - // Class constants > > + // Methods > > // > > > > > //-------------------------------------------------------------------------- > > > > - > > - > > /** > > - * Tells a target to process all messages. > > + * Called after the implementing object has been created and > all > > + * component properties specified on the MXML tag have been > > initialized. > > + * > > + * @param document The MXML document that created this object. > > + * > > + * @param id The identifier used by <code>document</code> to > refer > > + * to this object. > > + * If the object is a deep property on > <code>document</code>, > > + * <code>id</code> is null. > > * > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion Flex 3 > > */ > > - public static const ALL:int = 0; > > + function initialized(document:Object, id:String):void; > > } > > > > } > > diff --git > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEventLevel.as > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/errors/IllegalOperationError.as > > similarity index 50% > > copy from > > > frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEventLevel.as > > copy to > > > frameworks/projects/MXRoyale/src/main/royale/mx/errors/IllegalOperationError.as > > index 070d24b..b0b6529 100644 > > --- > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEventLevel.as > > +++ > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/errors/IllegalOperationError.as > > @@ -17,39 +17,69 @@ > > // > > > > > //////////////////////////////////////////////////////////////////////////////// > > > > -package mx.logging > > +package mx.errors > > { > > - > > -/** > > - * Static class containing constants for use in the > <code>level</code> > > - * property. > > - * > > +COMPILE::SWF{ > > +import flash.errors.IllegalOperationError; > > +} > > + > > +/* > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion BlazeDS 4 > > + * @productversion LCDS 3 > > + * > > + * @royalesuppresspublicvarwarning > > */ > > -public final class LogEventLevel > > +COMPILE::SWF > > +public class IllegalOperationError extends > > flash.errors.IllegalOperationError > > { > > -/* include "../core/Version.as"; > > - */ > > - > > > //-------------------------------------------------------------------------- > > - // > > - // Class constants > > - // > > - > > > //-------------------------------------------------------------------------- > > + > > > //-------------------------------------------------------------------------- > > + // > > + // Constructor > > + // > > + > > > //-------------------------------------------------------------------------- > > + > > + /** > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion BlazeDS 4 > > + * @productversion LCDS 3 > > + */ > > + public function IllegalOperationError(message:String = "") > > + { > > + super(message); > > + } > > + > > + > > +} > > > > - > > +COMPILE::JS > > +public class IllegalOperationError > > +{ > > + > > > //-------------------------------------------------------------------------- > > + // > > + // Constructor > > + // > > + > > > //-------------------------------------------------------------------------- > > > > /** > > - * Tells a target to process all messages. > > * > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion BlazeDS 4 > > + * @productversion LCDS 3 > > */ > > - public static const ALL:int = 0; > > + public function IllegalOperationError(message:String = "") > > + { > > + super(); > > + } > > + > > + > > } > > > > } > > diff --git > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/events/AsyncErrorEvent.as > > similarity index 85% > > copy from > > > frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > copy to > > > frameworks/projects/MXRoyale/src/main/royale/mx/events/AsyncErrorEvent.as > > index 4c98af1..8052ed2 100644 > > --- > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > +++ > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/events/AsyncErrorEvent.as > > @@ -21,7 +21,7 @@ package mx.events > > { > > COMPILE::SWF > > { > > -import flash.events.IOErrorEvent; > > +import flash.events.AsyncErrorEvent; > > } > > /* import mx.events.Event;*/ > > import org.apache.royale.events.Event; > > @@ -37,9 +37,9 @@ import org.apache.royale.events.IRoyaleEvent; > > * @royalesuppresspublicvarwarning > > */ > > COMPILE::SWF > > -public class IOErrorEvent extends flash.events.IOErrorEvent > > +public class AsyncErrorEvent extends flash.events.AsyncErrorEvent > > { > > - public function IOErrorEvent(type:String, bubbles:Boolean = > false, > > + public function AsyncErrorEvent(type:String, bubbles:Boolean > = > > false, > > > > cancelable:Boolean = false, text:String = "", id:int = 0 > > ) > > { > > @@ -59,10 +59,10 @@ public class IOErrorEvent extends > > flash.events.IOErrorEvent > > * @royalesuppresspublicvarwarning > > */ > > COMPILE::JS > > -public class IOErrorEvent extends org.apache.royale.events.Event > > +public class AsyncErrorEvent extends ErrorEvent > > { > > /* include "../core/Version.as"; */ > > - public static const IO_ERROR:String = "ioError"; > > + public static const ASYNC_ERROR:String = "asyncError"; > > > > > > > //-------------------------------------------------------------------------- > > // > > @@ -93,7 +93,7 @@ public class IOErrorEvent extends > > org.apache.royale.events.Event > > * @playerversion AIR 1.1 > > * @productversion Royale 0.9.3 > > */ > > - public function IOErrorEvent(type:String, bubbles:Boolean = > false, > > + public function AsyncErrorEvent(type:String, bubbles:Boolean > = > > false, > > > > cancelable:Boolean = false, text:String = "", id:int = 0 > > ) > > { > > diff --git > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/events/ErrorEvent.as > > similarity index 83% > > copy from > > > frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > copy to > > frameworks/projects/MXRoyale/src/main/royale/mx/events/ErrorEvent.as > > index 4c98af1..3bf3094 100644 > > --- > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > +++ > b/frameworks/projects/MXRoyale/src/main/royale/mx/events/ErrorEvent.as > > @@ -21,7 +21,7 @@ package mx.events > > { > > COMPILE::SWF > > { > > -import flash.events.IOErrorEvent; > > +import flash.events.ErrorEvent; > > } > > /* import mx.events.Event;*/ > > import org.apache.royale.events.Event; > > @@ -37,9 +37,9 @@ import org.apache.royale.events.IRoyaleEvent; > > * @royalesuppresspublicvarwarning > > */ > > COMPILE::SWF > > -public class IOErrorEvent extends flash.events.IOErrorEvent > > +public class ErrorEvent extends flash.events.ErrorEvent > > { > > - public function IOErrorEvent(type:String, bubbles:Boolean = > false, > > + public function ErrorEvent(type:String, bubbles:Boolean = > false, > > > > cancelable:Boolean = false, text:String = "", id:int = 0 > > ) > > { > > @@ -59,10 +59,9 @@ public class IOErrorEvent extends > > flash.events.IOErrorEvent > > * @royalesuppresspublicvarwarning > > */ > > COMPILE::JS > > -public class IOErrorEvent extends org.apache.royale.events.Event > > +public class ErrorEvent extends org.apache.royale.events.Event > > { > > - /* include "../core/Version.as"; */ > > - public static const IO_ERROR:String = "ioError"; > > + public static const ERROR:String = "error"; > > > > > > > //-------------------------------------------------------------------------- > > // > > @@ -93,15 +92,16 @@ public class IOErrorEvent extends > > org.apache.royale.events.Event > > * @playerversion AIR 1.1 > > * @productversion Royale 0.9.3 > > */ > > - public function IOErrorEvent(type:String, bubbles:Boolean = > false, > > + public function ErrorEvent(type:String, bubbles:Boolean = > false, > > > > cancelable:Boolean = false, text:String = "", id:int = 0 > > ) > > { > > super(type, bubbles, cancelable); > > + this.text = text; > > } > > > > > > - > > + public var text:String; > > > > > > } > > diff --git > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > index 4c98af1..86dd175 100644 > > --- > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > +++ > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > @@ -59,7 +59,7 @@ public class IOErrorEvent extends > > flash.events.IOErrorEvent > > * @royalesuppresspublicvarwarning > > */ > > COMPILE::JS > > -public class IOErrorEvent extends org.apache.royale.events.Event > > +public class IOErrorEvent extends ErrorEvent > > { > > /* include "../core/Version.as"; */ > > public static const IO_ERROR:String = "ioError"; > > diff --git > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/events/NetStatusEvent.as > > similarity index 84% > > copy from > > > frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > copy to > > > frameworks/projects/MXRoyale/src/main/royale/mx/events/NetStatusEvent.as > > index 4c98af1..96f7664 100644 > > --- > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/events/IOErrorEvent.as > > +++ > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/events/NetStatusEvent.as > > @@ -21,7 +21,7 @@ package mx.events > > { > > COMPILE::SWF > > { > > -import flash.events.IOErrorEvent; > > +import flash.events.NetStatusEvent; > > } > > /* import mx.events.Event;*/ > > import org.apache.royale.events.Event; > > @@ -37,9 +37,9 @@ import org.apache.royale.events.IRoyaleEvent; > > * @royalesuppresspublicvarwarning > > */ > > COMPILE::SWF > > -public class IOErrorEvent extends flash.events.IOErrorEvent > > +public class NetStatusEvent extends flash.events.NetStatusEvent > > { > > - public function IOErrorEvent(type:String, bubbles:Boolean = > false, > > + public function NetStatusEvent(type:String, bubbles:Boolean = > > false, > > > > cancelable:Boolean = false, text:String = "", id:int = 0 > > ) > > { > > @@ -59,10 +59,10 @@ public class IOErrorEvent extends > > flash.events.IOErrorEvent > > * @royalesuppresspublicvarwarning > > */ > > COMPILE::JS > > -public class IOErrorEvent extends org.apache.royale.events.Event > > +public class NetStatusEvent extends org.apache.royale.events.Event > > { > > /* include "../core/Version.as"; */ > > - public static const IO_ERROR:String = "ioError"; > > + public static const NET_STATUS:String = "netStatus"; > > > > > > > //-------------------------------------------------------------------------- > > // > > @@ -93,7 +93,7 @@ public class IOErrorEvent extends > > org.apache.royale.events.Event > > * @playerversion AIR 1.1 > > * @productversion Royale 0.9.3 > > */ > > - public function IOErrorEvent(type:String, bubbles:Boolean = > false, > > + public function NetStatusEvent(type:String, bubbles:Boolean = > > false, > > > > cancelable:Boolean = false, text:String = "", id:int = 0 > > ) > > { > > @@ -101,7 +101,7 @@ public class IOErrorEvent extends > > org.apache.royale.events.Event > > } > > > > > > - > > + public var info:Object; > > > > > > } > > diff --git > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/events/SecurityErrorEvent.as > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/events/SecurityErrorEvent.as > > index 6e0df97..a5cfb17 100644 > > --- > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/events/SecurityErrorEvent.as > > +++ > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/events/SecurityErrorEvent.as > > @@ -58,7 +58,7 @@ public class SecurityErrorEvent extends > > flash.events.SecurityErrorEvent > > * @royalesuppresspublicvarwarning > > */ > > COMPILE::JS > > -public class SecurityErrorEvent extends > org.apache.royale.events.Event > > +public class SecurityErrorEvent extends ErrorEvent > > { > > /* include "../core/Version.as"; */ > > public static const SECURITY_ERROR:String = "securityError"; > > diff --git > > a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/ILogger.as > > b/frameworks/projects/MXRoyale/src/main/royale/mx/logging/ILogger.as > > index 2f8b72c..519ba5d 100644 > > --- > a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/ILogger.as > > +++ > b/frameworks/projects/MXRoyale/src/main/royale/mx/logging/ILogger.as > > @@ -20,20 +20,309 @@ > > package mx.logging > > { > > > > -/* import flash.events.IEventDispatcher; > > - */ > > - import org.apache.royale.events.IEventDispatcher; > > +import org.apache.royale.events.IEventDispatcher; > > + > > /** > > * All loggers within the logging framework must implement this > > interface. > > * > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion Flex 3 > > */ > > -public interface ILogger extends > org.apache.royale.events.IEventDispatcher > > +public interface ILogger extends IEventDispatcher > > { > > - > > -} > > + > > > //-------------------------------------------------------------------------- > > + // > > + // Properties > > + // > > + > > > //-------------------------------------------------------------------------- > > + > > + //---------------------------------- > > + // category > > + //---------------------------------- > > + > > + /** > > + * The category value for the logger. > > + * > > + * @return String containing the category for this logger. > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function get category():String; > > + > > + > > > //-------------------------------------------------------------------------- > > + // > > + // Methods > > + // > > + > > > //-------------------------------------------------------------------------- > > + > > + /** > > + * Logs the specified data at the given level. > > + * > > + * <p>The String specified for logging can contain braces with > an > > index > > + * indicating which additional parameter should be inserted > > + * into the String before it is logged. > > + * For example "the first additional parameter was {0} the > second > > was {1}" > > + * is translated into "the first additional parameter was 10 > the > > + * second was 15" when called with 10 and 15 as parameters.</p> > > + * > > + * @param level The level this information should be logged at. > > + * Valid values are: > > + * <ul> > > + * <li><code>LogEventLevel.FATAL</code> designates events > that are > > very > > + * harmful and will eventually lead to application > failure</li> > > + * > > + * <li><code>LogEventLevel.ERROR</code> designates error > events > > + * that might still allow the application to continue > running.</li> > > + * > > + * <li><code>LogEventLevel.WARN</code> designates events that > > could be > > + * harmful to the application operation</li> > > + * > > + * <li><code>LogEventLevel.INFO</code> designates > informational > > messages > > + * that highlight the progress of the application at > > + * coarse-grained level.</li> > > + * > > + * <li><code>LogEventLevel.DEBUG</code> designates > informational > > + * level messages that are fine grained and most helpful when > > + * debugging an application.</li> > > + * </ul> > > + * > > + * @param message The information to log. > > + * This String can contain special marker characters of the > form {x}, > > + * where x is a zero based index that will be replaced with > > + * the additional parameters found at that index if specified. > > + * > > + * @param rest Additional parameters that can be subsituted in > the > > str > > + * parameter at each "{<code>x</code>}" location, where > > <code>x</code> > > + * is an integer (zero based) index value into the Array of > values > > + * specified. > > + * > > + * @example > > + * <pre> > > + * // Get the logger for the mx.messaging.Channel "category" > > + * // and send some data to it. > > + * var logger:ILogger = Log.getLogger("mx.messaging.Channel"); > > + * logger.log(LogEventLevel.DEBUG, "here is some channel info > {0} > > and {1}", LogEventLevel.DEBUG, 15.4, true); > > + * > > + * // This will log the following String as a DEBUG log > message: > > + * // "here is some channel info 15.4 and true" > > + * </pre> > > + * > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function log(level:int, message:String, ... rest):void; > > > > + /** > > + * Logs the specified data using the > <code>LogEventLevel.DEBUG</code> > > + * level. > > + * <code>LogEventLevel.DEBUG</code> designates informational > level > > + * messages that are fine grained and most helpful when > debugging > > + * an application. > > + * > > + * <p>The string specified for logging can contain braces with > an > > index > > + * indicating which additional parameter should be inserted > > + * into the string before it is logged. > > + * For example "the first additional parameter was {0} the > second > > was {1}" > > + * will be translated into "the first additional parameter was > 10 the > > + * second was 15" when called with 10 and 15 as parameters.</p> > > + * > > + * @param message The information to log. > > + * This string can contain special marker characters of the > form {x}, > > + * where x is a zero based index that will be replaced with > > + * the additional parameters found at that index if specified. > > + * > > + * @param rest Additional parameters that can be subsituted in > the > > str > > + * parameter at each "{<code>x</code>}" location, where > > <code>x</code> > > + * is an integer (zero based) index value into the Array of > values > > + * specified. > > + * > > + * @example > > + * <pre> > > + * // Get the logger for the mx.messaging.Channel "category" > > + * // and send some data to it. > > + * var logger:ILogger = Log.getLogger("mx.messaging.Channel"); > > + * logger.debug("here is some channel info {0} and {1}", 15.4, > true); > > + * > > + * // This will log the following String: > > + * // "here is some channel info 15.4 and true" > > + * </pre> > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function debug(message:String, ... rest):void; > > + > > + /** > > + * Logs the specified data using the > <code>LogEventLevel.ERROR</code> > > + * level. > > + * <code>LogEventLevel.ERROR</code> designates error events > > + * that might still allow the application to continue running. > > + * > > + * <p>The string specified for logging can contain braces with > an > > index > > + * indicating which additional parameter should be inserted > > + * into the string before it is logged. > > + * For example "the first additional parameter was {0} the > second > > was {1}" > > + * will be translated into "the first additional parameter was > 10 the > > + * second was 15" when called with 10 and 15 as parameters.</p> > > + * > > + * @param message The information to log. > > + * This String can contain special marker characters of the > form {x}, > > + * where x is a zero based index that will be replaced with > > + * the additional parameters found at that index if specified. > > + * > > + * @param rest Additional parameters that can be subsituted in > the > > str > > + * parameter at each "{<code>x</code>}" location, where > > <code>x</code> > > + * is an integer (zero based) index value into the Array of > values > > + * specified. > > + * > > + * @example > > + * <pre> > > + * // Get the logger for the mx.messaging.Channel "category" > > + * // and send some data to it. > > + * var logger:ILogger = Log.getLogger("mx.messaging.Channel"); > > + * logger.error("here is some channel info {0} and {1}", 15.4, > true); > > + * > > + * // This will log the following String: > > + * // "here is some channel info 15.4 and true" > > + * </pre> > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function error(message:String, ... rest):void; > > + > > + /** > > + * Logs the specified data using the > > <code>LogEventLevel.FATAL</code> > > + * level. > > + * <code>LogEventLevel.FATAL</code> designates events that are > very > > + * harmful and will eventually lead to application failure > > + * > > + * <p>The string specified for logging can contain braces with > an > > index > > + * indicating which additional parameter should be inserted > > + * into the string before it is logged. > > + * For example "the first additional parameter was {0} the > second > > was {1}" > > + * will be translated into "the first additional parameter was > 10 the > > + * second was 15" when called with 10 and 15 as parameters.</p> > > + * > > + * @param message The information to log. > > + * This String can contain special marker characters of the > form {x}, > > + * where x is a zero based index that will be replaced with > > + * the additional parameters found at that index if specified. > > + * > > + * @param rest Additional parameters that can be subsituted in > the > > str > > + * parameter at each "{<code>x</code>}" location, where > > <code>x</code> > > + * is an integer (zero based) index value into the Array of > values > > + * specified. > > + * > > + * @example > > + * <pre> > > + * // Get the logger for the mx.messaging.Channel "category" > > + * // and send some data to it. > > + * var logger:ILogger = Log.getLogger("mx.messaging.Channel"); > > + * logger.fatal("here is some channel info {0} and {1}", 15.4, > true); > > + * > > + * // This will log the following String: > > + * // "here is some channel info 15.4 and true" > > + * </pre> > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function fatal(message:String, ... rest):void; > > + > > + /** > > + * Logs the specified data using the <code>LogEvent.INFO</code> > > level. > > + * <code>LogEventLevel.INFO</code> designates informational > messages > > that > > + * highlight the progress of the application at coarse-grained > level. > > + * > > + * <p>The string specified for logging can contain braces with > an > > index > > + * indicating which additional parameter should be inserted > > + * into the string before it is logged. > > + * For example "the first additional parameter was {0} the > second > > was {1}" > > + * will be translated into "the first additional parameter was > 10 the > > + * second was 15" when called with 10 and 15 as parameters.</p> > > + * > > + * @param message The information to log. > > + * This String can contain special marker characters of the > form {x}, > > + * where x is a zero based index that will be replaced with > > + * the additional parameters found at that index if specified. > > + * > > + * @param rest Additional parameters that can be subsituted in > the > > str > > + * parameter at each "{<code>x</code>}" location, where > > <code>x</code> > > + * is an integer (zero based) index value into the Array of > values > > + * specified. > > + * > > + * @example > > + * <pre> > > + * // Get the logger for the mx.messaging.Channel "category" > > + * // and send some data to it. > > + * var logger:ILogger = Log.getLogger("mx.messaging.Channel"); > > + * logger.info("here is some channel info {0} and {1}", 15.4, > true); > > + * > > + * // This will log the following String: > > + * // "here is some channel info 15.4 and true" > > + * </pre> > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function info(message:String, ... rest):void; > > + > > + /** > > + * Logs the specified data using the > <code>LogEventLevel.WARN</code> > > level. > > + * <code>LogEventLevel.WARN</code> designates events that > could be > > harmful > > + * to the application operation. > > + * > > + * <p>The string specified for logging can contain braces with > an > > index > > + * indicating which additional parameter should be inserted > > + * into the string before it is logged. > > + * For example "the first additional parameter was {0} the > second > > was {1}" > > + * will be translated into "the first additional parameter was > 10 the > > + * second was 15" when called with 10 and 15 as parameters.</p> > > + * > > + * @param message The information to log. > > + * This String can contain special marker characters of the > form {x}, > > + * where x is a zero based index that will be replaced with > > + * the additional parameters found at that index if specified. > > + * > > + * @param rest Aadditional parameters that can be subsituted > in the > > str > > + * parameter at each "{<code>x</code>}" location, where > > <code>x</code> > > + * is an integer (zero based) index value into the Array of > values > > + * specified. > > + * > > + * @example > > + * <pre> > > + * // Get the logger for the mx.messaging.Channel "category" > > + * // and send some data to it. > > + * var logger:ILogger = Log.getLogger("mx.messaging.Channel"); > > + * logger.warn("here is some channel info {0} and {1}", 15.4, > true); > > + * > > + * // This will log the following String: > > + * // "here is some channel info 15.4 and true" > > + * </pre> > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function warn(message:String, ... rest):void; > > } > > + > > +} > > \ No newline at end of file > > diff --git > > > a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/ILoggingTarget.as > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/logging/ILoggingTarget.as > > new file mode 100644 > > index 0000000..b08779f > > --- /dev/null > > +++ > > > b/frameworks/projects/MXRoyale/src/main/royale/mx/logging/ILoggingTarget.as > > @@ -0,0 +1,166 @@ > > > > > +//////////////////////////////////////////////////////////////////////////////// > > +// > > +// Licensed to the Apache Software Foundation (ASF) under one or > more > > +// contributor license agreements. See the NOTICE file > distributed with > > +// this work for additional information regarding copyright > ownership. > > +// The ASF licenses this file to You under the Apache License, > Version > > 2.0 > > +// (the "License"); you may not use this file except in compliance > with > > +// the License. You may obtain a copy of the License at > > +// > > +// > https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.apache.org%2Flicenses%2FLICENSE-2.0&data=02%7C01%7Caharui%40adobe.com%7Cf808264cf16a47daae8708d62a476d95%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636742883608520259&sdata=fUSj%2BX0Ut77g47iVGUA7YvFzb4ms9r01zg7MVOPRM%2Fc%3D&reserved=0 > > +// > > +// Unless required by applicable law or agreed to in writing, > software > > +// distributed under the License is distributed on an "AS IS" > BASIS, > > +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or > > implied. > > +// See the License for the specific language governing permissions > and > > +// limitations under the License. > > +// > > > > > +//////////////////////////////////////////////////////////////////////////////// > > + > > +package mx.logging > > +{ > > + > > +/** > > + * All logger target implementations within the logging framework > > + * must implement this interface. > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > +public interface ILoggingTarget > > +{ > > + > > > //-------------------------------------------------------------------------- > > + // > > + // Properties > > + // > > + > > > //-------------------------------------------------------------------------- > > + > > + //---------------------------------- > > + // filters > > + //---------------------------------- > > + > > + /** > > + * In addition to the <code>level</code> setting, filters are > used to > > + * provide a psuedo-hierarchical mapping for processing only > those > > events > > + * for a given category. > > + * > > + * <p>Each logger belongs to a category. > > + * By convention these categories map to the fully qualified > class > > name > > + * in which the logger is used. > > + * For example, a logger that is logging messages for the > > + * <code>mx.rpc.soap.WebService</code> class would use > > + * <code>"mx.rpc.soap.WebService"</code> as the parameter > > + * to the <code>Log.getLogger()</code> call. > > + * When messages are sent under this category only those > targets > > that have > > + * a filter which matches that category will receive > notification of > > those > > + * events. > > + * Filter expressions may include a wildcard match, indicated > with an > > + * asterisk. > > + * The wildcard must be the right most character in the > expression. > > + * For example: rpc~~, mx.~~, or ~~. > > + * If an invalid expression is specified a > > <code>InvalidFilterError</code> > > + * will be thrown. > > + * No spaces or any of the following characters are valid > within a > > filter > > + * expression: []~$^&\/(){}<>+=`!#%?,:;'"@.</p> > > + * > > + * @example > > + * <pre> > > + * var traceLogger:ILoggingTarget = new TraceTarget(); > > + * traceLogger.filters = [ "mx.rpc.~~", "mx.messaging.~~" ]; > > + * Log.addTarget(traceLogger); > > + * </pre> > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function get filters():Array; > > + > > + /** > > + * @private > > + */ > > + function set filters(value:Array):void; > > + > > + //---------------------------------- > > + // level > > + //---------------------------------- > > + > > + /** > > + * Provides access to the level this target is currently set > at. > > + * Value values are: > > + * <ul> > > + * <li><code>LogEventLevel.FATAL</code> designates events > that are > > very > > + * harmful and will eventually lead to application > failure</li> > > + * > > + * <li><code>LogEventLevel.ERROR</code> designates error > events > > that might > > + * still allow the application to continue running.</li> > > + * > > + * <li><code>LogEventLevel.WARN</code> designates events that > > could be > > + * harmful to the application operation</li> > > + * > > + * <li><code>LogEventLevel.INFO</code> designates > informational > > messages > > + * that highlight the progress of the application at > > + * coarse-grained level.</li> > > + * > > + * <li><code>LogEventLevel.DEBUG</code> designates > informational > > + * level messages that are fine grained and most helpful when > > + * debugging an application.</li> > > + * > > + * <li><code>LogEventLevel.ALL</code> intended to force a > target to > > + * process all messages.</li> > > + * </ul> > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function get level():int; > > + > > + /** > > + * @private > > + */ > > + function set level(value:int):void; > > + > > + > > > //-------------------------------------------------------------------------- > > + // > > + // Methods > > + // > > + > > > //-------------------------------------------------------------------------- > > + > > + /** > > + * Sets up this target with the specified logger. > > + * This allows this target to receive log events from the > specified > > logger. > > + * > > + * <p><b>Note:</b> This method is called by the framework > > + * and should not be called by you directly.</p> > > + * > > + * @param logger The ILogger that this target listens to. > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function addLogger(logger:ILogger):void; > > + > > + /** > > + * Stops this target from receiving events from the specified > logger. > > + * > > + * <p><b>Note:</b> This method is called by the framework > > + * and should not be called by you directly.</p> > > + * > > + * @param logger The ILogger that this target ignores. > > + * > > + * @langversion 3.0 > > + * @playerversion Flash 9 > > + * @playerversion AIR 1.1 > > + * @productversion Flex 3 > > + */ > > + function removeLogger(logger:ILogger):void; > > +} > > + > > +} > > diff --git > > a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/Log.as > > b/frameworks/projects/MXRoyale/src/main/royale/mx/logging/Log.as > > index c3fcd34..aa67b57 100644 > > --- a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/Log.as > > +++ b/frameworks/projects/MXRoyale/src/main/royale/mx/logging/Log.as > > @@ -19,12 +19,14 @@ > > > > package mx.logging > > { > > -/* > > + > > import mx.logging.errors.InvalidCategoryError; > > import mx.managers.ISystemManager; > > import mx.managers.SystemManager; > > +import mx.messaging.errors.ArgumentError; > > import mx.resources.IResourceManager; > > -import mx.resources.ResourceManager; */ > > +import mx.resources.ResourceManager; > > + > > //[ResourceBundle("logging")] > > > > /** > > @@ -92,11 +94,11 @@ import mx.resources.ResourceManager; */ > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion Flex 3 > > */ > > public class Log > > { > > - // include "../core/Version.as"; > > +// include "../core/Version.as"; > > > > > > > //-------------------------------------------------------------------------- > > // > > @@ -108,13 +110,13 @@ public class Log > > * @private > > * Sentinal value for the target log level to indicate no > logging. > > */ > > - // private static var NONE:int = int.MAX_VALUE; > > + private static var NONE:int = int.MAX_VALUE; > > > > /** > > * @private > > * The most verbose supported log level among registered > targets. > > */ > > - // private static var _targetLevel:int = NONE; > > + private static var _targetLevel:int = NONE; > > // Initialize target level to a value out of range. > > > > /** > > @@ -128,7 +130,7 @@ public class Log > > * Array of targets that should be searched any time > > * a new logger is created. > > */ > > - // private static var _targets:Array = []; > > + private static var _targets:Array = []; > > > > /** > > * @private > > @@ -137,7 +139,7 @@ public class Log > > * not at static initialization time, in order to ensure > > * that the Singleton registry has already been initialized. > > */ > > - //private static var _resourceManager:IResourceManager; > > + private static var _resourceManager:IResourceManager; > > > > /** > > * @private > > @@ -146,13 +148,13 @@ public class Log > > * This is a singleton instance which implements > > * the IResourceManager interface. > > */ > > - /* private static function get > resourceManager():IResourceManager > > + private static function get > resourceManager():IResourceManager > > { > > if (!_resourceManager) > > _resourceManager = > ResourceManager.getInstance(); > > > > return _resourceManager; > > - } */ > > + } > > > > > > > //-------------------------------------------------------------------------- > > // > > @@ -169,12 +171,12 @@ public class Log > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion Flex 3 > > */ > > - /* public static function isFatal():Boolean > > + public static function isFatal():Boolean > > { > > return (_targetLevel <= LogEventLevel.FATAL) ? true : false; > > - } */ > > + } > > > > /** > > * Indicates whether an error level log event will be > processed by a > > @@ -185,12 +187,12 @@ public class Log > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion Flex 3 > > */ > > - /* public static function isError():Boolean > > + public static function isError():Boolean > > { > > return (_targetLevel <= LogEventLevel.ERROR) ? true : false; > > - } */ > > + } > > > > /** > > * Indicates whether a warn level log event will be processed > by a > > @@ -201,12 +203,12 @@ public class Log > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion Flex 3 > > */ > > - /* public static function isWarn():Boolean > > + public static function isWarn():Boolean > > { > > return (_targetLevel <= LogEventLevel.WARN) ? true : false; > > - } */ > > + } > > > > /** > > * Indicates whether an info level log event will be processed > by a > > @@ -217,12 +219,12 @@ public class Log > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion Flex 3 > > */ > > - /* public static function isInfo():Boolean > > + public static function isInfo():Boolean > > { > > return (_targetLevel <= LogEventLevel.INFO) ? true : false; > > - } */ > > + } > > > > /** > > * Indicates whether a debug level log event will be processed > by a > > @@ -233,12 +235,12 @@ public class Log > > * @langversion 3.0 > > * @playerversion Flash 9 > > * @playerversion AIR 1.1 > > - * @productversion Royale 0.9.3 > > + * @productversion Flex 3 > > -- Carlos Rovira http://about.me/carlosrovira