Since <module-mutator> amounts to an API change (and sounds pretty weird from a distance), please update the (nice) design doc and get unanimous consent from the SDK team (after getting contributor feedback from the group here).
On Tue, Mar 9, 2010 at 3:31 PM, BobV <b...@google.com> wrote: > Here's what John and I worked out over IM to get the existing runtime > locales support migrated to soft permutations: > > - The existing locale property continues to work as it currently does. > - The runtime.locales configuration property is eliminated in favor > of a runtimeLocale deferred-binding property. > - The runtimeLocale property is defined and collapsed by a > ModuleDefMutator which also defines additional rebind rules based on > the defined locale values. > - One or more ModuleDefMutators are installed by a <module-mutator > class="Foo" /> which are called before ModuleDef.normalize() > - The SelectionProperty interface gains a getCollapsedValues() which > gives the values that are equivalent to the value returned by > getCurrentValue(). > - This allows the runtime performance of the Generators to be optimized. > - The locale generators are simplified, removing the runtime locale > factory and instead relying on the soft rebind rules created by the > ModuleDefMutator. > > This will increase the size of the permutation-selection matrix, but > this could be mitigated by using property-value extensions. In the > same way that "es_AR extends es", we might have "chrome extends > safari", "iphone extends safari". The value extension work is > separate and orthogonal, but plays nicely with the two techniques in > > http://code.google.com/p/google-web-toolkit/wiki/ControllingPermutationExplosion > . > > Thoughts? > > -- > Bob Vawter > Google Web Toolkit Team > > -- > http://groups.google.com/group/Google-Web-Toolkit-Contributors > -- http://groups.google.com/group/Google-Web-Toolkit-Contributors