tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Josh Canfield <joshcanfi...@gmail.com>
Subject Re: Generics Support - trying out rietveld code reviewer (issue2140047)
Date Sun, 12 Sep 2010 00:15:08 GMT
Hey Igor.

There is a NPE that I've fixed last night, I found it implementing the grid example from the
user list. If you have a page class that implements a generic interface the generic superclass
can be null. I'll post the updated patch in a couple hours (not at my computer).

-- Josh

On Sep 11, 2010, at 4:38 PM, Igor Drobiazko <igor.drobiazko@gmail.com> wrote:

> Hi Josh,
> 
> looks promising. I applied the patch and was able run the build
> successfully. More comments follow tomorrow.
> 
> On Sat, Sep 11, 2010 at 6:52 AM, <joshcanfield@gmail.com> wrote:
> 
>> Reviewers: dev_tapestry.apache.org,
>> 
>> Description:
>> Added support for injected generic services. You can now implement the
>> same service interface multiple times with different type parameters,
>> and inject it using the generic interface.
>> Made Loop generic and added public getters for index and value. No more
>> need to add properties to the page or use the var binding for simple
>> object rendering loops.
>> Updated PropertyWorker, Transform* to copy generic field signature to
>> created getter.
>> Updated GenericsUtils/PropertyConduitSourceImpl to more fully support
>> wildcard and parameterized types.
>> Added tests for everything
>> 
>> Please review this at http://codereview.appspot.com/2140047/
>> 
>> Affected files:
>> 
>> tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/Loop.java
>> 
>> tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DefaultInjectionProvider.java
>> 
>> tapestry-core/src/main/java/org/apache/tapestry5/internal/services/InternalClassTransformationImpl.java
>> 
>> tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java
>> 
>> tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ServiceInjectionProvider.java
>> 
>> tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PropertyWorker.java
>> 
>> tapestry-core/src/main/java/org/apache/tapestry5/services/TransformField.java
>> 
>> tapestry-core/src/main/java/org/apache/tapestry5/services/TransformMethodSignature.java
>> tapestry-core/src/test/app1/GenericLoopDemo.tml
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/LoopTests.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/base/GenericLister.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/data/ExoticPet.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/data/Person.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/data/Pet.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/data/SubscribeData.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/data/ToDoItem.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/BaseGenericLoopDemo.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/GenericLoopDemo.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/Index.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/PersonLister.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/PetLister.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/pages/ToDoList.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/services/AppModule.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/services/GenericDatabase.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/services/GenericDatabaseImpl.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/services/GenericDatabaseItem.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/services/PersonDatabaseImpl.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/services/PetDatabase.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/services/PetDatabaseImpl.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/services/ToDoDatabase.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/services/ToDoDatabaseImpl.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/services/TypedObjectDatabase.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImplTest.java
>> 
>> tapestry-core/src/test/java/org/apache/tapestry5/internal/test/InternalBaseTestCase.java
>> 
>> tapestry-core/src/test/resources/org/apache/tapestry5/integration/app1/base/GenericLister.tml
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/ObjectLocator.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/DefaultModuleDefImpl.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/IOCInternalTestCase.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/IOCMessages.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/InternalRegistry.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/InternalServiceDef.java
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/Module.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/ModuleImpl.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/ObjectLocatorImpl.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/RegistryImpl.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/RegistryWrapper.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/ServiceDefImpl.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/MasterObjectProviderImpl.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/GenericsUtils.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/util/InternalUtils.java
>> 
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/services/MasterObjectProvider.java
>> tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/test/IOCTestCase.java
>> 
>> tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceBuilderMethodInvokerTest.java
>> 
>> tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/MasterObjectProviderImplTest.java
>> 
>> tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/BaseGenericBean.java
>> 
>> tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/GenericUtilsTest.java
>> 
>> tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/GenericsAssumptionsTest.java
>> 
>> tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/NonGenericBean.java
>> 
>> tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/Pair.java
>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
>> For additional commands, e-mail: dev-help@tapestry.apache.org
>> 
>> 
> 
> 
> -- 
> Best regards,
> 
> Igor Drobiazko
> http://tapestry5.de

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Mime
View raw message