google / guice

Guice (pronounced 'juice') is a lightweight dependency injection framework for Java 11 and above, brought to you by Google.
https://github.com/google/guice
Apache License 2.0
12.47k stars 1.67k forks source link

persist module is missing support for finders in concrete classes #653

Open gissuebot opened 10 years ago

gissuebot commented 10 years ago

From basg81 on September 15, 2011 17:26:34

I've switched from warp-persist to guice-persist and see that for some reason finders on concrete classes are no longer working.

I couldn't find any information on the wiki, or through google on this topic. There must be a reason for it to be missing?

Anyway, it was easy enough to add. I'll add my code here for documentation purposes, should others have the same

(1) Create class PublicJpaFinderProxy extends JpaFinderProxy (in the same package)

(2) In the place where you install the JpaPersistModule, add:

// Install finder interceptor Provider<EntityManager> provider = getProvider( EntityManager.class ); PublicJpaFinderProxy proxy = new PublicJpaFinderProxy( provider ); bindInterceptor( Matchers.any(), Matchers.annotatedWith( Finder.class ), proxy );

... which will behave exactly the same as the concrete finder support in warp-persist.

Original issue: http://code.google.com/p/google-guice/issues/detail?id=653

gissuebot commented 10 years ago

From sberlin on December 20, 2013 06:18:32

(No comment was entered for this change.)

Labels: Component-Persist