[FlexJS] internal classes

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[FlexJS] internal classes

Harbs
Another dependency problem:

org.apache.flex.svg.GraphicContainer contains an internal class called GraphicGroup which extends ContainerBase

GraphicContainer has the following requires:

goog.provide('org.apache.flex.svg.GraphicContainer');

goog.require('org.apache.flex.core.UIBase');
goog.require('org.apache.flex.core.IContainer');
goog.require('org.apache.flex.core.ITransformHost');

It also generates the following which contains a reference to ContainerBase:
/* FlexJS Dependency List: org.apache.flex.core.ContainerBase,org.apache.flex.utils.Language*/

The problem with this is that org.apache.flex.core.ContainerBase is not guaranteed to load before org.apache.flex.svg.GraphicContainer. If it does not load first, there will be a runtime error on goog.inherits(org.apache.flex.svg.GraphicContainer.GraphicGroup, org.apache.flex.core.ContainerBase);

(I was just bitten by this problem.)

Thanks,
Harbs
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [FlexJS] internal classes

Alex Harui
After all of the munging of the requires lists, anything in the FlexJS
Dependency List should be in the requires unless it would introduce a
circularity.

I'll take a look.

-Alex

On 4/21/17, 2:04 PM, "Harbs" <[hidden email]> wrote:

>Another dependency problem:
>
>org.apache.flex.svg.GraphicContainer contains an internal class called
>GraphicGroup which extends ContainerBase
>
>GraphicContainer has the following requires:
>
>goog.provide('org.apache.flex.svg.GraphicContainer');
>
>goog.require('org.apache.flex.core.UIBase');
>goog.require('org.apache.flex.core.IContainer');
>goog.require('org.apache.flex.core.ITransformHost');
>
>It also generates the following which contains a reference to
>ContainerBase:
>/* FlexJS Dependency List:
>org.apache.flex.core.ContainerBase,org.apache.flex.utils.Language*/
>
>The problem with this is that org.apache.flex.core.ContainerBase is not
>guaranteed to load before org.apache.flex.svg.GraphicContainer. If it
>does not load first, there will be a runtime error on
>goog.inherits(org.apache.flex.svg.GraphicContainer.GraphicGroup,
>org.apache.flex.core.ContainerBase);
>
>(I was just bitten by this problem.)
>
>Thanks,
>Harbs

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [FlexJS] internal classes

Alex Harui
In reply to this post by Harbs
OK, I pushed a fix for this.

-Alex

On 4/21/17, 2:04 PM, "Harbs" <[hidden email]> wrote:

>Another dependency problem:
>
>org.apache.flex.svg.GraphicContainer contains an internal class called
>GraphicGroup which extends ContainerBase
>
>GraphicContainer has the following requires:
>
>goog.provide('org.apache.flex.svg.GraphicContainer');
>
>goog.require('org.apache.flex.core.UIBase');
>goog.require('org.apache.flex.core.IContainer');
>goog.require('org.apache.flex.core.ITransformHost');
>
>It also generates the following which contains a reference to
>ContainerBase:
>/* FlexJS Dependency List:
>org.apache.flex.core.ContainerBase,org.apache.flex.utils.Language*/
>
>The problem with this is that org.apache.flex.core.ContainerBase is not
>guaranteed to load before org.apache.flex.svg.GraphicContainer. If it
>does not load first, there will be a runtime error on
>goog.inherits(org.apache.flex.svg.GraphicContainer.GraphicGroup,
>org.apache.flex.core.ContainerBase);
>
>(I was just bitten by this problem.)
>
>Thanks,
>Harbs

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [FlexJS] internal classes

Harbs
Thanks.

I’ll give it a spin tomorrow.

Harbs

> On Apr 24, 2017, at 1:47 AM, Alex Harui <[hidden email]> wrote:
>
> OK, I pushed a fix for this.
>
> -Alex
>
> On 4/21/17, 2:04 PM, "Harbs" <[hidden email]> wrote:
>
>> Another dependency problem:
>>
>> org.apache.flex.svg.GraphicContainer contains an internal class called
>> GraphicGroup which extends ContainerBase
>>
>> GraphicContainer has the following requires:
>>
>> goog.provide('org.apache.flex.svg.GraphicContainer');
>>
>> goog.require('org.apache.flex.core.UIBase');
>> goog.require('org.apache.flex.core.IContainer');
>> goog.require('org.apache.flex.core.ITransformHost');
>>
>> It also generates the following which contains a reference to
>> ContainerBase:
>> /* FlexJS Dependency List:
>> org.apache.flex.core.ContainerBase,org.apache.flex.utils.Language*/
>>
>> The problem with this is that org.apache.flex.core.ContainerBase is not
>> guaranteed to load before org.apache.flex.svg.GraphicContainer. If it
>> does not load first, there will be a runtime error on
>> goog.inherits(org.apache.flex.svg.GraphicContainer.GraphicGroup,
>> org.apache.flex.core.ContainerBase);
>>
>> (I was just bitten by this problem.)
>>
>> Thanks,
>> Harbs
>

Loading...