deltaspike-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jason Porter (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DELTASPIKE-315) Provide a producer for EntityManagerFactories
Date Fri, 22 Feb 2013 16:18:14 GMT

    [ https://issues.apache.org/jira/browse/DELTASPIKE-315?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13584391#comment-13584391
] 

Jason Porter commented on DELTASPIKE-315:
-----------------------------------------

We'd have to listen to @ProcessAnnotatedType, loop through all fields and all the methods
looking a particular annotation and build things up. I'm with Mark on this one, I don't think
it's worth all the trouble to avoid a few lines of user code. Sure it cuts down on the (small)
amount of boilerplate the users would need to type, but I don't think it's worth it.
                
> Provide a producer for EntityManagerFactories
> ---------------------------------------------
>
>                 Key: DELTASPIKE-315
>                 URL: https://issues.apache.org/jira/browse/DELTASPIKE-315
>             Project: DeltaSpike
>          Issue Type: Bug
>          Components: JPA-Module
>    Affects Versions: 0.3-incubating
>            Reporter: Mark Struberg
>            Assignee: Mark Struberg
>             Fix For: 0.4-incubating
>
>
> I found myself using the following pattern quite often in projects in the last time.
I have a @Qualifier UnitName(value) and a producer for a @Dependent EntityManagerFactory for
it. The configuration is mostly provided via the persistenceProperties Map in EntityManagerFactory#createEntityManagerFactory(unitname,
persistenceProperties);
> We can further tweak the config lookup path and define a route which makes the most sense.
> This can be used to create the EntityManager producer very easily.
> @ApplicationScoped
> public class MyEntityManagerProducer {
>   private @Inject @UnitName("orderUnit") EntityManagerFactory emf;
>   
>   @Produces @RequestScoped
>   public EntityManager createEm() {
>     return emf.createEntityManager();
>   }
>   .. + disposer 
> }
> Please note that the EMF producer doens't clash with anything else as it only produces
EMFs with the Qualifier @UnitName!

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message