org.guiceyfruit.jpa.support
Class PersistenceMemberProvider

java.lang.Object
  extended by org.guiceyfruit.support.AnnotationMemberProviderSupport<javax.persistence.PersistenceContext>
      extended by org.guiceyfruit.jpa.support.PersistenceMemberProvider
All Implemented Interfaces:
AnnotationMemberProvider<javax.persistence.PersistenceContext>

public class PersistenceMemberProvider
extends AnnotationMemberProviderSupport<javax.persistence.PersistenceContext>

Allows the JPA persistence context to be injected via PersistenceContext

Version:
$Revision: 1.1 $

Constructor Summary
PersistenceMemberProvider(com.google.inject.Provider<javax.persistence.EntityManager> defaultEntityManager)
           
 
Method Summary
 java.util.Map<java.lang.String,com.google.inject.Provider<javax.persistence.EntityManager>> getNamedEntityManagers()
           
 boolean isNullParameterAllowed(javax.persistence.PersistenceContext annotation, java.lang.reflect.Method method, java.lang.Class<?> parameterType, int parameterIndex)
          Returns true if the given parameter on the annotated method can be null
protected  java.lang.Object provide(javax.persistence.PersistenceContext annotation, java.lang.reflect.Member member, com.google.inject.TypeLiteral<?> requiredType, java.lang.Class<?> memberType, java.lang.annotation.Annotation[] annotations)
          The default method to create a value for the named member of the requested type
 void setNamedEntityManagers(java.util.Map<java.lang.String,com.google.inject.Provider<javax.persistence.EntityManager>> namedEntityManagers)
           
 
Methods inherited from class org.guiceyfruit.support.AnnotationMemberProviderSupport
provide, provide
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PersistenceMemberProvider

@Inject
public PersistenceMemberProvider(com.google.inject.Provider<javax.persistence.EntityManager> defaultEntityManager)
Method Detail

provide

protected java.lang.Object provide(javax.persistence.PersistenceContext annotation,
                                   java.lang.reflect.Member member,
                                   com.google.inject.TypeLiteral<?> requiredType,
                                   java.lang.Class<?> memberType,
                                   java.lang.annotation.Annotation[] annotations)
Description copied from class: AnnotationMemberProviderSupport
The default method to create a value for the named member of the requested type

Specified by:
provide in class AnnotationMemberProviderSupport<javax.persistence.PersistenceContext>

isNullParameterAllowed

public boolean isNullParameterAllowed(javax.persistence.PersistenceContext annotation,
                                      java.lang.reflect.Method method,
                                      java.lang.Class<?> parameterType,
                                      int parameterIndex)
Description copied from interface: AnnotationMemberProvider
Returns true if the given parameter on the annotated method can be null


getNamedEntityManagers

public java.util.Map<java.lang.String,com.google.inject.Provider<javax.persistence.EntityManager>> getNamedEntityManagers()

setNamedEntityManagers

@Inject(optional=true)
public void setNamedEntityManagers(java.util.Map<java.lang.String,com.google.inject.Provider<javax.persistence.EntityManager>> namedEntityManagers)


Copyright © 2011. All Rights Reserved.