|
A rewrite of the last version of Gin extensions for the current code base, as discussed here: http://codereview.appspot.com/3606041/
Extensions wave: https://wave.google.com/wave/waveref/googlewave.com/w+BcDOfmlPA
This is a (very) alternative take on the gin extensions complex. I believe that
it covers all the requirements in our Wave (and then some) and it works out
beautifully in the implementation. :)
Some thoughts that lead me down this road:
* Parameterization and different locations of the hooks (i.e. "Instance",
"Provider") are orthogonal, an extension can be parameterized and deal with
instances.
* Installing and parameterizing extensions should be easy, especially for the
user.
Some GWT-fu (super-source!) and re-imagining of Gin internals make this fun and painless. :) While no new tests have been added yet, this change passes all Gin tests unchanged.
Take a look at BindingProvider and go from there, obviously taking a look at
BindingProcessor is also recommended.
Let me know what you think!
Total comments: 36
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+1209 lines, -593 lines) |
Patch |
|
M |
build.xml
|
View
|
1
|
3 chunks |
+8 lines, -5 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/Inject.gwt.xml
|
View
|
1
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/client/AbstractGinModule.java
|
View
|
1
|
2 chunks |
+10 lines, -1 line |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/client/PrivateGinModule.java
|
View
|
1
|
2 chunks |
+9 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/client/assistedinject/AssistedFactoryBuilder.java
|
View
|
1
|
1 chunk |
+341 lines, -0 lines |
0 comments
|
Download
|
|
D |
src/com/google/gwt/inject/client/assistedinject/FactoryModule.java
|
View
|
1
|
1 chunk |
+0 lines, -59 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/client/assistedinject/GinFactoryModuleBuilder.java
|
View
|
1
|
1 chunk |
+3 lines, -341 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/client/binder/GinBinder.java
|
View
|
1
|
2 chunks |
+21 lines, -1 line |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/ginapi/README
|
View
|
|
1 chunk |
+9 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/ginapi/com/google/gwt/inject/rebind/binding/BindingHandler.java
|
View
|
|
1 chunk |
+21 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/ginapi/com/google/gwt/inject/rebind/binding/FactoryBindingHandler.java
|
View
|
1
|
1 chunk |
+29 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/rebind/BindingsProcessor.java
|
View
|
1
|
6 chunks |
+18 lines, -28 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/rebind/GinjectorBindings.java
|
View
|
1
|
10 chunks |
+34 lines, -22 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/rebind/GinjectorGeneratorModule.java
|
View
|
1
|
2 chunks |
+3 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/rebind/GinjectorOutputter.java
|
View
|
1
|
4 chunks |
+4 lines, -5 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/rebind/adapter/BinderAdapter.java
|
View
|
1
|
2 chunks |
+22 lines, -17 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/rebind/binding/AbstractBindingHandler.java
|
View
|
1
|
1 chunk |
+56 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/rebind/binding/AsyncProviderBindingHandler.java
|
View
|
|
1 chunk |
+49 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/rebind/binding/BindingCreationException.java
|
View
|
1
|
1 chunk |
+41 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/rebind/binding/BindingHandler.java
|
View
|
1
|
1 chunk |
+88 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/rebind/binding/BindingHandlerCollector.java
|
View
|
1
|
1 chunk |
+27 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/rebind/binding/CallConstructorBindingHandler.java
|
View
|
|
1 chunk |
+54 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/rebind/binding/CreatorBinding.java
|
View
|
1
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/rebind/binding/FactoryBindingHandler.java
|
View
|
1
|
1 chunk |
+74 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/rebind/binding/GwtDotCreateBindingHandler.java
|
View
|
|
1 chunk |
+73 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/rebind/binding/ProviderBindingHandler.java
|
View
|
|
1 chunk |
+49 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/com/google/gwt/inject/rebind/binding/RemoteServiceBindingHandler.java
|
View
|
|
1 chunk |
+44 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/rebind/reflect/ReflectUtil.java
|
View
|
1
|
4 chunks |
+10 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/rebind/resolution/DependencyExplorer.java
|
View
|
1
|
3 chunks |
+6 lines, -7 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/rebind/resolution/ImplicitBindingCreator.java
|
View
|
1
|
5 chunks |
+60 lines, -91 lines |
0 comments
|
Download
|
|
M |
src/com/google/gwt/inject/rebind/util/GuiceUtil.java
|
View
|
1
|
2 chunks |
+20 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/com/google/gwt/inject/rebind/resolution/BindingResolverTest.java
|
View
|
1
|
11 chunks |
+14 lines, -7 lines |
0 comments
|
Download
|
|
M |
test/com/google/gwt/inject/rebind/resolution/DependencyExplorerTest.java
|
View
|
1
|
7 chunks |
+9 lines, -4 lines |
0 comments
|
Download
|
Total messages: 4
|