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://gitbox.apache.org/repos/asf/royale-asjs.git
>
>
> 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
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.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: []~$^&amp;\/(){}&lt;&gt;+=`!#%?,:;'"&#64;.</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
>       */
> -    /* public static function isDebug():Boolean
> +    public static function isDebug():Boolean
>      {
>          return (_targetLevel <= LogEventLevel.DEBUG) ? true : false;
> -    } */
> +    }
>
>      /**
>       *  Allows the specified target to begin receiving notification of log
> @@ -249,9 +251,9 @@ public class Log
>       *  @langversion 3.0
>       *  @playerversion Flash 9
>       *  @playerversion AIR 1.1
> -     *  @productversion Royale 0.9.3
> +     *  @productversion Flex 3
>       */
> -    /* public static function addTarget(target:ILoggingTarget):void
> +    public static function addTarget(target:ILoggingTarget):void
>      {
>          if (target)
>          {
> @@ -280,7 +282,7 @@ public class Log
>                  "logging", "invalidTarget");
>              throw new ArgumentError(message);
>          }
> -    } */
> +    }
>
>      /**
>       *  Stops the specified target from receiving notification of log
> @@ -291,9 +293,9 @@ public class Log
>       *  @langversion 3.0
>       *  @playerversion Flash 9
>       *  @playerversion AIR 1.1
> -     *  @productversion Royale 0.9.3
> +     *  @productversion Flex 3
>       */
> -    /* public static function removeTarget(target:ILoggingTarget):void
> +    public static function removeTarget(target:ILoggingTarget):void
>      {
>          if (target)
>          {
> @@ -324,7 +326,7 @@ public class Log
>                  "logging", "invalidTarget");
>              throw new ArgumentError(message);
>          }
> -    } */
> +    }
>
>      /**
>       *  Returns the logger associated with the specified category.
> @@ -345,18 +347,18 @@ public class Log
>       *  @langversion 3.0
>       *  @playerversion Flash 9
>       *  @playerversion AIR 1.1
> -     *  @productversion Royale 0.9.3
> +     *  @productversion Flex 3
>       */
>      public static function getLogger(category:String):ILogger
>      {
> -       // checkCategory(category);
> +        checkCategory(category);
>          if (!_loggers)
>              _loggers = [];
>
>          // get the logger for the specified category or create one if it
>          // doesn't exist
>          var result:ILogger = _loggers[category];
> -       /*  if (result == null)
> +        if (result == null)
>          {
>              result = new LogLogger(category);
>              _loggers[category] = result;
> @@ -369,7 +371,7 @@ public class Log
>              target = ILoggingTarget(_targets[i]);
>              if (categoryMatchInFilterList(category, target.filters))
>                  target.addLogger(result);
> -        } */
> +        }
>
>          return result;
>      }
> @@ -383,14 +385,14 @@ public class Log
>       *  @langversion 3.0
>       *  @playerversion Flash 9
>       *  @playerversion AIR 1.1
> -     *  @productversion Royale 0.9.3
> +     *  @productversion Flex 3
>       */
> -    /* public static function flush():void
> +    public static function flush():void
>      {
>          _loggers = [];
>          _targets = [];
>          _targetLevel = NONE;
> -    } */
> +    }
>
>      /**
>       *  This method checks the specified string value for illegal
> characters.
> @@ -404,13 +406,13 @@ public class Log
>       *  @langversion 3.0
>       *  @playerversion Flash 9
>       *  @playerversion AIR 1.1
> -     *  @productversion Royale 0.9.3
> +     *  @productversion Flex 3
>       */
> -    /* public static function hasIllegalCharacters(value:String):Boolean
> +    public static function hasIllegalCharacters(value:String):Boolean
>      {
>          return
> value.search(/[\[\]\~\$\^\&\\(\)\{\}\+\?\/=`!@#%,:;'"<>\s]/) != -1;
>      }
> - */
> +
>      // private members
>      /**
>       *  This method checks that the specified category matches any of the
> filter
> @@ -423,7 +425,7 @@ public class Log
>       *            otherwise.
>       *  @private
>       */
> -   /*  private static function categoryMatchInFilterList(category:String,
> filters:Array):Boolean
> +    private static function categoryMatchInFilterList(category:String,
> filters:Array):Boolean
>      {
>          var result:Boolean = false;
>          var filter:String;
> @@ -444,7 +446,7 @@ public class Log
>                  return true;
>          }
>          return false;
> -    } */
> +    }
>
>      /**
>       *  This method will ensure that a valid category string has been
> specified.
> @@ -454,7 +456,7 @@ public class Log
>       *    []`*~,!#$%^&amp;()]{}+=\|'";?&gt;&lt;./&#64; or be less than 1
> character in length.
>       *  @private
>       */
> -   /*  private static function checkCategory(category:String):void
> +    private static function checkCategory(category:String):void
>      {
>          var message:String;
>
> @@ -471,14 +473,14 @@ public class Log
>                  "logging", "invalidChars");
>              throw new InvalidCategoryError(message);
>          }
> -    } */
> +    }
>
>      /**
>       *  @private
>       *  This method resets the Log's target level to the most verbose log
> level
>       *  for the currently registered targets.
>       */
> -    /* private static function resetTargetLevel():void
> +    private static function resetTargetLevel():void
>      {
>          var minLevel:int = NONE;
>          for (var i:int = 0; i < _targets.length; i++)
> @@ -487,7 +489,7 @@ public class Log
>                  minLevel = _targets[i].level;
>          }
>          _targetLevel = minLevel;
> -    } */
> +    }
>  }
>
>  }
> diff --git
> a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEvent.as
> b/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEvent.as
> new file mode 100644
> index 0000000..47efb76
> --- /dev/null
> +++ b/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEvent.as
> @@ -0,0 +1,230 @@
>
> +////////////////////////////////////////////////////////////////////////////////
> +//
> +//  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
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.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
> +{
> +
> +import org.apache.royale.events.Event;
> +
> +/**
> + *  Represents the log information for a single logging event.
> + *  The loging system dispatches a single event each time a process
> requests
> + *  information be logged.
> + *  This event can be captured by any object for storage or formatting.
> + *
> + *  @langversion 3.0
> + *  @playerversion Flash 9
> + *  @playerversion AIR 1.1
> + *  @productversion Flex 3
> + */
> +public class LogEvent extends Event
> +{
> +//     include "../core/Version.as";
> +
> +
>  //--------------------------------------------------------------------------
> +       //
> +       //  Class constants
> +       //
> +
>  //--------------------------------------------------------------------------
> +
> +    /**
> +     *  Event type constant; identifies a logging event.
> +     *
> +     *  @langversion 3.0
> +     *  @playerversion Flash 9
> +     *  @playerversion AIR 1.1
> +     *  @productversion Flex 3
> +     */
> +    public static const LOG:String = "log";
> +
> +
>  //--------------------------------------------------------------------------
> +       //
> +       //  Class methods
> +       //
> +
>  //--------------------------------------------------------------------------
> +
> +    /**
> +     *  Returns a string value representing the level specified.
> +        *
> +     *  @param The level a string is desired for.
> +        *
> +     *  @return The level specified in English.
> +     *
> +     *  @langversion 3.0
> +     *  @playerversion Flash 9
> +     *  @playerversion AIR 1.1
> +     *  @productversion Flex 3
> +     */
> +    public static function getLevelString(value:uint):String
> +    {
> +        switch (value)
> +        {
> +            case LogEventLevel.INFO:
> +                       {
> +                return "INFO";
> +                       }
> +
> +            case LogEventLevel.DEBUG:
> +                       {
> +                return "DEBUG";
> +            }
> +
> +            case LogEventLevel.ERROR:
> +                       {
> +                return "ERROR";
> +            }
> +
> +            case LogEventLevel.WARN:
> +                       {
> +                return "WARN";
> +            }
> +
> +            case LogEventLevel.FATAL:
> +                       {
> +                return "FATAL";
> +            }
> +
> +            case LogEventLevel.ALL:
> +                       {
> +                return "ALL";
> +            }
> +               }
> +
> +               return "UNKNOWN";
> +    }
> +
> +
>  //--------------------------------------------------------------------------
> +       //
> +       //  Constructor
> +       //
> +
>  //--------------------------------------------------------------------------
> +
> +    /**
> +     *  Constructor.
> +        *
> +     *  @param msg String containing the log data.
> +        *
> +     *  @param level The level for this log event.
> +     *  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>
> +        *
> +     *    <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
> +     */
> +    public function LogEvent(message:String = "",
> +                                                        level:int = 0 /*
> LogEventLevel.ALL */)
> +    {
> +        super(LogEvent.LOG, false, false);
> +
> +        this.message = message;
> +        this.level = level;
> +    }
> +
> +
>  //--------------------------------------------------------------------------
> +       //
> +       //  Properties
> +       //
> +
>  //--------------------------------------------------------------------------
> +
> +       //----------------------------------
> +       //  level
> +       //----------------------------------
> +
> +    /**
> +     *  Provides access to the level for this log event.
> +     *  Valid values are:
> +     *    <ul>
> +     *      <li><code>LogEventLogEventLevel.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.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.FATAL</code> designates events that
> are very
> +     *      harmful and will eventually lead to application failure.</li>
> +     *    </ul>
> +     *
> +     *  @langversion 3.0
> +     *  @playerversion Flash 9
> +     *  @playerversion AIR 1.1
> +     *  @productversion Flex 3
> +     */
> +    public var level:int;
> +
> +       //----------------------------------
> +       //  message
> +       //----------------------------------
> +
> +    /**
> +     *  Provides access to the message that was logged.
> +     *
> +     *  @langversion 3.0
> +     *  @playerversion Flash 9
> +     *  @playerversion AIR 1.1
> +     *  @productversion Flex 3
> +     */
> +    public var message:String;
> +
> +
>  //--------------------------------------------------------------------------
> +       //
> +       //  Overridden methods: Event
> +       //
> +
>  //--------------------------------------------------------------------------
> +
> +    /**
> +        *  @private
> +     */
> +    COMPILE::SWF { override }
> +    public function clone():Event
> +    {
> +        return new LogEvent(message, /*type,*/ level);
> +    }
> +}
> +
> +}
> \ No newline at end of file
> diff --git
> a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEventLevel.as
> b/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEventLevel.as
> index 070d24b..d239059 100644
> ---
> a/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEventLevel.as
> +++
> b/frameworks/projects/MXRoyale/src/main/royale/mx/logging/LogEventLevel.as
> @@ -27,19 +27,73 @@ package mx.logging
>   *  @langversion 3.0
>   *  @playerversion Flash 9
>   *  @playerversion AIR 1.1
> - *  @productversion Royale 0.9.3
> + *  @productversion Flex 3
>   */
>  public final class LogEventLevel
>  {
> -/*     include "../core/Version.as";
> - */
> +//     include "../core/Version.as";
> +
>
> //--------------------------------------------------------------------------
>         //
>         //  Class constants
>         //
>
> //--------------------------------------------------------------------------
>
> -
> +    /**
> +     *  Designates events that are very
> +     *  harmful and will eventually lead to application failure.
> +     *
> +     *  @langversion 3.0
> +     *  @playerversion Flash 9
> +     *  @playerversion AIR 1.1
> +     *  @productversion Flex 3
> +     */
> +    public static const FATAL:int = 1000;
> +
> +    /**
> +     *  Designates error events that might
> +     *  still allow the application to continue running.
> +     *
> +     *  @langversion 3.0
> +     *  @playerversion Flash 9
> +     *  @playerversion AIR 1.1
> +     *  @productversion Flex 3
> +     */
> +    public static const ERROR:int = 8;
> +
> +    /**
> +     *  Designates events that could be
> +     *  harmful to the application operation.
> +     *
> +     *  @langversion 3.0
> +     *  @playerversion Flash 9
> +     *  @playerversion AIR 1.1
> +     *  @productversion Flex 3
> +     */
> +    public static const WARN:int = 6;
> +
> +    /**
> +     *  Designates informational messages that
> +     *  highlight the progress of the application at coarse-grained level.
> +     *
> +     *  @langversion 3.0
> +     *  @playerversion Flash 9
> +     *  @playerversion AIR 1.1
> +     *  @productversion Flex 3
> +     */
> +    public static const INFO:int = 4;
> +
> +    /**
> +     *  Designates informational level
> +     *  messages that are fine grained and most helpful when debugging an
> +     *  application.
> +     *
> +     *  @langversion 3.0
> +     *  @playerversion Flash 9
> +     *  @playerversion AIR 1.1
> +     *  @productversion Flex 3
> +     */
> +



-- 
Carlos Rovira
http://about.me/carlosrovira

Reply via email to