Friday, January 16, 2015

Module Inheritance and path excludes

Suppose we define a GWT Module ImageResources that includes certain resources in its default public directory, and then we define a Module Excluder that specifically excludes those resources via something like:

<module>
    <public path="imageResources/public" excludes="**/*"/>
</module>

Then we can define a Module A that includes the resources via:

<module>
      :
   (stuff)
      :
    <inherits name="ImageResources"/>
</module>

and another Module B that's just like A except it excludes those same resources via:

<module>
    <inherits name="A"/>
    <inherits name="Excluder"/>
</modules>

That is, in the WAR file created by GWT compile for Module B, the files under imageResources will be missing.  (This works.)

--

Now the problem.  I want to allow a Module C to be defined as such:

<module>
    <inherits name="B"/>
    <inehrits name="ImageResources"/>
</module>

but it doesn't appear to work.  That is, although B is derived from A by removing certain resources, I want to allow them to be added back by an overriding inherits declaration.  (Note that we're inheriting B, so overriding that decision at the "closer" local level seems logically plausible.)

Is there a fix?  Of course, another solution is to move the "meat" from Module A's definition into Module B so that we never need to use Excluder, but that's not the solution I was hoping for.


--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at http://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment